![]() |
VR-Forces Developer's Guide
|
The DtDriver is an abstract class. Developers derive from this to create logic that "directs" things in the VRV framework.

Public Member Functions | |
| DtDriver (DtAgentManager &agentManager, const std::string &instanceName) | |
| virtual | ~DtDriver () |
| virtual void | realizeConfiguration (const DtConfiguration &configuration) |
| virtual DtConfiguration | createConfiguration (bool saveAllParameters=false) const |
| DtAgentManager & | agentManager () |
| virtual DtAgentManagerInterface & | sceneInterface () |
| bool | started () const |
| virtual const std::string & | className () const =0 |
| virtual const std::string & | instanceName () const |
| virtual bool | autoStart () const |
| virtual void | setAutoStart (bool autoStart) |
| virtual bool | isWindowDependent () const |
| virtual void | setIsWindowDependent (bool dep) |
| virtual void | setIsUserControllable (bool) |
| virtual bool | isUserControllable () const |
| virtual void | setIsPersistent (bool per) |
| virtual bool | isPersistent () const |
| virtual bool | isOnDriverSelectionList () const |
| virtual void | setOnDriverSelectionList (bool) |
| bool | objectFromAgentManager (const DtUniqueID &id) const |
Protected Member Functions | |
| void | applyChangesAndDelete (DtElementChanges *changes) |
| void | reportElementCreated (DtElementID id, DtElementID parentId, DtElementEntry::ElementType type) |
| void | reportElementAttribute (DtElementID id, DtElementAttribute *attribute) |
| void | reportElementDestroyed (DtElementID id) |
| void | start () |
| void | stop () |
| bool | tick () |
| virtual bool | onStart ()=0 |
| virtual bool | onStop ()=0 |
| virtual bool | onTick ()=0 |
| virtual void | slot_displayEngineAdded (const DtDeRecord &igRecord) |
| virtual void | setInstanceName (const std::string &name) |
| virtual void | installAccessories () |
| virtual void | uninstallAccessories () |
Protected Attributes | |
| DtAgentManager & | myAgentManager |
| bool | myStartedFlag |
| std::string | myName |
| DtConfiguration | myConfiguration |
| bool | myPersistentFlag |
| bool | myUserControllableFlag |
| bool | myRequestStateDiffPendingFlag |
| DtElementChanges | myChanges |
Static Protected Attributes | |
| static const std::string | theOnDriverSelectionList |
Friends | |
| class | DtDriverManager |
| makVrv::DtDriver::DtDriver | ( | DtAgentManager & | agentManager, |
| const std::string & | instanceName | ||
| ) |
CTOR.
|
virtual |
DTOR.
|
virtual |
Realize the driver using the configuration.
Reimplemented in makVrv::DtInputDriver, makVrf::vrfLegion::DtVrfLegionDriver, makVrv::DtCigiDriver, makVrv::DtDisDriver, makVrv::DtHla1516eDriver, makVrv::DtHla4Driver, makVrv::DtLegionDriver, and makVrv::DtHla13Driver.
|
virtual |
Create a configuration for the driver.
Reimplemented in makVrv::DtCigiDriver, makVrv::DtDisDriver, makVrv::DtHla1516eDriver, makVrv::DtHla4Driver, and makVrv::DtHla13Driver.
| DtAgentManager& makVrv::DtDriver::agentManager | ( | ) |
Get the master scene for this host. Do not create drivers using this agentManager, use the sceneInterface as it may replaced the implementation of the sceneInterface.
|
virtual |
Get the scene manager interface for creating agents.
Reimplemented in makVrv::DtCigiDriver.
|
inline |
Get this driver's active state.
|
pure virtual |
Get this driver's class name.
Implemented in makVrv::DtIntervisibilityDriver, makVrv::DtVirtualRealityDriver, makVrv::DtInputDriver, makVrv::DtWindowObjectsDriver, makVrv::exampleSymbolFacade::DtExampleSymbolDriver, makVrv::DtVrlinkDriver, makVrv::exampleSymbolFacade3::DtExampleSymbolDriver, makVrv::DtCigiDriver, makVrv::exampleSymbolFacade5::DtExampleSymbolDriver, makVrv::exampleSymbolFacade4::DtExampleSymbolDriver, makVrv::DtSceneDriver, DtGimbalDriver, ForestDriver, makVrv::exampleSymbolFacade2::DtExampleSymbolDriver, makVrv::exampleTacticalGraphics::DtExampleTacticalGraphicsDriver, makVrv::exampleSymbolFacade1::DtExampleSymbolDriver, DtExampleThreadedDriver, makVrv::DtWindowObjectHudDriver, DtExampleEffectsDriver, DtExampleCommLinesDriver, DtExampleTrackHistoryDriver, makVrv::DtExampleProjectile, makVrf::DtDebugDrawRendererDriver, makVrv::tutorialDistributedSimulation5::DistributedSimulationDriver, makVrv::vrvExampleCloudDriver::DtCloudDriver, makVrv::DtGlStudioDriver, makVrv::tutorialDistributedSimulation3B::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation3D::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation2B::DistributedSimulationDriver, DtExampleDriver, makVrv::tutorialDistributedSimulation4B::DistributedSimulationDriver, DtExampleDriver, makVrv::tutorialDistributedSimulation3A::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation4C::DistributedSimulationDriver, makVrv::DtUnknownDriver, makVrv::tutorialDistributedSimulation3C::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation4A::DistributedSimulationDriver, DtDistributedDrawDriver, makVrv::tutorialDistributedSimulation1::DistributedSimulationDriver, and makVrv::tutorialDistributedSimulation2A::DistributedSimulationDriver.
|
virtual |
Get this driver's instance name.
|
virtual |
Get whether this driver is set to automatically start if it is persistent.
Reimplemented in makVrv::DtIntervisibilityDriver.
|
virtual |
Set whether this driver automatically starts if it is persistent.
|
virtual |
Get whether this driver is set to automatically start when the first window is created and stop when the last window is destroyed.
|
virtual |
Set whether this driver is set to automatically start when the first window is created and stop when the last window is destroyed.
|
virtual |
Set whether this driver can be started and stopped by the user.
|
virtual |
Get whether this driver can be started and stopped by the user.
Reimplemented in makVrv::DtUnknownDriver.
|
virtual |
Set if the driver is persistent and should be saved between runs.
|
virtual |
Get if the driver is persistent and should be saved between runs.
|
virtual |
Returns whether or not this driver is to be automatically started/stopped from the driver selection list.
|
virtual |
Sets whether or not this item is on the driver selection list. Will be saved to record if state is different.
| bool makVrv::DtDriver::objectFromAgentManager | ( | const DtUniqueID & | id | ) | const |
check to see if the object was created using this driver's agent manager.
|
protected |
Function for apply changes from a changes object and deleting it. This function is useful for queuing from an external thread as a means of passing changes from a secondary thread back to the main thread.
|
protected |
Report an element created.
|
protected |
Report an element attribute changed.
|
protected |
Report an element destroyed.
|
protected |
Start the driver. Called by the Master Scene. Calls installAccessories().
|
protected |
Stop the driver. Called by the Master Scene. Calls uninstallAccessories().
|
protected |
Tick the host driver. Called by the Master Scene.
| true | if tick succeeded. |
| false | if the host must be stopped. |
|
protectedpure virtual |
Start the host output. Create all objects for an existing host connection.
| true | if start succeeded |
| false | otherwise. |
Implemented in makVrv::DtIntervisibilityDriver, makVrv::DtVrlinkDriver, makVrv::DtCigiDriver, makVrv::DtWindowObjectsDriver, makVrv::DtVirtualRealityDriver, DtExampleThreadedDriver, makVrv::exampleSymbolFacade::DtExampleSymbolDriver, DtGimbalDriver, makVrv::DtInputDriver, makVrv::exampleSymbolFacade3::DtExampleSymbolDriver, makVrf::vrfLegion::DtVrfLegionDriver, makVrv::exampleSymbolFacade5::DtExampleSymbolDriver, makVrv::exampleSymbolFacade4::DtExampleSymbolDriver, makVrv::DtGlStudioDriver, makVrv::exampleSymbolFacade2::DtExampleSymbolDriver, makVrv::exampleTacticalGraphics::DtExampleTacticalGraphicsDriver, makVrv::exampleSymbolFacade1::DtExampleSymbolDriver, makVrv::DtWindowObjectHudDriver, DtExampleEffectsDriver, DtExampleCommLinesDriver, makVrv::DtExampleProjectile, DtExampleTrackHistoryDriver, makVrv::tutorialDistributedSimulation5::DistributedSimulationDriver, makVrv::DtSceneDriver, makVrv::tutorialDistributedSimulation2B::DistributedSimulationDriver, DtDistributedDrawDriver, ForestDriver, makVrf::DtDebugDrawRendererDriver, makVrv::vrvExampleCloudDriver::DtCloudDriver, makVrv::tutorialDistributedSimulation3B::DistributedSimulationDriver, makVrv::DtLegionDriver, makVrv::tutorialDistributedSimulation3D::DistributedSimulationDriver, makVrv::DtUnknownDriver, makVrv::tutorialDistributedSimulation4B::DistributedSimulationDriver, DtExampleDriver, makVrv::tutorialDistributedSimulation3A::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation4C::DistributedSimulationDriver, DtExampleDriver, makVrv::tutorialDistributedSimulation3C::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation4A::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation1::DistributedSimulationDriver, and makVrv::tutorialDistributedSimulation2A::DistributedSimulationDriver.
|
protectedpure virtual |
Stop the host output. All scene object created by the host should be destroyed.
| true | if stop succeeded. |
| false | otherwise. |
Implemented in makVrv::DtIntervisibilityDriver, makVrv::DtVrlinkDriver, makVrv::DtCigiDriver, makVrv::DtWindowObjectsDriver, makVrv::DtVirtualRealityDriver, DtExampleThreadedDriver, DtGimbalDriver, makVrv::exampleSymbolFacade::DtExampleSymbolDriver, makVrv::exampleSymbolFacade3::DtExampleSymbolDriver, makVrv::DtInputDriver, makVrv::exampleSymbolFacade5::DtExampleSymbolDriver, makVrv::exampleSymbolFacade4::DtExampleSymbolDriver, makVrv::DtGlStudioDriver, makVrv::exampleSymbolFacade2::DtExampleSymbolDriver, makVrv::exampleTacticalGraphics::DtExampleTacticalGraphicsDriver, makVrv::exampleSymbolFacade1::DtExampleSymbolDriver, makVrv::DtWindowObjectHudDriver, DtExampleEffectsDriver, DtExampleCommLinesDriver, makVrv::DtExampleProjectile, DtExampleTrackHistoryDriver, makVrv::tutorialDistributedSimulation5::DistributedSimulationDriver, makVrv::DtSceneDriver, makVrv::tutorialDistributedSimulation2B::DistributedSimulationDriver, ForestDriver, DtDistributedDrawDriver, makVrv::vrvExampleCloudDriver::DtCloudDriver, makVrf::DtDebugDrawRendererDriver, makVrv::tutorialDistributedSimulation3B::DistributedSimulationDriver, makVrv::DtUnknownDriver, makVrv::tutorialDistributedSimulation3D::DistributedSimulationDriver, makVrv::DtLegionDriver, DtExampleDriver, makVrv::tutorialDistributedSimulation4B::DistributedSimulationDriver, DtExampleDriver, makVrv::tutorialDistributedSimulation3A::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation4C::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation3C::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation4A::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation1::DistributedSimulationDriver, and makVrv::tutorialDistributedSimulation2A::DistributedSimulationDriver.
|
protectedpure virtual |
Tick.
| true | if tick succeeded. |
| false | otherwise. |
Implemented in makVrv::DtIntervisibilityDriver, makVrv::DtVrlinkDriver, makVrv::DtCigiDriver, makVrv::DtWindowObjectsDriver, makVrv::DtVirtualRealityDriver, DtGimbalDriver, DtExampleThreadedDriver, makVrv::exampleSymbolFacade::DtExampleSymbolDriver, makVrv::exampleSymbolFacade3::DtExampleSymbolDriver, makVrv::exampleSymbolFacade5::DtExampleSymbolDriver, makVrv::DtInputDriver, makVrv::exampleSymbolFacade4::DtExampleSymbolDriver, makVrf::vrfLegion::DtVrfLegionDriver, makVrv::DtGlStudioDriver, makVrv::exampleSymbolFacade2::DtExampleSymbolDriver, makVrv::exampleTacticalGraphics::DtExampleTacticalGraphicsDriver, makVrv::exampleSymbolFacade1::DtExampleSymbolDriver, makVrv::DtWindowObjectHudDriver, DtExampleEffectsDriver, DtExampleCommLinesDriver, makVrv::DtExampleProjectile, DtExampleTrackHistoryDriver, DtDistributedDrawDriver, makVrv::tutorialDistributedSimulation5::DistributedSimulationDriver, makVrv::DtSceneDriver, makVrv::tutorialDistributedSimulation2B::DistributedSimulationDriver, ForestDriver, makVrv::vrvExampleCloudDriver::DtCloudDriver, makVrv::tutorialDistributedSimulation3B::DistributedSimulationDriver, makVrv::DtUnknownDriver, makVrv::tutorialDistributedSimulation3D::DistributedSimulationDriver, makVrf::DtDebugDrawRendererDriver, DtExampleDriver, DtExampleDriver, makVrv::tutorialDistributedSimulation4B::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation3A::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation4C::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation3C::DistributedSimulationDriver, makVrv::DtLegionDriver, makVrv::tutorialDistributedSimulation4A::DistributedSimulationDriver, makVrv::tutorialDistributedSimulation1::DistributedSimulationDriver, and makVrv::tutorialDistributedSimulation2A::DistributedSimulationDriver.
|
protectedvirtual |
Called when a display engine is added. Override if you want the driver to do something when a display engine is added.
Reimplemented in makVrv::DtInputDriver, makVrv::DtCigiDriver, makVrv::DtVrlinkDriver, makVrv::exampleTacticalGraphics::DtExampleTacticalGraphicsDriver, makVrv::exampleSymbolFacade::DtExampleSymbolDriver, makVrv::exampleSymbolFacade5::DtExampleSymbolDriver, makVrv::exampleSymbolFacade3::DtExampleSymbolDriver, makVrv::DtSceneDriver, makVrv::exampleSymbolFacade4::DtExampleSymbolDriver, makVrv::exampleSymbolFacade2::DtExampleSymbolDriver, DtGimbalDriver, DtExampleThreadedDriver, makVrv::exampleSymbolFacade1::DtExampleSymbolDriver, DtExampleEffectsDriver, DtExampleCommLinesDriver, makVrv::DtExampleProjectile, DtExampleTrackHistoryDriver, DtExampleDriver, DtExampleDriver, and DtDistributedDrawDriver.
|
protectedvirtual |
set the Instance name.
|
protectedvirtual |
Installs accessories on this driver. The compatible and enabled accessories in the DtDriverManager's accessory map are installed on this driver.
|
protectedvirtual |
Removes accessories from this driver. The compatible and enabled accessories in the DtDriverManager's accessory map are removed from this driver.
|
friend |
|
staticprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |