10 #include <matrix/vlVector.h>
23 class DtEntityIdentifier;
31 namespace makVrfEvents
52 Continue = 0x00000001,
65 virtual bool waitingToAddObjects()
const = 0;
68 virtual void beginFrame(
double simTime) = 0;
72 virtual bool preAdvanceFrame() = 0;
76 virtual void advanceFrame(
double* networkFrameTime =
nullptr) = 0;
79 virtual const char* type()
const = 0;
89 virtual bool printDataToStream(
const DtUUID&, DtOutputStream&)
const = 0;
92 virtual void setInterest(
const DtVector& geocentricCenter,
double radius) = 0;
98 virtual void reserve(
unsigned numToReserve) = 0;
101 virtual void setNumCallbackThreads(
unsigned) = 0;
104 virtual bool supportsOwnershipTransfer()
const = 0;
107 virtual void setEnabled(
bool) = 0;
114 virtual std::string protocol()
const = 0;
117 virtual void setRunFullyThreaded(
bool) = 0;
120 virtual void printReflectedObjectCounts()
const = 0;
124 virtual void requestUpdatesForRemoteNonVrfObjects()
const = 0;
136 virtual unsigned int maxNameLengthForType(
const DtEntityType&)
const = 0;
139 virtual void setVrfSessionId(
int) = 0;
142 virtual void setVrfMessageVersionSupported(
int) = 0;
145 virtual void startScenarioLoad(
bool) = 0;
148 virtual void endScenarioLoad(
bool) = 0;
151 virtual void setSiteAppId(
int,
int) = 0;
164 virtual DtU32 scenarioCapabilities()
const = 0;
165 virtual void setScenarioCapabilities(DtU32) = 0;
168 virtual void resetSimulation() = 0;
171 virtual void setFrameRateMode(
const DtString&
mode,
double deltaTime,
bool manageTime =
false) = 0;
174 virtual void rewindScenario() = 0;
177 virtual void run() = 0;
180 virtual void pause() = 0;
183 virtual bool typeIsPublishable(
const DtEntityType&)
const = 0;
186 virtual void setSimTime(
double) = 0;
189 virtual void setTimeMultiplier(
double) = 0;
192 virtual void setExerciseStartTime(
double) = 0;
201 virtual bool hasSimulationTime()
const = 0;
204 virtual void removeAndDeleteAll(
const std::set<DtUUID>& except = std::set<DtUUID>()) = 0;
208 virtual bool needsUnpublishedDatabase()
const = 0;
211 virtual bool selfReflecting()
const = 0;
215 virtual void setSelfReflecting(
bool) = 0;
218 virtual bool rediscoverObjects() = 0;
221 virtual bool publishingOnLegionNetwork()
const = 0;
224 virtual void reserveEntityId(
const DtEntityIdentifier&) = 0;
231 virtual bool hasNetworkRepresentation(
const DtUUID&)
const = 0;
UUID is a unique ID wrapper class.
Definition: uuid.h:59
virtual double determineSimTime(double &dt, DtCommunicationManagerPerformanceTimerInformation *performanceTimerInformation=nullptr)
Determine the next simulation time. Implement only if hasSimulationTime returns true.
Definition: networkManagerInterface.h:198
Instances of DtVrfParameterDb are the database of DtVrfObjectParameters objects used in the construct...
Definition: vrfParameterDb.h:41
Definition: scenario.h:52
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
Contains the DtUUID class declaration.
DtNetworkManagerInterface is the base class which all network interfaces must be derived from...
Definition: networkManagerInterface.h:43
Definition: coordSystem.h:54
The overall structure of the DtStateData mechanism is: The DtStateData contains a list of double buff...
Definition: stateData.h:398
virtual ~DtNetworkManagerInterface()
Definition: networkManagerInterface.h:60
The DtCommunicationManager class is a convenience class that will create both the DtNetworkInterfaceM...
Definition: communicationManager.h:54
virtual void beginBulkCreate()
Signaling the start/end of bulk object creation.
Definition: networkManagerInterface.h:227
Definition: asyncJobServer.h:39
The DtNetworkInterfaceManager manages all network interfaces utilized by the sim engine. Often there is only one, but it is possible for there to be multiple. Each network interface is an instance of a subclass of DtNetworkManagerInterface. As state data is created or removed, the DtNetworkInterfaceManager will notify each of its network interfaces, so that they may create object network interfaces to output required state data to the network.
Definition: networkInterfaceManager.h:47
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
const char int mode
Definition: ioapi.h:38
DtNetworkManagerInterface()
constructor
Definition: networkManagerInterface.h:56
#define DT_DLL_vrfMsgTransport
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfCommunicationManagerDefines.h:26
AddEventResult
When adding an event, return a flag that represent the result of the addEvent. Return DoNotContinue i...
Definition: networkManagerInterface.h:49
virtual void endBulkCreate()
Definition: networkManagerInterface.h:228