00001 /******************************************************************************* 00002 * * 00003 * PrimeSense NITE 1.3 * 00004 * Copyright (C) 2010 PrimeSense Ltd. * 00005 * * 00006 *******************************************************************************/ 00007 00008 00009 #ifndef _XNV_FLOW_ROUTER_H_ 00010 #define _XNV_FLOW_ROUTER_H_ 00011 00012 #include <XnStringsHash.h> 00013 #include "XnVMessageListener.h" 00014 00021 class XNV_NITE_API XnVFlowRouter : 00022 public XnVMessageListener 00023 { 00024 public: 00030 XnVFlowRouter(const XnChar* strName = "XnVFlowRouter"); 00031 virtual ~XnVFlowRouter(); 00032 00040 XnStatus SetActive(XnVMessageListener* pActive); 00046 XnVMessageListener* GetActive() const; 00047 00053 void Update(XnVMessage* pMessage); 00054 00058 void ClearQueue(); 00059 protected: 00060 virtual void CloseOldSession(); 00061 virtual void OpenNewSession(); 00062 XnVMessageListener* m_pActive; 00063 00064 XnStringsHash m_Properties; // for last points 00065 }; 00066 00067 #endif