18 #include <vl/hostStructs.h>
19 #include <vlutil/vlMachineTypes.h>
21 #include <matrix/vlVector.h>
30 class DtThreadMessageList;
39 class DtEchelonRoleName;
57 class DtScriptedObjects;
141 virtual bool createExerciseClock();
143 virtual bool createScheduler();
144 virtual bool createMessageInterface();
145 virtual bool createTDLMessageInterface();
146 virtual bool createFrameRateMonitor();
148 virtual bool createVrfSimSettingsManager();
149 virtual bool createParallelTickManager();
158 virtual bool createAndDeliverMessage(
159 const DtSimulationAddress& recipient,
161 bool overrideTimestampOrder =
true);
165 virtual bool createAndDeliverMessage(
const DtSimulationAddress& sender,
166 const DtSimulationAddress& recipient,
186 virtual void removePostTickEntry(
DtSimTickFunction tickFunction,
void* userData);
192 virtual DtExerciseConn* exerciseConn();
351 virtual void setScenarioRunId(
int);
352 virtual int scenarioRunId()
const;
355 virtual void setRejectMismatchedScenarioMessages(
bool);
356 virtual bool rejectMismatchedScenarioMessages()
const;
379 virtual DtU32 scenarioCapabilities()
const;
380 virtual void setScenarioCapabilities(DtU32 v);
395 static void TickFunction(
void* userData);
400 virtual void registerInterfaceCallbacks();
404 virtual bool registerExtendedProperties();
408 virtual const DtSimulationAddress& messageAddress()
const;
411 static void randSeedCallback(
DtSimMessage* msg,
void* usr);
414 virtual unsigned long sequenceNumber();
418 virtual void setSequenceNumber(
unsigned long sequenceNumber);
429 virtual int vrfSessionId()
const;
432 virtual int vrfMessageVersionSupported()
const;
436 virtual void runForDuration(
double);
437 virtual double runDurationTime()
const;
440 virtual void stopSimulationDurationTimer();
443 static void runDurationCompleteCallback(
DtTimer*);
444 virtual void processRunDurationComplete();