10 #ifndef lgrDisSimManager_H_
11 #define lgrDisSimManager_H_
21 #include <vl/pduCallbackManager.h>
27 class DtExerciseConnInitializer;
28 class DtObjectPublisher;
34 class DtDisDescriptor;
35 class DtLgrPublisherInterface;
36 class DtLgrDisMessageState;
37 class DtLgrDisSimInput;
38 class DtLgrDisSimOutput;
39 class DtLgrFileOutput;
40 class DtLgrDisEntityTypeManager;
41 class DtLgrDisSimDriver;
63 virtual bool isConnected()
const;
66 virtual bool isConnectionOk()
const;
70 virtual bool connect(DtExerciseConnInitializer& initializer, DtString& failureReason);
73 virtual void disconnect();
97 virtual DtLgrFileInput* openFileForInput(
const DtString& filename)
const;
105 const DtString& description)
const;
112 virtual void addReceivePduCallback(DtPduCallbackFcn receivePduCb,
void* usr);
113 virtual void removeReceivePduCallback(DtPduCallbackFcn receivePduCb,
void* usr);
116 virtual void sendPdu(DtPdu& pdu);
119 virtual void registerPublisher(DtPduKind,LgrPublisherCreator);
122 virtual void removePublisherCreator(DtPduKind);
125 virtual bool pduNeedsPublisher(DtPduKind pduKind)
const;
143 virtual bool scaleArticulatedParts()
const;
146 static DtVector scaleVector(
const DtVector& vec,
double scaleValue);
152 virtual void setDrainInputMaxTime(
double maxTime);
155 virtual double drainInputMaxTime()
const;
158 virtual void setNumPdusToReadPerTimeCheck(
int number);
161 virtual int numPdusToReadPerTimeCheck()
const;
174 virtual void setConfigurationFileName(
const DtString& filename);
DIS simulation output.
Definition: lgrDisSimOutput.h:37
double myDrainInputMaxTime
Definition: lgrDisSimManager.h:216
Defines IMPORT/EXPORT macros for lgrSim library.
#define DT_DLL_LGRSIM
Definition: lgrSim.h:21
DtRelativeTime myTimeoutRate
Definition: lgrDisSimManager.h:214
Contains MAKLogger::DtLgrBaseSimManager class.
Stores information about logger configuration and is primarily used to record what settings were used...
Definition: lgrConfigData.h:27
DtDisDescriptor * myDisDescriptor
Definition: lgrDisSimManager.h:209
DIS simulation driver controls connection to DIS simulation.
Definition: lgrDisSimDriver.h:43
DtLgrDisSimInput * myInput
Definition: lgrDisSimManager.h:207
DtInt64 DtFilePosition
The position in a file, stored as a 64bit unsigned integer.
Definition: filePosition.h:18
#define DT_VIRTUAL_CTR(CLASS_NAME, ARG_TYPES_LIST)
Declare a Virtual Constructor Create using DT_VIRTUAL_CTR(CLASS_NAME,ARG_TYPES_LIST) Where CLASS_NAME...
Definition: virtualConstructor.h:34
The DIS Simulation manager manages the DIS simulation settings.
Definition: lgrDisSimManager.h:45
Managers known DIS entity types.
Definition: lgrDisEntityTypeManager.h:21
Relative Time, an elapsed duration of time, no implied measurement, could be seconds/cycles or ticks ...
Definition: absoluteTime.h:28
Contains DT_VIRTUAL_CTR DT_VIRTUAL_CTR_DEFAULTS DT_VIRTUAL_COPY_ASSIGN DT_VIRTUAL_BASE_CTR DT_PURE_VI...
std::set< DtPduKind > DtPduKindSet
Definition: lgrDisSimManager.h:201
std::map< DtPduKind, LgrPublisherCreator > DtPublisherFunctionMap
Definition: lgrDisSimManager.h:199
Responsible for maintaining a DIS simulation state.
Definition: lgrDisMessageState.h:32
DtLgrDisEntityTypeManager * myEntityTypeManager
Definition: lgrDisSimManager.h:210
DtLgrConfigData myConfigData
Definition: lgrDisSimManager.h:219
DtPduKindSet myMessageStateKinds
Definition: lgrDisSimManager.h:204
DtLgrDisSimOutput * myOutput
Definition: lgrDisSimManager.h:208
DtLgrDisMessageState * myMessageState
Definition: lgrDisSimManager.h:206
Responsible for defining the interface that Object publishers must have.
Definition: lgrPublisherInterface.h:39
Contains MAKLogger::DtAbsoluteTime and MAKLogger::DtRelativeTime classes.
Contains MAKLogger::DtLgrConfigData class.
DtRelativeTime myHeartbeatRate
Definition: lgrDisSimManager.h:213
DtLgrDisSimDriver & mySimDriver
Definition: lgrDisSimManager.h:211
Instances of DtDisDescriptor provide mappings between Pdu descriptors and PduKind enumerators in DIS...
Definition: disDescriptor.h:55
Shared implementation of the Sim Manager.
Definition: lgrBaseSimManager.h:29
DtPublisherFunctionMap myPublisherMap
Definition: lgrDisSimManager.h:205
The abstract interface which defines the output to a simulation.
Definition: lgrSimOutput.h:26
DtPduKindSet myPublishedKinds
Definition: lgrDisSimManager.h:203
The Abstract message state maintained by the logger.
Definition: messageState.h:33
DtLogger provides the core system structure and controls the execution model for the underlying objec...
Definition: logger.h:35
Class responsible for message Output to a file.
Definition: lgrFileOutput.h:25
int myNumPdusToReadPerTimeCheck
Definition: lgrDisSimManager.h:217
bool myScaleArticulatedpartsFlag
Definition: lgrDisSimManager.h:215