EventSelect.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:1k
源码类别:

模拟服务器

开发平台:

C/C++

  1. /********************************************************************
  2. created: 2003/02/19
  3. file base: EventSelect
  4. file ext: h
  5. author: liupeng
  6. purpose:
  7. *********************************************************************/
  8. #ifndef __INCLUDE_EVENTSELECT_H__
  9. #define __INCLUDE_EVENTSELECT_H__
  10. #if defined (_MSC_VER) && (_MSC_VER >= 1020)
  11. #pragma once
  12. #endif
  13. #include <winsock2.h>
  14. #include "Win32Exception.h"
  15. /*
  16.  * namespace OnlineGameLib::Win32
  17.  */
  18. namespace OnlineGameLib {
  19. namespace Win32 {
  20. class CEventSelect
  21. {
  22. public:
  23. CEventSelect();
  24. ~CEventSelect();
  25. void AssociateEvent( SOCKET s, long lNetworkEvents );
  26. bool WaitForEnumEvent( SOCKET s, DWORD dwTimeout );
  27. bool IsRead();
  28. bool IsWrite();
  29. bool IsConnect();
  30. bool IsClose();
  31. private:
  32. WSAEVENT m_event;
  33. WSANETWORKEVENTS m_networkEvents;
  34. /*
  35.  * No copies do not implement
  36.  */
  37. CEventSelect( const CEventSelect &rhs );
  38. CEventSelect &operator=( const CEventSelect &rhs );
  39. };
  40. } // End of namespace OnlineGameLib
  41. } // End of namespace Win32
  42. #endif //__INCLUDE_EVENTSELECT_H__