#ifndef __HGMSGPUMPIMPL_H__ #define __HGMSGPUMPIMPL_H__ #include "HGDef.h" #include "HGInc.h" #include "HGEvent.h" #include "HGLock.h" #include "HGMsgPump.h" #include class HGMsgPumpImpl { public: HGMsgPumpImpl(); ~HGMsgPumpImpl(); HGResult Run(HGMsgPumpFunc func, HGPointer param); HGResult PostMessage(const HGMsg* msg); HGResult Exit(); private: HGEvent m_msgEvent; HGLock m_msgLock; HGBool m_bRecvMsg; std::list m_listMsg; }; #endif /* __HGMSGPUMPIMPL_H__ */