Public Types | Public Member Functions | Protected Member Functions | Protected Attributes

XnVMessageMux Class Reference

#include <XnVMessageMux.h>

Inheritance diagram for XnVMessageMux:
Inheritance graph
[legend]
Collaboration diagram for XnVMessageMux:
Collaboration graph
[legend]

List of all members.

Public Types

enum  XnVMuxMode { XNV_MUX_MODE_ANY, XNV_MUX_MODE_ALL, XNV_MUX_MODE_SPECIFIC, XNV_MUX_MODE_LAST }

Public Member Functions

 XnVMessageMux (const XnChar *strName="XnVMessageMux")
 ~XnVMessageMux ()
void AddType (const XnChar *strType)
void Update (XnVMessage *pMessage)
void SetMode (XnVMuxMode eMode)
void SetMode (const XnChar *strType)

Protected Member Functions

void HandleSingleMessage (XnVMessage *pMessage)

Protected Attributes

XnVComplexMessagem_pComplexMessage
XnVMuxMode m_eMode
XnChar * m_strSpecific
XnStringsHash m_hTypes
XnUInt32 m_nExpected
XnList m_hCurrent

Detailed Description

A XnVMessageMux is a Filter which created Complex Messages from multiple other Messages

Definition at line 20 of file XnVMessageMux.h.


Member Enumeration Documentation

The Message Mux can run in several different modes

Enumerator:
XNV_MUX_MODE_ANY 

Send a Message anytime any Message is received

XNV_MUX_MODE_ALL 

Send a Message only when all Messages are received

XNV_MUX_MODE_SPECIFIC 

Send a Message when a specific type is received

XNV_MUX_MODE_LAST 

Illegal

Definition at line 21 of file XnVMessageMux.h.


Constructor & Destructor Documentation

XnVMessageMux::XnVMessageMux ( const XnChar *  strName = "XnVMessageMux"  ) 

Constructor. Default mode is XNV_MUX_MODE_ANY

Parameters:
[in] strName Name of the control, for log purposes.
XnVMessageMux::~XnVMessageMux (  ) 

Member Function Documentation

void XnVMessageMux::AddType ( const XnChar *  strType  ) 

Expect another type

Parameters:
[in] strType The type to be expected
void XnVMessageMux::HandleSingleMessage ( XnVMessage pMessage  )  [protected]
void XnVMessageMux::SetMode ( const XnChar *  strType  ) 

Change the mode to a specific type

Parameters:
[in] strType The type to use
void XnVMessageMux::SetMode ( XnVMuxMode  eMode  ) 

Change the mode

Parameters:
[in] eMode The new mode
void XnVMessageMux::Update ( XnVMessage pMessage  ) 

Handle a Message. Add it to a Complex Message, and decide whether or not to send that Message

Parameters:
[in] pMessage The new Message

Member Data Documentation

Definition at line 70 of file XnVMessageMux.h.

XnList XnVMessageMux::m_hCurrent [protected]

Definition at line 75 of file XnVMessageMux.h.

XnStringsHash XnVMessageMux::m_hTypes [protected]

Definition at line 73 of file XnVMessageMux.h.

XnUInt32 XnVMessageMux::m_nExpected [protected]

Definition at line 74 of file XnVMessageMux.h.

Definition at line 69 of file XnVMessageMux.h.

XnChar* XnVMessageMux::m_strSpecific [protected]

Definition at line 71 of file XnVMessageMux.h.


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