VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Private Types
DtRemoteBatchManager Class Reference

Batch mode allows you to run one or more scenarios multiple times, for a specified amount of time, without providing direct command input from a user interface. The DtRemoteBatchManager class controls the execution of a batch of scenarios. It can be used in applications that use the VRF remote control toolkit. This class is also instantiated by the VRF sim engine when a batch file is specified via the command line.

Inheritance diagram for DtRemoteBatchManager:
Inheritance graph
[legend]

Public Member Functions

 DtRemoteBatchManager (DtCommunicationManager *controller)
 
virtual ~DtRemoteBatchManager ()
 
virtual bool init ()
 
virtual bool runBatch ()
 
virtual bool stopBatch ()
 
virtual bool running ()
 
virtual bool done ()
 
virtual const
DtScenarioBatchIterator
batchIterator ()
 
virtual void processBackendsLoadedCallback ()
 
virtual void addScenarioLoadingCallback (DtScenarioCallbackFcn fcn, void *usr)
 
virtual void removeScenarioLoadingCallback (DtScenarioCallbackFcn fcn, void *usr)
 
virtual void addScenarioLoadingErrorCallback (DtScenarioCallbackFcn fcn, void *usr)
 
virtual void removeScenarioLoadingErrorCallback (DtScenarioCallbackFcn fcn, void *usr)
 
virtual void addScenarioBatchCompleteCallback (DtScenarioCallbackFcn fcn, void *usr)
 
virtual void removeScenarioBatchCompleteCallback (DtScenarioCallbackFcn fcn, void *usr)
 
virtual void addScenarioClosingCallback (DtScenarioCallbackFcn fcn, void *usr)
 
virtual void removeScenarioClosingCallback (DtScenarioCallbackFcn fcn, void *usr)
 
virtual void processScenarioCallbacksForState (const State &state)
 
virtual void removeCallbacksFor (DtScenarioCallbackFcn fcn, void *usrData, const State state)
 
virtual void nextScenarioRun ()
 
virtual void nextScenario ()
 
virtual void idle ()
 
virtual void scheduleNextRun ()
 
virtual void tick ()
 
virtual bool loadBatch (const DtFilename &batchFileName, DtBackendRemappingFcn fcn=NULL, void *userData=NULL)
 
virtual bool loadBatch (const DtScenarioBatch &batch, DtBackendRemappingFcn fcn=NULL, void *userData=NULL)
 

Protected Member Functions

virtual double currentSimulationTime () const
 
virtual void startedLoading (const DtScenario &)
 
virtual void backendsLoaded ()
 
virtual void scenarioRunComplete ()
 
 DtRemoteBatchManager ()
 
 DtRemoteBatchManager (const DtRemoteBatchManager &orig)
 
DtRemoteBatchManageroperator= (const DtRemoteBatchManager &orig)
 

Protected Attributes

DtScenarioBatchIteratormyBatchIterator
 
DtCommunicationManagermyCommunicationManager
 
State myState
 
bool myRunning
 
bool myDone
 
DtTime myRunStartTime
 
bool myBackendsLoaded
 
DtList myCallbacks
 
DtBackendRemappingFcn myRemappingFcn
 
void * myRemappingFcnUserData
 
boost::signals2::connection myPostAdvanceFrameConnection
 

Private Types

enum  State {
  StateIdle, StateRunStart, StateLoading, StateRunning,
  StateRunComplete, StateRunBatchComplete, StateErrorLoading, StateClosing
}
 

Member Enumeration Documentation

Enumerations for state of batch run.

Enumerator
StateIdle 
StateRunStart 
StateLoading 
StateRunning 
StateRunComplete 
StateRunBatchComplete 
StateErrorLoading 
StateClosing 

Constructor & Destructor Documentation

DtRemoteBatchManager::DtRemoteBatchManager ( DtCommunicationManager controller)
virtual DtRemoteBatchManager::~DtRemoteBatchManager ( )
virtual
DtRemoteBatchManager::DtRemoteBatchManager ( )
protected

Not implemented. Do not use.

DtRemoteBatchManager::DtRemoteBatchManager ( const DtRemoteBatchManager orig)
protected

Not implemented. Do not use.

Member Function Documentation

virtual bool DtRemoteBatchManager::init ( )
virtual

Initializes the batch manager by connecting to necessary signals from the DtCommunicationManager.

virtual bool DtRemoteBatchManager::loadBatch ( const DtFilename &  batchFileName,
DtBackendRemappingFcn  fcn = NULL,
void *  userData = NULL 
)
virtual

Loads the batch file specified and prepares it for running.

virtual bool DtRemoteBatchManager::loadBatch ( const DtScenarioBatch batch,
DtBackendRemappingFcn  fcn = NULL,
void *  userData = NULL 
)
virtual

Loads the batch file specified and prepares it for running.

virtual bool DtRemoteBatchManager::runBatch ( )
virtual

Puts batch manager in run mode. Running of batch will start on next tick. All scenarios are run in order, one after another.

virtual bool DtRemoteBatchManager::stopBatch ( )
virtual

Aborts running of batch prematurely.

virtual bool DtRemoteBatchManager::running ( )
virtual

Returns true if batch is currently running.

virtual bool DtRemoteBatchManager::done ( )
virtual

Returns rue if batch has completed normally.

virtual const DtScenarioBatchIterator* DtRemoteBatchManager::batchIterator ( )
virtual

Accessor for the Batch Iterator used in this batch manager. This iterator is used to iterate through a batch file and generate the scenarios that are to be run. Information about what percent of the batch has been executed and related statistics can be found in the iterator.

virtual void DtRemoteBatchManager::processBackendsLoadedCallback ( )
virtual
virtual void DtRemoteBatchManager::addScenarioLoadingCallback ( DtScenarioCallbackFcn  fcn,
void *  usr 
)
virtual

Register scenario loading callbacks.

virtual void DtRemoteBatchManager::removeScenarioLoadingCallback ( DtScenarioCallbackFcn  fcn,
void *  usr 
)
virtual
virtual void DtRemoteBatchManager::addScenarioLoadingErrorCallback ( DtScenarioCallbackFcn  fcn,
void *  usr 
)
virtual

Register scenario loading error callbacks.

virtual void DtRemoteBatchManager::removeScenarioLoadingErrorCallback ( DtScenarioCallbackFcn  fcn,
void *  usr 
)
virtual
virtual void DtRemoteBatchManager::addScenarioBatchCompleteCallback ( DtScenarioCallbackFcn  fcn,
void *  usr 
)
virtual

Register scenario batch run complete callbacks.

virtual void DtRemoteBatchManager::removeScenarioBatchCompleteCallback ( DtScenarioCallbackFcn  fcn,
void *  usr 
)
virtual
virtual void DtRemoteBatchManager::addScenarioClosingCallback ( DtScenarioCallbackFcn  fcn,
void *  usr 
)
virtual

Register scenario closing callback.

virtual void DtRemoteBatchManager::removeScenarioClosingCallback ( DtScenarioCallbackFcn  fcn,
void *  usr 
)
virtual
virtual void DtRemoteBatchManager::processScenarioCallbacksForState ( const State state)
virtual

Called to execute functions for a particular scenario state.

virtual void DtRemoteBatchManager::removeCallbacksFor ( DtScenarioCallbackFcn  fcn,
void *  usrData,
const State  state 
)
virtual

Called to remove a particular callback of a particular type.

virtual void DtRemoteBatchManager::nextScenarioRun ( )
virtual

Call this function to move onto the next scenario run in the batch (if there is one)

virtual void DtRemoteBatchManager::nextScenario ( )
virtual

Call this function to move onto the next scenario in the batch even if there are runs left in the current scenario.

virtual void DtRemoteBatchManager::idle ( )
virtual

Set state to StateIdle.

virtual void DtRemoteBatchManager::scheduleNextRun ( )
virtual

Set state to StateRunComplete.

virtual void DtRemoteBatchManager::tick ( )
virtual

Monitors the execution of the scenario and starts a new one if necessary.

DtRemoteBatchManager& DtRemoteBatchManager::operator= ( const DtRemoteBatchManager orig)
protected

Not implemented. Do not use.

virtual double DtRemoteBatchManager::currentSimulationTime ( ) const
protectedvirtual

Returns the current simulation time from the first back-end in the remote control list.

virtual void DtRemoteBatchManager::startedLoading ( const DtScenario )
protectedvirtual
virtual void DtRemoteBatchManager::backendsLoaded ( )
protectedvirtual
virtual void DtRemoteBatchManager::scenarioRunComplete ( )
protectedvirtual

Member Data Documentation

DtScenarioBatchIterator* DtRemoteBatchManager::myBatchIterator
protected
DtCommunicationManager* DtRemoteBatchManager::myCommunicationManager
protected
State DtRemoteBatchManager::myState
protected
bool DtRemoteBatchManager::myRunning
protected
bool DtRemoteBatchManager::myDone
protected
DtTime DtRemoteBatchManager::myRunStartTime
protected
bool DtRemoteBatchManager::myBackendsLoaded
protected
DtList DtRemoteBatchManager::myCallbacks
protected
DtBackendRemappingFcn DtRemoteBatchManager::myRemappingFcn
protected
void* DtRemoteBatchManager::myRemappingFcnUserData
protected
boost::signals2::connection DtRemoteBatchManager::myPostAdvanceFrameConnection
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)