9 #ifndef lgrSimManager_H_
10 #define lgrSimManager_H_
15 #include <vlutil/vlString.h>
23 class DtLgrPacketFilter;
28 class DtLgrFileOutput;
30 class DtLegacyLoggerFile;
33 class DtCheckpointPolicy;
34 class DtLgrVRFMessageFilter;
35 class DtMessageIOInfo;
36 class DtMessagePipeline;
47 virtual bool isConnected()
const = 0;
50 virtual bool isConnectionOk()
const = 0;
53 virtual void tick() = 0;
56 virtual bool scaleAttributes()
const;
59 virtual void setScaleAttributes(
bool enable);
77 const DtString& description)
const = 0;
112 virtual void clearEntitiesForRefresh();
132 virtual void setAdjustSimTime(
bool adjustSimTime);
135 virtual bool isSimTimeAdjusted()
const;
140 virtual DtTime adjustedSimTime(DtTime packetTime,
bool includeOffset=
false)
const;
149 virtual bool activity()
const = 0;
154 virtual int remoteControlId()
const;
157 virtual void setRemoteControlId(
int id);
163 virtual void deactivateFilters();
166 virtual bool filter(
DtPacket* packet);
178 virtual int filterCount()
const;
190 virtual void setHeartbeatIntervals(
const std::map<DtString, DtLgrSimDriver::HeartbeatTimeRecord>& intervals);
191 virtual const std::map<DtString, DtLgrSimDriver::HeartbeatTimeRecord>& heartbeatIntervals()
const;
193 virtual void setTimeoutIntervals(
const std::map<DtString, DtLgrSimDriver::HeartbeatTimeRecord>& intervals);
194 virtual const std::map<DtString, DtLgrSimDriver::HeartbeatTimeRecord>& timeoutIntervals()
const;
197 virtual void updateEntityTracker(
const DtString& tracker);
201 virtual void setAllowEntityTracking(
bool trackingEnabled);
210 virtual const std::vector<DtString>& filterEntityList();
212 virtual void addTemporaryTrackedEntity(
const DtString& name);
214 virtual void addTemporaryTrackedMarking(
const DtString& marking);
220 virtual void addToFilterEntityList(
const std::vector<DtString>& nameList);
222 virtual void setConfigurationFileName(
const DtString& filename) = 0;
229 virtual bool playbackFilesUseRandomAccess()
const;
230 virtual void setPlaybackFilesUseRandomAccess(
bool val);
238 virtual double extendedStopTimeoutInterval()
const;
239 virtual void setExtendedStopTimeoutInterval(
double interval);
243 virtual bool listenWhenIdle()
const;
246 virtual void setListenWhenIdle(
bool val);
249 virtual bool staticDRAlgorithmWhenPaused()
const;
252 virtual void setStaticDRAlgorithmWhenPaused(
bool staticDRAlgorithm);
std::list< DtLgrPacketFilter * > FilterList
Definition: lgrSimManager.h:269
int myRemoteControlId
Definition: lgrSimManager.h:263
std::map< DtString, DtLgrSimDriver::HeartbeatTimeRecord > myHeartbeatIntervals
Definition: lgrSimManager.h:271
bool myStaticDRAlgorithmWhenPaused
Definition: lgrSimManager.h:277
std::vector< DtString > myFilterEntityList
Definition: lgrSimManager.h:265
DtTimeProvider * myTimeProvider
Member data.
Definition: lgrSimManager.h:258
DtInt64 DtFilePosition
The position in a file, stored as a 64bit unsigned integer.
Definition: filePosition.h:18
double myInitialTime
Definition: lgrSimManager.h:262
double myJumpAdjustment
Definition: lgrSimManager.h:261
bool myPlaybackFilesUseRandomAccess
Definition: lgrSimManager.h:273
Contains MAKLogger::DtFilePosition typedef.
std::map< DtString, DtLgrSimDriver::HeartbeatTimeRecord > myTimeoutIntervals
Definition: lgrSimManager.h:272
bool myIsTrackingEnabled
Definition: lgrSimManager.h:267
DtLgrEntityTracker * myEntityTracker
Definition: lgrSimManager.h:264
DtLgrClock * myClock
Definition: lgrSimManager.h:259
std::set< DtLgrEntityTracker::EntryHandle > EntryHandleSet
Definition: lgrEntityTracker.h:38
bool myScaleAttributesFlag
Definition: lgrSimManager.h:268
Contains MAKLogger::DtLgrSimDriver subclass of MAKLogger::DtLgrCommandHandler.
bool myListenWhenIdle
Definition: lgrSimManager.h:275
Base interface class for packet filters.
Definition: lgrPacketFilter.h:25
bool myAdjustSimTime
Definition: lgrSimManager.h:276
DtLgrEntityTracker::EntryHandleSet myEntitiesToRefresh
Definition: lgrSimManager.h:266
Implements a protocol independent Simulation manager.
Definition: lgrSimManager.h:40
Contains MAKLogger::DtLgrEntityTracker class.
FilterList myFilterList
Definition: lgrSimManager.h:270
A message IO info object stores information about a specific message input or output stage...
Definition: messageIoInfo.h:21
A generic packed of typed binary data.
Definition: packet.h:41
#define DT_DLL_LGRCORE
Definition: lgrCore.h:19
Indexes packets in a file.
Definition: lgrEntityTracker.h:32
class DT_DLL_LGRUTIL DtAbsoluteTime
Definition: absoluteTime.h:22
The abstract interface which defines the output to a simulation.
Definition: lgrSimOutput.h:26
double myBasePacketTime
Definition: lgrSimManager.h:260
The message pipeline which takes messages from the input, passes them through the state and ultimatel...
Definition: messagePipeline.h:28
The Abstract message state maintained by the logger.
Definition: messageState.h:33
An abstract class which provides time advances used by the DtLgrClock.
Definition: lgrClock.h:23
A clock that provides current time via a time provider.
Definition: lgrClock.h:92
double myExtendedStopTimeoutInterval
Definition: lgrSimManager.h:274
Class responsible for message Output to a file.
Definition: lgrFileOutput.h:25
Absolute Time, a particular measured instance in time, could be thought of as a set of relative times...
Definition: absoluteTime.h:82
Contains lgrCore library definitions.