• Main Page
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

XnVMessageGenerator.h

Go to the documentation of this file.
00001 /*******************************************************************************
00002 *                                                                              *
00003 *   PrimeSense NITE 1.3                                                        *
00004 *   Copyright (C) 2010 PrimeSense Ltd.                                         *
00005 *                                                                              *
00006 *******************************************************************************/
00007 
00008 
00009 #ifndef _XNV_MESSAGE_GENERATOR_H_
00010 #define _XNV_MESSAGE_GENERATOR_H_
00011 
00012 #include <XnStringsHash.h>
00013 
00014 #include "XnVMessageListener.h"
00015 #include "XnVMessage.h"
00016 #include "XnVHandle.h"
00017 
00022 class XNV_NITE_API XnVMessageGenerator
00023 {
00024 public:
00030     XnVMessageGenerator(const XnChar* strName = "XnVMessageGenerator");
00031     virtual ~XnVMessageGenerator();
00032 
00040     XnVHandle AddListener(XnVMessageListener* pListener);
00048     XnVMessageListener* RemoveListener(XnVHandle hListener);
00056     XnVMessageListener* RemoveListener(XnVMessageListener* pListener);
00057 
00063     void Generate(XnVMessage* pMessage);
00064 
00068     void ClearAllQueues();
00069 
00075     const XnChar* GetGeneratorName() const;
00076 protected:
00077     XN_DECLARE_DEFAULT_HASH_DECL(XNV_NITE_API, XnUInt32, XnVMessageListener*, XnVIntMessageListenerHash);
00078 
00079     void OpenNewSession(XnVMessageListener* pListener);
00080     void CloseOldSession(XnVMessageListener* pListener);
00081 
00082     XnVIntMessageListenerHash m_hListeners;
00083     XnStringsHash m_Properties; // for last points
00084     XnVHandle m_hNextAvailable;
00085 
00086     XnChar* m_strGeneratorName;
00087 };
00088 
00089 #endif

Generated on Tue Jul 19 2011 20:22:59 for NITE 1.4.1 - API Reference by  doxygen 1.7.1