28 lines
490 B
C
28 lines
490 B
C
|
#ifndef __HGMSGPUMPIMPL_H__
|
||
|
#define __HGMSGPUMPIMPL_H__
|
||
|
|
||
|
#include "HGDef.h"
|
||
|
#include "HGInc.h"
|
||
|
#include "HGEvent.h"
|
||
|
#include "HGLock.h"
|
||
|
#include "HGMsgPump.h"
|
||
|
#include <list>
|
||
|
|
||
|
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<HGMsg> m_listMsg;
|
||
|
};
|
||
|
|
||
|
#endif /* __HGMSGPUMPIMPL_H__ */
|