19 #include <vl/globalObjectDesignator.h>
20 #include <vl/vrlinkStateStateRepository.h>
21 #include <tbb/spin_mutex.h>
22 #include <tbb/mutex.h>
26 #include <tbb/tbb_thread.h>
27 #include <boost/function.hpp>
39 class DtGeoReferenceVariant;
43 class DtRemoteObjectManager;
44 class DtVrfEntityIdentifierFactory;
45 class DtVrlinkNetworkInterface;
46 class DtVrlinkEventTranslatorManager;
47 class DtVrlinkEventTranslator;
48 class DtStateDataManager;
50 class DtHlaExerciseClock;
80 virtual void beginFrame(
double)
override;
81 virtual bool preAdvanceFrame()
override;
82 virtual void advanceFrame(
double* networkTime =
nullptr)
override;
85 virtual void setBlockOnUnfinishedRemoteDiscovery(
bool);
88 return myBlockOnUnfinishedRemoteDiscovery;
94 virtual const char*
type()
const {
return Type(); };
95 static const char*
Type() {
return "vrlink-network-interface"; };
98 virtual bool printDataToStream(
const DtUUID&, DtOutputStream&
stream)
const;
101 virtual void setInterest(
const DtVector& geocentricCenter,
double radius);
116 virtual DtUUID uuidForGeoReferenceVariant(
const DtGeoReferenceVariant& georeference)
const;
117 virtual DtStateData* stateDataForGeoReferenceVariant(
const DtGeoReferenceVariant&)
const;
118 virtual void mapStateDataByGeoReferenceVariant(
DtStateData* std,
const DtGeoReferenceVariant& grv);
119 virtual bool unmapStateDataByGeoReferenceVariant(
const DtGeoReferenceVariant& grv);
120 virtual bool unmapGeoReferenceVariantByStateData(
const DtStateData* sd);
122 virtual void setExerciseStartTime(
double);
123 virtual void setSimTime(
double);
124 virtual void setTimeMultiplier(
double);
127 virtual void resetSimulation();
131 virtual void setControlsDrainInput(
bool);
132 bool controlsDrainInput()
const;
137 return std::string(
"DIS");
138 #elif DDtHLA_1516_EVOLVED == 1
139 return std::string(
"HLA1516e");
140 #elif DDtHLA_1516 == 1
141 return std::string(
"HLA1516");
142 #else //This is HLA13
143 return std::string(
"HLA13");
148 virtual bool runningInTimeManagedMode()
const;
155 static void startTimeManagement(
void* usr);
156 static void stopTimeManagement(
void* usr);
160 virtual void processStartTimeManagement();
161 virtual void processStopTimeManagement();
164 virtual void setReflectedListRequestUpdates(
bool yesOrNo);
168 virtual void setMetocPublishingEnabled(
bool);
175 virtual void setDisableRemoteDiscovery(
bool);
178 return myDisableRemoteDiscovery;
182 virtual void setDefaultObjectTimeout(
int);
185 return myDefaultObjectTimeout;
187 virtual void setDisableTimeoutProcessing(
bool);
190 return myDisableTimeoutProcessing;
193 struct ComponentRuleUserData
211 typedef boost::function<bool (const DtStateComponent*, const DtStateData*, std::shared_ptr<ComponentRuleUserData>)>
CreationRule;
213 const DtString& testBeforeInterface =
"");
216 virtual bool createInterfaceIfComponentIs(
const DtStateComponent* c,
const DtStateData* d, std::shared_ptr<ComponentRuleUserData>);
221 virtual void reserveEntityId(
const DtEntityIdentifier&);
223 virtual void setRunFullyThreaded(
bool);
224 virtual bool runFullyThreaded()
const;
226 virtual void setEnabled(
bool);
231 return myCoordinateSystem;
236 return myExerciseConnection;
239 virtual void removeAndDeleteAll();
240 virtual bool wantsToSelfReflect(
unsigned int)
const;
243 virtual bool selfReflecting()
const;
251 return myParameterDatabase;
254 virtual unsigned int maxNameLengthForType(
const DtObjectType&)
const;
257 virtual void setVrfSessionId(
int);
260 return myVrfSessionId;
264 virtual void setVrfMessageVersionSupported(
int);
267 return myVrfMessageVersionSupported;
272 virtual void setPublishZeroVelocityWhenPaused(
bool);
275 return myPublishZeroVelocityWhenPaused;
285 return mySimMgmtPduProcessLevel;
288 virtual void setSimMgmtPduProcessLevel(
unsigned int level);
293 virtual void setDeadReckoningAlgorithmToStaticOnPause(
bool);
296 return mySetDeadReckoningAlgorithmToStaticOnPause;
300 virtual void overrideDeadReckoningAlgorithm(
int drAlg);
304 virtual bool isDeadReckonAlgorithmOverridden(
int& drAlg)
const;
308 virtual void removeDeadReckoningAlgorithmOverride();
310 virtual DtEntityIdentifier nextEntityIdentifier(
const DtStateData* = 0,
const DtEntityIdentifier& = DtEntityIdentifier());
312 virtual DtEntityIdentifier objectIdentifierFor(
SimStateID)
const;
313 virtual DtEntityIdentifier objectIdentifierFor(
const DtUUID&)
const;
316 virtual DtEntityIdentifier globalObjectIdentifierFor(
const DtUUID&)
const;
317 virtual DtEntityIdentifier globalObjectIdentifierFor(
SimStateID)
const;
323 virtual DtUUID uuidForObjectIdentifier(
const DtEntityIdentifier&)
const;
329 virtual void setSiteAppId(
int,
int);
333 virtual DtString nextEventId(
const DtString& entId = DtString::nullString())
override;
335 virtual int setAppIdRangeMax(
int);
340 virtual void startScenarioLoad(
bool);
343 virtual void endScenarioLoad(
bool);
351 virtual double simTime()
const;
353 virtual void setMaxDrainInputTime(
double maxTime);
354 virtual double maxDrainInputTime()
const;
356 virtual void setFrameRateMode(
const DtString&
mode,
double deltaTime,
bool manageTime =
false);
357 virtual void rewindScenario();
360 virtual void setMinDrainInputTime(
double minTime);
361 virtual double minDrainInputTime()
const;
363 virtual void setFrameDeltaTime(
double);
364 virtual double frameDeltaTime()
const;
366 virtual void beginBulkCreate()
override;
367 virtual void endBulkCreate()
override;
369 virtual void setMaxDrainInputReads(
int maxReads);
370 virtual int maxDrainInputReads()
const;
377 virtual void removeEventTranslator(
int eventType);
385 virtual void pause();
397 return myEventManager;
402 return myCommunicationManager;
407 return myRemoteObjectManager;
413 virtual void setNumCallbackThreads(
unsigned);
416 virtual void setNumRemoteCallbackThreads(
unsigned);
418 virtual void addDefaultNetworkInterface(
const DtEntityType&,
const DtString& local,
const DtString& remote);
419 virtual void removeDefaultNetworkInterface(
const DtEntityType&);
426 virtual void setUseNetworkThread(
bool);
427 virtual bool usingNetworkThread()
const;
430 virtual void setDisableParallelPublisherTick(
bool);
431 virtual bool disableParallelPublisherTick()
const;
435 virtual void setTickPublishersDuringEntityTick(
bool);
436 virtual bool tickPublishersDuringEntityTick()
const;
440 virtual void reserve(
unsigned numToReserve);
443 virtual bool willRediscoverObjects()
const;
452 return myNetworkFrameTime;
455 virtual void setSendMessagesInNetworkProcess(
bool);
458 return mySendMessagesInNetworkProcess;
461 #if DtHLA_1516_EVOLVED
462 virtual void setAutoReserve(
int);
464 int autoReserve()
const;
473 virtual DtString nextGlobalObjectId(
const DtString& defaultId = DtString::nullString());
478 virtual void setLimitSizeToMtu(
bool limitToMtu);
479 virtual bool limitSizeToMtu()
const;
483 virtual unsigned maxInteractionSize()
const;
488 virtual void sendQueuedMessages();
497 virtual void reserveGlobalObjectIds(
unsigned numToReserve);
528 virtual void slot_prepareForHandoff(
DtStateData*,
bool becomingLocal);
531 virtual void stateDataAboutToBeRemoved(
const DtStateData*);
533 virtual void printReflectedObjectCounts()
const;
537 virtual void requestUpdatesForRemoteNonVrfObjects()
const;
540 void createExerciseClock(
int clockMode = 0);
542 virtual void drainInput();
546 virtual void cleanupNetworkThread();
548 virtual void runNetwork();
549 virtual void resolvePendingIds();
552 virtual void createAndInitRemoteObjectManager();
555 virtual bool rediscoverObjects();
560 virtual void stateDataManagerDeleted();
562 #if DtHLA_1516_EVOLVED
563 virtual void reservedNamesSuceeded(
const std::set<std::wstring>& theNames);
567 virtual void reservedNamesFailed(
const std::set<std::wstring>& theNames);
569 static void nameSetReservationSucceededCb(
const std::set<std::wstring>& nameSet,
571 static void nameSetReservationFailedCb(
const std::set<std::wstring>& nameSet,
576 virtual void setExecutionState(DtVRLExecutionStatus status);
587 typedef std::map<SimStateID, DtSimObjectNetInterface*>
Publishing;
648 #if DtHLA_1516_EVOLVED
649 std::set<DtGlobalObjectDesignator> myReservedGlobalIds;
650 std::set<DtGlobalObjectDesignator> myPendingReservedGlobalIds;
651 tbb::queuing_mutex myGlobalIdReserveMutex;
656 int myMaxDrainInputReads;
691 bool runNetworkInThread =
false;
692 bool publishWhileTicking =
false;
693 bool timeManagementDataSet =
false;
694 int networkCallbackThreads = -1;
706 bool myDisableTimeoutProcessing =
false;
732 bool myEnteredTimeManagedMode =
false;
GlobalIdForNetworkInterface myGlobalIdForNetworkInterface
Definition: vrlinkNetworkInterface.h:598
DtReflectedObjectLists myReflectedObjectLists
Definition: vrlinkNetworkInterface.h:712
UUID is a unique ID wrapper class.
Definition: uuid.h:59
Instances of DtVrfObjectParameters are the readable/writeable objects that contain the information ne...
Definition: vrfObjectParameters.h:63
DtExerciseConn * myExerciseConnection
Definition: vrlinkNetworkInterface.h:580
DtFilename myFastForwardSettingsFile
Fast forward settings file.
Definition: vrlinkNetworkInterface.h:660
DtVrfEntityIdentifierFactory * myEntityIdentifierFactory
Definition: vrlinkNetworkInterface.h:639
bool setDeadReckoningAlgorithmToStaticOnPause() const
Definition: vrlinkNetworkInterface.h:294
bool metocPublishingEnabled() const
Definition: vrlinkNetworkInterface.h:169
unsigned long long SimStateID
Definition: stateDataTypes.h:16
std::auto_ptr< tbb::tbb_thread > myNetworkThread
Member variables used to interact with the remote objects reading.
Definition: vrlinkNetworkInterface.h:675
DtHlaExerciseClock * myExerciseClock
Definition: vrlinkNetworkInterface.h:644
virtual bool publishingOnLegionNetwork() const
Whether or not this interface publishes on the legion network.
Definition: vrlinkNetworkInterface.h:558
static const char * Type()
Definition: vrlinkNetworkInterface.h:95
Instances of DtVrfParameterDb are the database of DtVrfObjectParameters objects used in the construct...
Definition: vrfParameterDb.h:40
virtual int vrfSessionId() const
Definition: vrlinkNetworkInterface.h:258
unsigned int simMgmtPduProcessLevel() const
Set/Get the type of receiver ids to process when processing a sim mgmt PDU 1={*,*,*}&{*,*,0} <- wildcarded recipients 2={a,b,0} <- specific ids only 3= both 1 and 2.
Definition: vrlinkNetworkInterface.h:283
std::map< DtGlobalObjectDesignator, DtSimObjectNetInterface * > GlobalIdForNetworkInterface
Definition: vrlinkNetworkInterface.h:597
const Coordinate_System * myCoordinateSystem
Definition: vrlinkNetworkInterface.h:625
bool myScenarioLoaded
Definition: vrlinkNetworkInterface.h:724
DtString local
Definition: vrlinkNetworkInterface.h:66
Definition: scenario.h:52
DtDefaultSimulationModelSetValidatorManager mySimulationModelSetValidator
Definition: vrlinkNetworkInterface.h:662
Default implementation that will add protocol and state data validators (contained in this header fil...
Definition: defaultSimulationModelSetValidatorManager.h:19
virtual bool needsUnpublishedDatabase() const
Return true if this connection uses the simulation database to publish on (as a legion connection doe...
Definition: vrlinkNetworkInterface.h:515
DtString remote
Definition: vrlinkNetworkInterface.h:67
virtual int vrfMessageVersionSupported() const
Definition: vrlinkNetworkInterface.h:265
unsigned int StateComponentType
Definition: stateComponent.h:55
int myVrfMessageVersionSupported
Definition: vrlinkNetworkInterface.h:629
DT_DLL_VRVCORE DtTaitBryan level(const DtCoordinateSystem &cs, const DtVector &localOrigin, double topoHeading)
Returns a level orientation with the topographic heading.
std::vector< makVrfEvents::DtEvent * > myQueuedMessagesToSend
Definition: vrlinkNetworkInterface.h:719
bool mySetDeadReckoningAlgorithmToStaticOnPause
Definition: vrlinkNetworkInterface.h:634
The DtEventManager handles the sending and receipt of system events (fire, detonate, command, etc). It provides a thread-safe way for the sim engine to send and receive such events, between both components within this sim engine and other remote applications.
Definition: eventManager.h:33
std::map< DtStateComponent *, DtSimObjectNetInterface * > StateComponentsPublishing
Definition: vrlinkNetworkInterface.h:590
ComponentCreationRules myComponentCreationRules
Definition: vrlinkNetworkInterface.h:623
static DtVrlinkNetworkInterfaceCreatorFcn theCreator
Definition: vrlinkNetworkInterface.h:663
bool myBlockOnUnfinishedRemoteDiscovery
Definition: vrlinkNetworkInterface.h:635
int myVrfSessionId
Definition: vrlinkNetworkInterface.h:628
CreationRule creationRule
Definition: vrlinkNetworkInterface.h:617
makVrfEvents::DtEventManager * myEventManager
Definition: vrlinkNetworkInterface.h:640
Definition: fastForwardSettings.h:12
double myFrameDeltaTime
Definition: vrlinkNetworkInterface.h:646
Simple asynchronous callback queue.
Definition: vrfCallbackQueue.h:32
This class will, in DIS or HLA, generate the unique id necessary to pass into the object publisher to...
Definition: vrfObjectIdGenerator.h:22
double myNextFrameSimTime
Definition: vrlinkNetworkInterface.h:699
tbb::spin_rw_mutex myStateDataMutex
Definition: vrlinkNetworkInterface.h:595
Definition: vrfEntityIdentifierFactory.h:21
bool myIsDeadReckonAlgorithmOverridden
Definition: vrlinkNetworkInterface.h:632
std::atomic< bool > myShutdownNetworkThreadFlag
Definition: vrlinkNetworkInterface.h:678
DtExerciseConn * exerciseConnection()
Definition: vrlinkNetworkInterface.h:234
int myAppIdRangeMax
Definition: vrlinkNetworkInterface.h:638
class DtRemoteObjectManager:
Definition: remoteObjectManager.h:28
tbb::mutex myNetworkThreadMutex
Definition: vrlinkNetworkInterface.h:680
DtCommunicationManager * communicationManager()
Definition: vrlinkNetworkInterface.h:400
Given a component type, sets the publisher creator for that component. Set DtString::nullString() to ...
Definition: vrlinkNetworkInterface.h:197
class DtVrlinkNetworkInterface:
Definition: vrlinkNetworkInterface.h:60
bool myReflectedListRequestUpdatesOn
Definition: vrlinkNetworkInterface.h:688
tbb::mutex ConditionMutex
Definition: vrlinkNetworkInterface.h:671
int myDeadReckonOverrideAlgorithm
Definition: vrlinkNetworkInterface.h:633
bool publishZeroVelocityWhenPaused() const
Definition: vrlinkNetworkInterface.h:273
StateDataByEntityId myStateDataByEntityId
Definition: vrlinkNetworkInterface.h:609
ComponentsPublishing myComponentsPublishing
Definition: vrlinkNetworkInterface.h:592
virtual bool typeIsPublishable(const DtEntityType &) const
Returns true if the entity type is publishable by this connection.
Definition: vrlinkNetworkInterface.h:391
virtual void setSelfReflecting(bool)
No-op. Once the connection is created the self reflecting cannot be changed.
Definition: vrlinkNetworkInterface.h:246
tbb::interface5::unique_lock< ConditionMutex > ConditionLock
Definition: vrlinkNetworkInterface.h:672
double myMaxDrainInputTime
Definition: vrlinkNetworkInterface.h:641
unsigned int myBulkCreateTickCounter
Definition: vrlinkNetworkInterface.h:723
std::map< DtString, DtStateData * > StateDataByEntityId
Definition: vrlinkNetworkInterface.h:608
DtNetworkManagerInterface is the base class which all network interfaces must be derived from...
Definition: networkManagerInterface.h:42
Definition: coordSystem.h:54
DtRemoteObjectManager * myRemoteObjectManager
Definition: vrlinkNetworkInterface.h:600
The overall structure of the DtStateData mechanism is: The DtStateData contains a list of double buff...
Definition: stateData.h:339
int myDefaultObjectTimeout
Definition: vrlinkNetworkInterface.h:705
Definition: vrlinkNetworkInterface.h:689
ComponentTypeUserData(DtStateComponent::StateComponentType t)
Definition: vrlinkNetworkInterface.h:204
bool myEnabled
Definition: vrlinkNetworkInterface.h:582
ConditionMutex myStartNetworkConditionMutex
Definition: vrlinkNetworkInterface.h:677
DtVrlinkNetworkInterface *(* DtVrlinkNetworkInterfaceCreatorFcn)(DtExerciseConn *, bool)
Definition: vrlinkNetworkInterface.h:53
The DtCommunicationManager class is a convenience class that will create both the DtNetworkInterfaceM...
Definition: communicationManager.h:51
bool myRunFullyThreaded
Definition: vrlinkNetworkInterface.h:583
std::map< DtString, DtStateData * > StateDataByGlobalId
Definition: vrlinkNetworkInterface.h:603
Class Description: DtSimObjectNetInterface.
Definition: simObjectNetInterface.h:50
double myCurrentFrameSimTime
Definition: vrlinkNetworkInterface.h:700
DtVrfObjectIdGenerator * myVrfObjectIdGenerator
Definition: vrlinkNetworkInterface.h:727
DtPublisherContainer< DtSimObjectNetInterface > PublisherContainer
Definition: vrlinkNetworkInterface.h:72
std::map< SimStateID, DtSimObjectNetInterface * > Publishing
Definition: vrlinkNetworkInterface.h:587
bool myBulkCreateInProgress
Defaults to 4.
Definition: vrlinkNetworkInterface.h:722
bool myPublishZeroVelocityWhenPaused
Definition: vrlinkNetworkInterface.h:631
DtOrderedEntityTypeList< DefaultNetworkInterfaceEntry * > DefaultNetworkInterfaceEntries
Definition: vrlinkNetworkInterface.h:709
Definition: vrlinkEventTranslatorManager.h:28
#define DT_DLL_vrlinkNetworkInterface
This file is used to determine how to build.
Definition: vrlinkNetworkInterfaceDefines.h:24
unsigned int mySimMgmtPduProcessLevel
Definition: vrlinkNetworkInterface.h:666
ComponentTypeUserData(const ComponentTypeUserData &orig)
Definition: vrlinkNetworkInterface.h:205
bool timeoutProcessingDisabled() const
Definition: vrlinkNetworkInterface.h:188
bool sendMessagesInNetworkProcess() const
Definition: vrlinkNetworkInterface.h:456
double myMinDrainInputTime
Definition: vrlinkNetworkInterface.h:645
DtVrfCallbackQueue * myNetworkCallbackQueue
Definition: vrlinkNetworkInterface.h:679
std::vector< ComponentCreationRule > ComponentCreationRules
Definition: vrlinkNetworkInterface.h:622
int myNumNetworkWorkerThreads
Definition: vrlinkNetworkInterface.h:720
bool myLimitSizeToMtu
Definition: vrlinkNetworkInterface.h:726
double myNetworkFrameTime
Definition: vrlinkNetworkInterface.h:715
tbb::queuing_rw_mutex myPublishingMutex
Definition: vrlinkNetworkInterface.h:594
Condition myStartNetworkCondition
Definition: vrlinkNetworkInterface.h:676
DtCommunicationManager * myCommunicationManager
Definition: vrlinkNetworkInterface.h:668
bool blockOnUnfinishedRemoteDiscovery() const
Definition: vrlinkNetworkInterface.h:86
Definition: vrlinkNetworkInterface.h:202
tbb::spin_mutex myQueuedMessagesToSendMutex
Definition: vrlinkNetworkInterface.h:718
DtVrfParameterDb * parameterDatabase() const
Definition: vrlinkNetworkInterface.h:249
DtFastForwardSettings myFastForwardSettings
Definition: vrlinkNetworkInterface.h:661
Definition: asyncJobServer.h:39
DtRemoteObjectManager * remoteObjectManager()
Definition: vrlinkNetworkInterface.h:405
bool myMetocPublishingEnabled
Definition: vrlinkNetworkInterface.h:685
Publishing myPublishing
Definition: vrlinkNetworkInterface.h:588
TimeManagementData myTimeManagementData
Definition: vrlinkNetworkInterface.h:697
Definition: vrlinkNetworkInterface.h:615
Definition: stateComponent.h:51
voidpf stream
Definition: ioapi.h:39
bool disableRemoteDiscovery() const
Definition: vrlinkNetworkInterface.h:176
PublisherContainer myTickableInterfaces
Definition: vrlinkNetworkInterface.h:585
bool myDisableRemoteDiscovery
Definition: vrlinkNetworkInterface.h:682
DtRemoteObjectManager *(* DtRemoteObjectManagerCreatorFcn)(DtVrlinkNetworkInterface *)
Definition: vrlinkNetworkInterface.h:54
virtual double networkFrameTime() const
Time spent in the network frame.
Definition: vrlinkNetworkInterface.h:450
bool mySendMessagesInNetworkProcess
Definition: vrlinkNetworkInterface.h:717
std::set< DtStateData * > myPendingEntityIds
Definition: vrlinkNetworkInterface.h:610
DtVrlinkEventTranslatorManager * myVrlinkEventTranslatorManager
Definition: vrlinkNetworkInterface.h:664
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
const char int mode
Definition: ioapi.h:38
tbb::spin_mutex myEventIdMutex
Definition: vrlinkNetworkInterface.h:637
bool myTickPublishersInNetworkThread
Definition: vrlinkNetworkInterface.h:684
int defaultObjectTimeout() const
Definition: vrlinkNetworkInterface.h:183
Definition: hlaExerciseClock.h:35
DefaultNetworkInterfaceEntries myDefaultNetworkInterfaceEntries
Definition: vrlinkNetworkInterface.h:710
std::atomic< bool > myStartNetworkThread
Definition: vrlinkNetworkInterface.h:702
StateDataByGlobalId myStateDataByGlobalId
Definition: vrlinkNetworkInterface.h:604
DtString networkInterface
Definition: vrlinkNetworkInterface.h:618
const Coordinate_System * coordinateSystem() const
Definition: vrlinkNetworkInterface.h:229
double myLastSetSimTime
Definition: vrlinkNetworkInterface.h:701
makVrfEvents::DtEventManager * eventManager()
Definition: vrlinkNetworkInterface.h:395
DtVrfParameterDb * myParameterDatabase
Definition: vrlinkNetworkInterface.h:627
bool myControlsDrainInput
Definition: vrlinkNetworkInterface.h:683
std::map< DtGeoReferenceVariant, DtStateData * > StateDataByGeoreferenceVariant
Definition: vrlinkNetworkInterface.h:612
PublisherContainer myNeedsPublishersCreated
Definition: vrlinkNetworkInterface.h:584
std::set< DtStateData * > myPendingGlobalIds
Definition: vrlinkNetworkInterface.h:605
virtual std::string protocol() const override
Descriptive text of the network protocol.
Definition: vrlinkNetworkInterface.h:134
Definition: reflectedObjectLists.h:148
Contains the DtStateComponent class declaration.
std::set< DtStateComponent * > myCreateNetInterfaceFor
Definition: vrlinkNetworkInterface.h:665
virtual ComponentRuleUserData * clone() const
Definition: vrlinkNetworkInterface.h:199
std::map< SimStateID, StateComponentsPublishing > ComponentsPublishing
Definition: vrlinkNetworkInterface.h:591
DtStateDataManager * myStateDataManager
Definition: vrlinkNetworkInterface.h:581
Definition: vrlinkNetworkInterface.h:63
Definition: vrlinkEventTranslator.h:28
static DtRemoteObjectManagerCreatorFcn theRemoteObjectManagerCreatorFcn
Definition: vrlinkNetworkInterface.h:729
std::shared_ptr< ComponentRuleUserData > userData
Definition: vrlinkNetworkInterface.h:619
virtual const char * type() const
Type to uniquely identify this manager.
Definition: vrlinkNetworkInterface.h:94
tbb::interface5::condition_variable Condition
Definition: vrlinkNetworkInterface.h:670
virtual bool hasSimulationTime() const
Return true if this network interface also deals with simulation time.
Definition: vrlinkNetworkInterface.h:511
boost::function< bool(const DtStateComponent *, const DtStateData *, std::shared_ptr< ComponentRuleUserData >)> CreationRule
Definition: vrlinkNetworkInterface.h:211
std::vector< DtSimObjectNetInterface * > myInterfacesToDelete
Definition: vrlinkNetworkInterface.h:714
StateDataByGeoreferenceVariant myStateDataByGeoreferenceVariant
Definition: vrlinkNetworkInterface.h:613
Description: The Exercise Clock keeps track of current simulated time. When 'ticked', it advances simulation time based on elapsed real time since the last time it was ticked and a time-multiplier that allows the exercise clock to run faster or slower than real-time. The exercise clock also supports a pause/resume capability.
Definition: exerciseClock.h:27
This class holds the state data that represents each simulation object in the system.
Definition: stateDataManager.h:73