VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Member Functions
DtSetDataManager Class Reference

This class manages the distribution of DtSetDataRequests within a single DtVrfObject. More...

Public Member Functions

 DtSetDataManager (DtSimRadio *radio)
 Constructor.
virtual ~DtSetDataManager ()
 Destructor.
virtual bool init ()
 Must be called after constructor.
virtual bool init (DtSimRadio *pRadio)
 Override.
virtual void addSetDataProcessorCallback (const DtSetMessageType &setDataType, DtMessageCallbackFcn fcn, void *usr)
 Add a callback to be called when a new set data request is being executed.
virtual void addSetDataNotifyCallback (const DtSetMessageType &setDataType, DtMessageCallbackFcn fcn, void *usr)
 Add a callback to be called when a new set data request is being executed.
virtual void removeSetDataCallback (const DtSetMessageType &setDataType, DtMessageCallbackFcn fcn, void *usr)
 Removes any callback that was added using either addSetDataProcessorCallback() or addSetDataNotifyCallback().
virtual bool executeSetDataRequest (const DtSetDataRequestMessage &setMsg)
 Invokes all registered callbacks with the specified set data message. Return true if handled.
virtual std::vector
< DtSetMessageType
capableSetDataTypes () const
DtSimRadioradio ()
 radio accessor
const DtSimRadioradio () const
 radio accessor

Protected Types

typedef std::pair
< DtMessageCallbackFcn, void * > 
DtSetDataCallbackInfo
typedef std::multimap
< DtSetMessageType,
DtSetDataCallbackInfo
DtSetDataCallbackMap

Protected Member Functions

virtual void registerRadioMessageCallbacks ()
 Registers setDataMessageCallback for all set data requests from the radio.
virtual void unRegisterRadioMessageCallbacks ()
 Unregisters setDataMessageCallback for all set data requests from the radio.

Static Protected Member Functions

static void setDataMessageCallback (DtSimMessage *msg, void *usr)
 Calls to the local instance's executeSetDataRequest.

Protected Attributes

DtSetDataCallbackMap mySetDataProcessorCallbackMap
DtSetDataCallbackMap mySetDataNotifyCallbackMap
DtSimRadiomyRadio

Private Member Functions

 DtSetDataManager ()
 Not Implemented.
 DtSetDataManager (const DtSetDataManager &orig)
 Not Implemented.
DtSetDataManageroperator= (const DtSetDataManager &orig)
 Not Implemented.

Detailed Description

This class manages the distribution of DtSetDataRequests within a single DtVrfObject.

Components of the object, or other parts of the code, register interested in particular types of set data messages and when such a message is processed by the DtSetDataManager, each of the registered parties is notified.

The DtSetDataManager registers itself with the local entity's radio and listens for any incoming radio messages that contain set data requests and distributes these. Set data requests can also be manually inserted into the manger using the executeSetDataRequest() method. This is the standard way of getting an object to process a set data request.

The DtSetDataManager will also respond to queries about what set data types are currently possible by the object. It returns a list of all set data type IDs that have been registered for.

Member Typedef Documentation

Constructor & Destructor Documentation

DtSetDataManager::DtSetDataManager ( )
private

Not Implemented.

DtSetDataManager::DtSetDataManager ( const DtSetDataManager orig)
private

Not Implemented.

DtSetDataManager::DtSetDataManager ( DtSimRadio radio)

Constructor.

virtual DtSetDataManager::~DtSetDataManager ( )
virtual

Destructor.

Member Function Documentation

DtSetDataManager& DtSetDataManager::operator= ( const DtSetDataManager orig)
private

Not Implemented.

virtual bool DtSetDataManager::init ( )
virtual

Must be called after constructor.

virtual bool DtSetDataManager::init ( DtSimRadio pRadio)
virtual

Override.

If constructor is called with NULL radio, setDataManager must be reinitialized. Disconnects from previous radio before connecting.

virtual void DtSetDataManager::addSetDataProcessorCallback ( const DtSetMessageType setDataType,
DtMessageCallbackFcn  fcn,
void *  usr 
)
virtual

Add a callback to be called when a new set data request is being executed.

The registering function should actually carry out the set in whatever way is appropriate for the particular set message.

Note
All set data types registered with this method will be reported as "capable" set data types by the capableSetDataTypes() method.
Multiple callbacks are allowed for a single set data type.
virtual void DtSetDataManager::addSetDataNotifyCallback ( const DtSetMessageType setDataType,
DtMessageCallbackFcn  fcn,
void *  usr 
)
virtual

Add a callback to be called when a new set data request is being executed.

The registering function should not actually carry out the set, but just be using it as notification for some internal purposes.

Note
Set data types registered with this method will not be reported as "capable" set data types by the capableSetDataTypes() method, unless there is also a callback registered for the same type with addSetDataProcessorCallback().
Multiple callbacks are allowed for a single set data type.
virtual void DtSetDataManager::removeSetDataCallback ( const DtSetMessageType setDataType,
DtMessageCallbackFcn  fcn,
void *  usr 
)
virtual

Removes any callback that was added using either addSetDataProcessorCallback() or addSetDataNotifyCallback().

virtual bool DtSetDataManager::executeSetDataRequest ( const DtSetDataRequestMessage setMsg)
virtual

Invokes all registered callbacks with the specified set data message. Return true if handled.

virtual std::vector<DtSetMessageType> DtSetDataManager::capableSetDataTypes ( ) const
virtual
Returns
A vector containing all the set data types that this object is capable of performing. This is based on any callbacks that have been registered using addSetDataProcessorCallback().
DtSimRadio * DtSetDataManager::radio ( )
inline

radio accessor

References myRadio.

const DtSimRadio * DtSetDataManager::radio ( ) const
inline

radio accessor

References myRadio.

virtual void DtSetDataManager::registerRadioMessageCallbacks ( )
protectedvirtual

Registers setDataMessageCallback for all set data requests from the radio.

virtual void DtSetDataManager::unRegisterRadioMessageCallbacks ( )
protectedvirtual

Unregisters setDataMessageCallback for all set data requests from the radio.

static void DtSetDataManager::setDataMessageCallback ( DtSimMessage msg,
void *  usr 
)
staticprotected

Calls to the local instance's executeSetDataRequest.

Member Data Documentation

DtSetDataCallbackMap DtSetDataManager::mySetDataProcessorCallbackMap
protected
DtSetDataCallbackMap DtSetDataManager::mySetDataNotifyCallbackMap
protected
DtSimRadio* DtSetDataManager::myRadio
protected

Referenced by radio().


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

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)