VR-Forces 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 Types | Protected Attributes
DtInfluenceEventDispatcher Class Reference
Inheritance diagram for DtInfluenceEventDispatcher:
Inheritance graph
[legend]

Public Member Functions

 DtInfluenceEventDispatcher (DtSimulationServices *simServices)
 
virtual ~DtInfluenceEventDispatcher ()
 
virtual bool init ()
 
virtual void registerForInfluenceEvents (const DtUUID &uuid, DtInfluenceEventFunction func, void *userData) override
 
virtual void unregisterForInfluenceEvents (const DtUUID &uuid, DtInfluenceEventFunction func, void *userData) override
 
virtual void processInfluence (const makVrfEvents::DtEvent &m)
 
virtual void registerForEventsByInfluenceName (const std::string &sInfluenceName, DtInfluenceEventFunction func, void *userData) override
 
virtual void unregisterForEventsByInfluenceName (const std::string &sInfluenceName, DtInfluenceEventFunction func, void *userData) override
 
- Public Member Functions inherited from DtInfluenceDispatcherServiceInterface
 DtInfluenceDispatcherServiceInterface ()
 

Protected Types

typedef DtCallbackList
< std::shared_ptr< const
makVrfEvents::DtInfluenceEvent > > 
CallbackList
 
typedef std::shared_ptr
< CallbackList
CallbackListPtr
 
typedef std::unordered_map
< DtUUID, CallbackListPtr
CallbackMap
 
typedef std::map< std::string,
CallbackListPtr
CallbackByInfluenceTypeMap
 

Protected Attributes

DtSimulationServicesmySimServices
 
boost::signals2::scoped_connection myInfluenceEventConnection
 
CallbackMap myRegisteredCallbacks
 
CallbackByInfluenceTypeMap myRegisteredByTypeCallbacks
 
tbb::spin_mutex myMutex
 

Additional Inherited Members

- Public Types inherited from DtInfluenceDispatcherServiceInterface
typedef void(* DtInfluenceEventFunction )(std::shared_ptr< const makVrfEvents::DtInfluenceEvent > influenceEvent, void *usr)
 

Member Typedef Documentation

typedef std::shared_ptr<CallbackList > DtInfluenceEventDispatcher::CallbackListPtr
protected
typedef std::unordered_map<DtUUID, CallbackListPtr> DtInfluenceEventDispatcher::CallbackMap
protected

Constructor & Destructor Documentation

DtInfluenceEventDispatcher::DtInfluenceEventDispatcher ( DtSimulationServices simServices)
virtual DtInfluenceEventDispatcher::~DtInfluenceEventDispatcher ( )
virtual

Member Function Documentation

virtual bool DtInfluenceEventDispatcher::init ( )
virtual
virtual void DtInfluenceEventDispatcher::registerForInfluenceEvents ( const DtUUID uuid,
DtInfluenceEventFunction  func,
void *  userData 
)
overridevirtual

Register to receive callbacks for influence events addressed to a specific UUID.

Implements DtInfluenceDispatcherServiceInterface.

virtual void DtInfluenceEventDispatcher::unregisterForInfluenceEvents ( const DtUUID uuid,
DtInfluenceEventFunction  func,
void *  userData 
)
overridevirtual

Remove a callback registered with registerForInfluenceEvents()

Implements DtInfluenceDispatcherServiceInterface.

virtual void DtInfluenceEventDispatcher::registerForEventsByInfluenceName ( const std::string &  sInfluenceName,
DtInfluenceEventFunction  func,
void *  userData 
)
overridevirtual

Register for influence event callbacks based on influence name. This allows subscribers to receive influence events addressed to other recipients. Meaning, it does not filter by UUID.

Implements DtInfluenceDispatcherServiceInterface.

virtual void DtInfluenceEventDispatcher::unregisterForEventsByInfluenceName ( const std::string &  sInfluenceName,
DtInfluenceEventFunction  func,
void *  userData 
)
overridevirtual

Register for influence event callbacks based on influence name. This allows subscribers to receive influence events addressed to other recipients. Meaning, it does not filter by UUID.

Implements DtInfluenceDispatcherServiceInterface.

virtual void DtInfluenceEventDispatcher::processInfluence ( const makVrfEvents::DtEvent m)
virtual

Member Data Documentation

DtSimulationServices* DtInfluenceEventDispatcher::mySimServices
protected
boost::signals2::scoped_connection DtInfluenceEventDispatcher::myInfluenceEventConnection
protected
CallbackMap DtInfluenceEventDispatcher::myRegisteredCallbacks
protected
CallbackByInfluenceTypeMap DtInfluenceEventDispatcher::myRegisteredByTypeCallbacks
protected
tbb::spin_mutex DtInfluenceEventDispatcher::myMutex
protected

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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)