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

The protocol specific processor for entity sim data.

Inheritance diagram for makVrf::DtExtendedStateDataProcessor:
Inheritance graph
[legend]

Classes

struct  ExtendedStateDataInstance
 
class  ExtendedStateDataUpdater
 

Public Member Functions

 DtExtendedStateDataProcessor (DtStateDataManager *, makVrv::DtBaseConnection &sim)
 
virtual ~DtExtendedStateDataProcessor ()
 
void postDrainInput ()
 
void setObjectUpdateRate (makVrv::DtUniqueID uniqueId, makVrv::DtSimEntryUpdater::UpdateRate rate)
 
void forceObjectUpdate (makVrv::DtUniqueID uniqueId)
 
virtual void createAndSendState (makVrv::DtUniqueID id, makVrv::DtSimStateObjectAgent &objectDriver)
 
virtual DtSimpleTypedDictionaryextendedStateFor (makVrv::DtUniqueID id, bool forceUpdate=true)
 
virtual bool hasStateFor (makVrv::DtUniqueID) const
 
virtual DtExtendedStateData stateFor (makVrv::DtUniqueID id) const
 
- Public Member Functions inherited from makVrv::DtSimDataProcessorInterface
 DtSimDataProcessorInterface ()
 
virtual ~DtSimDataProcessorInterface ()
 
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 
virtual ~DtVirtualBaseClass ()
 

Static Public Member Functions

static
DtExtendedStateDataProcessor
findInstance (makVrv::DtBaseConnection &sim)
 
static void registerInstance (makVrv::DtBaseConnection &sim, DtExtendedStateDataProcessor *)
 

Public Attributes

boost::signals2::signal< void(makVrv::DtUniqueID,
DtExtendedStateData &) > 
signal_stateUpdated
 
- Public Attributes inherited from makVrv::DtSimDataProcessorInterface
boost::signalslib::signal
< void(DtUniqueID, const
DtSimState &) > 
signal_stateAdded
 
boost::signalslib::signal
< void(DtUniqueID, const
DtSimState &) > 
signal_stateUpdated
 
boost::signalslib::signal
< void(DtUniqueID) > 
signal_stateRemoved
 

Protected Types

typedef std::vector
< makVrv::DtUniqueID
ExtendedStateDataIdList
 
typedef std::map
< makVrv::DtUniqueID,
ExtendedStateDataInstance
ExtendedStateDataAgentMap
 
typedef
makVrv::DtBalancedUpdater
< ExtendedStateDataUpdater
ExtededStateDataUpdaterGroup
 
typedef std::map
< makVrv::DtSimEntryUpdater::UpdateRate,
ExtededStateDataUpdaterGroup
ExtendedStateDataUpdateGroupMap
 

Protected Member Functions

virtual void tick ()
 
virtual void itemToBeDestroyed (const DtStateData *)
 

Protected Attributes

makVrv::DtSignalConnectionManager myConnections
 
makVrv::DtBaseConnectionmySimulation
 
DtTimedSection myTimer
 
makVrv::DtSimEntryObjectAgent * mySimEntryAgent
 
ExtendedStateDataAgentMap myExtendedStateDataAgents
 
ExtendedStateDataUpdateGroupMap myRefreshRateGroups
 
ExtendedStateDataIdList myForceUpdateList
 
DtStateDataManagermyStateDataManager
 

Member Typedef Documentation

Constructor & Destructor Documentation

makVrf::DtExtendedStateDataProcessor::DtExtendedStateDataProcessor ( DtStateDataManager ,
makVrv::DtBaseConnection sim 
)

CTOR.

virtual makVrf::DtExtendedStateDataProcessor::~DtExtendedStateDataProcessor ( )
virtual

DTOR.

Member Function Documentation

static DtExtendedStateDataProcessor* makVrf::DtExtendedStateDataProcessor::findInstance ( makVrv::DtBaseConnection sim)
static

CTOR.

static void makVrf::DtExtendedStateDataProcessor::registerInstance ( makVrv::DtBaseConnection sim,
DtExtendedStateDataProcessor  
)
static

CTOR.

void makVrf::DtExtendedStateDataProcessor::postDrainInput ( )

Registered to call each drain input, aka potential sim data changed.

void makVrf::DtExtendedStateDataProcessor::setObjectUpdateRate ( makVrv::DtUniqueID  uniqueId,
makVrv::DtSimEntryUpdater::UpdateRate  rate 
)

Set a particular object update.

void makVrf::DtExtendedStateDataProcessor::forceObjectUpdate ( makVrv::DtUniqueID  uniqueId)
virtual

Force an object to be updated the next cycle.

Implements makVrv::DtSimDataProcessorInterface.

virtual void makVrf::DtExtendedStateDataProcessor::createAndSendState ( makVrv::DtUniqueID  id,
makVrv::DtSimStateObjectAgent &  objectDriver 
)
virtual

Create and send a state.

virtual DtSimpleTypedDictionary& makVrf::DtExtendedStateDataProcessor::extendedStateFor ( makVrv::DtUniqueID  id,
bool  forceUpdate = true 
)
virtual

Returns the extended state for this object. If an extended state does not exist, will create a new state and updater for the object. If a state does exist will force an update of the state onto the network as part of the retrieval if the update flag is true.

virtual bool makVrf::DtExtendedStateDataProcessor::hasStateFor ( makVrv::DtUniqueID  ) const
virtual

Returns true if there is extended state for this id.

virtual DtExtendedStateData makVrf::DtExtendedStateDataProcessor::stateFor ( makVrv::DtUniqueID  id) const
virtual

Returns state for given id. If state does not exist returns empty state.

virtual void makVrf::DtExtendedStateDataProcessor::tick ( )
protectedvirtual
virtual void makVrf::DtExtendedStateDataProcessor::itemToBeDestroyed ( const DtStateData )
protectedvirtual

Member Data Documentation

boost::signals2::signal<void (makVrv::DtUniqueID, DtExtendedStateData&) > makVrf::DtExtendedStateDataProcessor::signal_stateUpdated
makVrv::DtSignalConnectionManager makVrf::DtExtendedStateDataProcessor::myConnections
protected
makVrv::DtBaseConnection& makVrf::DtExtendedStateDataProcessor::mySimulation
protected
DtTimedSection makVrf::DtExtendedStateDataProcessor::myTimer
protected
makVrv::DtSimEntryObjectAgent* makVrf::DtExtendedStateDataProcessor::mySimEntryAgent
protected
ExtendedStateDataAgentMap makVrf::DtExtendedStateDataProcessor::myExtendedStateDataAgents
protected
ExtendedStateDataUpdateGroupMap makVrf::DtExtendedStateDataProcessor::myRefreshRateGroups
protected
ExtendedStateDataIdList makVrf::DtExtendedStateDataProcessor::myForceUpdateList
protected
DtStateDataManager* makVrf::DtExtendedStateDataProcessor::myStateDataManager
protected

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

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)