MAK Data Logger API Documentation for HLA
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrDisSimCommandFactory.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2024 MAK Technologies, Inc
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 
11 #pragma once
12 
13 #include <lgrCmds/lgrCmds.h>
14 #include <lgrCmds/lgrCommand.h>
15 #include <lgrUtil/collectors.h>
17 
18 #include <utility>
19 #include <vlutil/vlString.h>
20 
21 namespace MAKLogger
22 {
23 
27  {
28  public:
29 
32 
35 
37 
38 
39  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 1, SetConnectionParametersDIS,
40  (int port, int exerciseId, int siteId, int appNumber, bool useAsynchIO, int sendBufferSize,
41  int recvBufferSize, int multicastTtl, const DtString& destAddrString,
42  const DtString& netmask, const DtString& deviceAddrString,
43  const std::vector<DtString>& mcastAddresses ),
44  (const DtCommand& command, int& port, int& exerciseId, int& siteId, int& appNumber,
45  bool& useAsynchIO, int& sendBufferSize, int& recvBufferSize, int& multicastTtl,
46  DtString& destAddrString, DtString& netmask, DtString& deviceAddrString,
47  std::vector<DtString>& mcastAddresses ))
48 
49  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 2, SetHeartbeatRate,( double rate ),
50  ( const DtCommand& command,double& rate ))
51 
52  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 3, SetTimeoutRate,
53  ( double rate ),
54  ( const DtCommand& command, double& rate ))
55 
56  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 4, SetDisDescription,
57  (const DtBase64Data& data),
58  ( const DtCommand& command,DtBase64Data& data))
59 
60  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 5, SetEntityTypeManager,
61  ( const DtBase64Data& data),
62  ( const DtCommand& command, DtBase64Data& data))
63 
64  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 6, SetCommonEntityTypes,
65  ( const std::vector<DtString>& types),
66  ( const DtCommand& command,std::vector<DtString>& types))
67 
68  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 7, AddCustomPDU,
69  ( const std::vector<DtString>& pduDesc),
70  ( const DtCommand& command,std::vector<DtString>& pduDesc))
71 
72  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 8, SetDrainInput,
73  (double maxTime, int numPdusToRead),
74  (const DtCommand& command, double& maxTime, int& numPdusToRead))
75 
76  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 9, FilterEntityTypes,
77  ( const std::vector<DtString>& types),
78  ( const DtCommand& command,std::vector<DtString>& types))
79 
80  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 10, FilterEntityIds,
81  ( const std::vector<DtString>& ids),
82  ( const DtCommand& command,std::vector<DtString>& ids))
83 
84  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 11, SetCommonEntityIds,
85  ( const std::vector<DtString>& ids),
86  ( const DtCommand& command,std::vector<DtString>& ids))
87 
88  DT_FACTORY_COMMAND_EXT(theBaseCommandId + 12, SetDisVersion,
89  ( int version ),
90  ( const DtCommand& command,int& version ))
91 
93 
96  static const DtLgrCommandId theLastCommandId = theBaseCommandId + 100;
97 
99  static const DtLgrCommandId theBaseResponseId = DtLgrSimCommandFactory::theLastResponseId;
100 
102 
103 
104  DT_FACTORY_RESPONSE_EXT(theBaseResponseId - 1, HeartbeatRateChanged,
105  (double rate),
106  (DtResponse command,double& rate))
107 
108  DT_FACTORY_RESPONSE_EXT(theBaseResponseId - 2, TimeoutRateChanged,
109  (double rate),
110  (DtResponse command,double& rate))
111 
112  DT_FACTORY_RESPONSE_EXT(theBaseResponseId - 3, ConnectionParametersDISChanged,
113  (int port, int exerciseId, int siteId, int appNumber, bool useAsynchIO, int sendBufferSize,
114  int recvBufferSize, int multicastTtl, const DtString& destAddrString,
115  const DtString& netmask, const DtString& deviceAddrString,
116  const std::vector<DtString>& mcastAddresses),
117  (DtResponse command, int& port, int& exerciseId, int& siteId, int& appNumber,
118  bool& useAsynchIO, int& sendBufferSize, int& recvBufferSize, int& multicastTtl,
119  DtString& destAddrString, DtString& netmask, DtString& deviceAddrString,
120  std::vector<DtString>& mcastAddresses ))
121 
122  DT_FACTORY_RESPONSE_EXT(theBaseResponseId - 4, DisDescriptionChanged,
123  (const DtBase64Data& data),
124  (DtResponse command, DtBase64Data& data))
125 
126  DT_FACTORY_RESPONSE_EXT(theBaseResponseId - 5, EntityTypeManagerChanged,
127  (const DtBase64Data& data),
128  (DtResponse command, DtBase64Data& data))
129 
130  DT_FACTORY_RESPONSE_EXT(theBaseResponseId - 6, DrainInputSettingsChanged,
131  (double maxTime, int numPdusToRead),
132  (DtResponse command, double& maxTime, int& numPdusToRead))
133 
134  DT_FACTORY_RESPONSE_EXT(theBaseResponseId - 7, EntityIdFilterChanged,
135  (DtBase64Data& filter),
136  (DtResponse command, DtBase64Data& filter))
137 
138  DT_FACTORY_RESPONSE_EXT(theBaseResponseId - 8, DisVersionChanged,
139  (int version),
140  (DtResponse command, int& version))
141 
143 
146  static const DtLgrCommandId theLastResponseId = theBaseResponseId - 100;
147 
149  static const char* commandToString(int commandId);
150 
152  static const char* responseToString(int responseId);
153 
154  };
155 
156 }
The logger command which contains the command type and its parameters.
Definition: lgrCommand.h:109
The command type structure.
Definition: lgrCommand.h:29
#define DT_FACTORY_COMMAND_EXT(commandId, commandName, createParams, decodeParams)
Utility Macros for declaring Command in Factory.
Definition: lgrCommand.h:183
Utility class to encoding and decoding binary data to base64 string suitable for storing in text file...
Definition: base64Data.h:21
Factory for creating DIS Simulation commands.
Definition: lgrDisSimCommandFactory.h:26
Contains MAKLogger::DtLgrSimCommandFactory class.
#define DT_DLL_LGR_CMDS
Definition: lgrCmds.h:18
DtBoost::shared_ptr< const DtCommand > DtResponse
Definition: lgrCommand.h:174
Contains MAKLogger::DtLgrCommandType and MAKLogger::DtCommand classes.
static const DtLgrCommandType theCommandType
The command time of all commands and responses from this factory.
Definition: lgrDisSimCommandFactory.h:31
#define DT_FACTORY_RESPONSE_EXT(responseId, responseName, createParams, decodeParams)
Utility Macros for declaring Response in Factory.
Definition: lgrCommand.h:198
Contains lgrCmds library definitions.
The factory responsible for creating simulation commands.
Definition: lgrSimCommandFactory.h:21
short DtLgrCommandId
Definition: lgrCommand.h:25
const DtCommand bool bool bool bool bool bool bool bool double double const DtCommand bool bool bool bool bool bool bool bool double double &heartbeatSendInterval bool const DtCommand bool &scale DtExerciseConn bool bool bool const DtCommand DtExerciseConn bool bool bool &allowUnsubscribe const DtString const DtCommand DtString &name const DtString const DtCommand DtString &intervals const DtString const DtCommand DtString &name bool const DtCommand bool &playbackfilesUseRandomAccess double const DtCommand double &extendedStopTimeoutInterval bool const DtCommand bool &adjustSimTime bool const DtCommand bool &saveProtocolConfiguration const std::vector< DtString > const DtCommand std::vector< DtString > &static markings const DtLgrCommandId theLastCommandId
Last command ID, all IDs in this class must be &lt;= Command IDs in derived classes must be &gt; ...
Definition: lgrSimCommandFactory.h:141

Document ID: Generated on Thu Oct 3 15:35:11 EDT 2024 from SVN revision 270037
Copyright © 2024 MAK Technologies. All Rights Reserved (www.mak.com)