![]() |
VR-Forces 5.0.2 Developer's Guide
|
Maintains and signals state of the simulation engines that are currently connected to the GUI. This class also handles the thread boundary for simulation engine state messages that come from the communication thread, so that subset of the methods on this class are thread safe.
Related Examples

Public Types | |
| typedef std::map< std::string, DtVrfBackendState * > | DtVrfSimBackendStates |
Public Member Functions | |
| DtVrfSimBackendManager (makVrv::DtDe &) | |
| virtual | ~DtVrfSimBackendManager () |
| virtual bool | backEndsPresent () const |
| virtual bool | anyBackendsLoading () const |
| virtual bool | anyBackendsCreatingSimulationObjectGroup () const |
| virtual bool | anyBackendsClosing () const |
| virtual bool | allBackendsClosingOrClosed () const |
| virtual bool | anyBackendsLoaded () const |
| virtual bool | allBackendsLoaded () const |
| virtual bool | backendLoaded (const DtSimulationAddress &) const |
| virtual bool | backendSaving (const DtSimulationAddress &) const |
| virtual bool | anyBackendsPlaying () const |
| virtual bool | anyBackendsInControlState (int state) const |
| virtual bool | hasDynamicTerrainServer () const |
| virtual DtSimulationAddress | firstBackendThatCanSimulate () const |
| virtual bool | allBackendsCanSimulate () const |
| virtual bool | anyBackendCanSimulate () const |
| virtual bool | backendCanSimulate (const DtSimulationAddress &) const |
| virtual void | duplicateBackendDiscovered (const DtSimulationAddress &) |
| virtual double | timeMultiplier () const |
| virtual DtSimulationStatus | simulationStatus () const |
| virtual DtVrfBackendState * | stateFor (const DtSimulationAddress &) const |
| virtual const DtSimulationAddress & | selectedBackend () const |
| virtual void | setSelectedBackend (const DtSimulationAddress &) |
| virtual void | simulationAddresses (std::set< std::string > &) |
| virtual int | numberOfBackends () const |
| virtual void | clearSelectedBackend () |
| virtual DtVrfBackendState * | firstTimeBackend () const |
| virtual DtVrfBackendState * | firstBackendThatIsLoaded () const |
| virtual DtSimulationAddress | preferredBackendAddress () const |
| virtual double | simTime () const |
| virtual double | runDurationTime () const |
| virtual int | scenarioRunId () const |
| virtual double | timeOfDay () const |
| virtual double | simStartSimTime () const |
| const DtVrfSimBackendStates & | backendStates () const |
| const DtVrfSimBackendStates & | allBackendStates () const |
| virtual std::map< short, int > | currentObjectCounts () const |
| virtual const std::map< short, int > & | currentObjectCount (const DtSimulationAddress &) const |
| virtual void | signalWhenAllBackendsClosed () |
| virtual void | signalIfAllBackendsClosed () |
| virtual void | signalWhenAllBackendsLoaded () |
| virtual void | clearNotificationWhenBackendsLoaded () |
| virtual void | signalIfAllBackendsLoaded () |
| virtual void | signalWhenAllBackendsSaved () |
| virtual void | clearNotificationWhenBackendsSaved () |
| virtual void | signalIfAllBackendsSaved (bool checkpointSave) |
| virtual void | setFrameRateMode (char mode) |
| char | frameRateMode () const |
| std::string | sessionScenario () const |
| virtual void | setSessionScenario (const std::string &) |
| std::string | sessionScenarioFilename () const |
| virtual void | setSessionScenarioFilename (const std::string &) |
| std::string | sessionGuiTerrain () const |
| virtual void | setSessionGuiTerrain (const std::string &) |
| std::string | sessionSimTerrain () const |
| virtual void | setSessionSimTerrain (const std::string &) |
| const std::vector< DtFilename > & | simulationModelSets () const |
| virtual void | setSimulationModelSets (const DtRwNLengthStringVector &) |
| virtual void | sessionStatusChanged (const DtSessionStatus &status) |
| virtual time_t | dateAndTimeOfDay () const |
| virtual void | setDateAndTimeOfDay (time_t) |
| virtual void | resetDateAndTimeOfDay () |
| virtual const std::map < std::string, bool > | backendsLoading () const |
| virtual const std::map < std::string, bool > | backendsClosing () const |
| virtual void | removeAllBackends () |
| virtual void | addBackend (const DtBackend *) |
| virtual void | backendRemoved (const DtSimulationAddress &) |
| virtual void | backendUpdated (const DtSimulationAddress &, const DtBackend *) |
| virtual void | simulationStatusChanged (DtSimulationStatus) |
Public Member Functions inherited from makVrf::DtQueuedManager | |
| DtQueuedManager (makVrv::DtDe &) | |
| virtual | ~DtQueuedManager () |
| virtual void | setActivated (bool) |
Public Member Functions inherited from makVrv::DtVirtualBaseClass | |
| DtVirtualBaseClass () | |
| virtual | ~DtVirtualBaseClass () |
Static Public Member Functions | |
| static DtVrfSimBackendManager & | instance (makVrv::DtDe &de) |
Public Attributes | |
| boost::signals2::signal< void()> | signal_allBackendsClosed |
| boost::signals2::signal< void()> | signal_allBackendsLoaded |
| boost::signals2::signal< void(bool)> | signal_allBackendsSaved |
| boost::signals2::signal< void(const DtVrfBackendState &)> | signal_frameRatesUpdated |
| boost::signals2::signal< void(const DtVrfBackendState &)> | signal_backendDiscovered |
| boost::signals2::signal< void(const DtVrfBackendState &)> | signal_nonSimulationBackendDiscovered |
| boost::signals2::signal< void(const DtVrfBackendState &)> | signal_backendRemoved |
| boost::signals2::signal< void(const DtVrfBackendState &)> | signal_nonSimulationBackenRemoved |
| boost::signals2::signal< void(const DtVrfBackendState &, int)> | signal_backendUpdated |
| boost::signals2::signal< void(int)> | signal_sessionUpdated |
| boost::signals2::signal< void(const DtVrfBackendState &)> | signal_duplicateSimulationAddress |
| boost::signals2::signal< void(const DtSimulationAddress &old, const DtSimulationAddress &newaddr)> | signal_selectedBackendChanged |
| boost::signals2::signal< void()> | signal_allBackendsAboutToBeRemoved |
| boost::signals2::signal< void(DtSimulationStatus)> | signal_simulationStatusChanged |
| boost::signals2::signal< void(const DtSimulationAddress &)> | signal_objectCountsChanged |
Protected Types | |
| typedef std::map< std::string, DtIfPing * > | Pings |
Protected Types inherited from makVrf::DtQueuedManager | |
| typedef makVrv::DtLockedBufferedQueue < boost::function< void()> > | DtVrfBackendManagerCallQueue |
| typedef std::vector < boost::function< void()> > | DtVrfBackendManagerCallList |
| typedef std::map<std::string, DtVrfBackendState*> makVrf::DtVrfSimBackendManager::DtVrfSimBackendStates |
|
protected |
| makVrf::DtVrfSimBackendManager::DtVrfSimBackendManager | ( | makVrv::DtDe & | ) |
|
virtual |
|
static |
Returns instance of the messager.
|
virtual |
Returns true if there are any back-ends present.
|
virtual |
Returns true if any back-ends are loading.
|
virtual |
Return true if any backends are creating a simulation object group.
|
virtual |
Returns true if any back-ends are closing.
|
virtual |
Returns true if any back-ends are closing (or closed)
|
virtual |
Returns true if any back-ends are loaded.
|
virtual |
Returns true if all back-ends are loaded.
|
virtual |
Returns true if specified back-end is loaded.
|
virtual |
Returns true if specified back-end is saving.
|
virtual |
Returns true if any back-ends are playing a scenario
Returns true any backend is in the particular control state (play, pause)
|
virtual |
Returns true if there are any back-ends hosting a terrain server.
|
virtual |
First backend in list that can simulate.
|
virtual |
Returns true if all back-ends are ready to simulate.
|
virtual |
Returns true if any backend can simulate.
|
virtual |
Returns true if the specified backend can simulate.
|
virtual |
Called when a duplicate backend is discovered. Will queue duplicateSimulationBackendDiscovered.
|
virtual |
Returns the time multiplier of the scenario.
|
virtual |
Called by the DtVrfBackendInterceptor when backend status has changed in some way. Will be called from the communication thread, so these methods handle passing this information into the main thread using the DtQueuedManager parent class.
|
virtual |
Called by the DtVrfBackendInterceptor when backend status has changed in some way. Will be called from the communication thread, so these methods handle passing this information into the main thread using the DtQueuedManager parent class.
|
virtual |
Called by the DtVrfBackendInterceptor when backend status has changed in some way. Will be called from the communication thread, so these methods handle passing this information into the main thread using the DtQueuedManager parent class.
|
virtual |
Called by the DtVrfBackendInterceptor when backend status has changed in some way. Will be called from the communication thread, so these methods handle passing this information into the main thread using the DtQueuedManager parent class.
|
virtual |
Called by the DtVrfBackendInterceptor when backend status has changed in some way. Will be called from the communication thread, so these methods handle passing this information into the main thread using the DtQueuedManager parent class.
|
inlinevirtual |
Returns the current simulation status of all the back-ends in the simulation. See backend.h for a list of simulation status.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Fills in the back-end addresses known.
|
virtual |
|
virtual |
Clears the currently selected backend.
|
virtual |
First backend that support simulation time.
|
virtual |
First backend that is loaded.
|
virtual |
For single back-end operations (sim time, other back-end irrelevant requests) use this call to get the preferred back-end to use.
|
virtual |
Returns the maximum sim time of all known, loaded back-ends.
|
virtual |
Returns the run duration time. 0 means run until user pauses.
|
virtual |
Returns the scenario run id. 0 means none was set, or, the ids are different.
|
virtual |
Returns the current time of day (in seconds). Based on time of day in time manager and current simulation time.
|
virtual |
Returns the maximum sim start sim time of all known, loaded back-ends.
|
inline |
These are only that backend states that can be simulated on (i.e has the DtScenarioCapabilities_CreateObjects capability)
|
inline |
All backend states (regadless of DtScenarioCapabilities_CreateObjects capability)
|
virtual |
Returns a map which is the total of all objects (key of kind/domain and count) of all backends.
|
virtual |
Returns a map of the objects counts of the particular back-end.
|
virtual |
Sets the back-end manager to watch for all back-ends closed. Once closed, will stop watching.
|
virtual |
If there are no back-ends loaded, signals so and then sets the mySignalWhenAllBackendsClosed flag to false.
|
virtual |
Sets the back-end manager to watch for all back-ends loaded. If they are currently loaded will wait until they are closed then wait until they are all reloaded.
|
virtual |
Clears to signal when all backends loaded.
|
virtual |
Will signal if all back-ends are loaded and the mySignalWhenAllBackendsClosed is false. Sets mySignalWhenAllBackendsLoaded flag to false upon completion.
|
virtual |
Sets the back-end manager to watch for all back-ends switching from saving to non-saving state.
|
virtual |
Clears to signal when all backends saved.
|
virtual |
Will signal saved if the myBackendsWaitingForSave list is empty.
|
virtual |
|
inline |
|
inline |
|
virtual |
|
inline |
|
virtual |
|
inline |
|
virtual |
|
inline |
|
virtual |
|
inline |
|
virtual |
|
virtual |
Called when session status has changed. Queues a function to deal with it.
|
virtual |
|
virtual |
|
virtual |
|
inlinevirtual |
|
inlinevirtual |
|
virtual |
Handles pinging of the server for requests/responses and whether or not there is a ping.
|
virtual |
Handles pinging of the server for requests/responses and whether or not there is a ping.
|
virtual |
Handles pinging of the server for requests/responses and whether or not there is a ping.
|
virtual |
Handles pinging of the server for requests/responses and whether or not there is a ping.
|
virtual |
Handles pinging of the server for requests/responses and whether or not there is a ping.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Lock sim time to allow consistant access to simulation time to those that want it.
Reimplemented from makVrf::DtQueuedManager.
|
protectedvirtual |
Returns the maximum sim time of all known, loaded back-ends.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Called when a backend has finished saving or has been removed from the save list due to timeout.
|
protectedvirtual |
|
protectedvirtual |
Emits signal if something has changed about the session.
|
protectedvirtual |
Called on queue from removeAllBackends.
| boost::signals2::signal<void ()> makVrf::DtVrfSimBackendManager::signal_allBackendsClosed |
| boost::signals2::signal<void ()> makVrf::DtVrfSimBackendManager::signal_allBackendsLoaded |
| boost::signals2::signal<void (bool)> makVrf::DtVrfSimBackendManager::signal_allBackendsSaved |
| boost::signals2::signal<void (DtSimulationAddress, DtIfPing*)> makVrf::DtVrfSimBackendManager::signal_receivedPing |
Handles pinging of the server for requests/responses and whether or not there is a ping.
| boost::signals2::signal<void (const DtVrfBackendState&)> makVrf::DtVrfSimBackendManager::signal_frameRatesUpdated |
| boost::signals2::signal<void (const DtVrfBackendState&)> makVrf::DtVrfSimBackendManager::signal_backendDiscovered |
| boost::signals2::signal<void (const DtVrfBackendState&)> makVrf::DtVrfSimBackendManager::signal_nonSimulationBackendDiscovered |
| boost::signals2::signal<void (const DtVrfBackendState&)> makVrf::DtVrfSimBackendManager::signal_backendRemoved |
| boost::signals2::signal<void (const DtVrfBackendState&)> makVrf::DtVrfSimBackendManager::signal_nonSimulationBackenRemoved |
| boost::signals2::signal<void (const DtVrfBackendState&, int)> makVrf::DtVrfSimBackendManager::signal_backendUpdated |
| boost::signals2::signal<void (int)> makVrf::DtVrfSimBackendManager::signal_sessionUpdated |
| boost::signals2::signal<void (const DtVrfBackendState&)> makVrf::DtVrfSimBackendManager::signal_duplicateSimulationAddress |
| boost::signals2::signal<void (const DtSimulationAddress& old, const DtSimulationAddress& newaddr)> makVrf::DtVrfSimBackendManager::signal_selectedBackendChanged |
| boost::signals2::signal<void ()> makVrf::DtVrfSimBackendManager::signal_allBackendsAboutToBeRemoved |
| boost::signals2::signal<void (DtSimulationStatus)> makVrf::DtVrfSimBackendManager::signal_simulationStatusChanged |
| boost::signals2::signal<void(const DtSimulationAddress&)> makVrf::DtVrfSimBackendManager::signal_objectCountsChanged |
|
protected |
|
protected |
|
protected |
|
mutableprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
mutableprotected |
|
protected |
|
protected |
|
protected |