fd.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. ///////////////////////////////////////////////////////////////////////////////
  2. // Name: wx/private/fd.h
  3. // Purpose: private stuff for working with file descriptors
  4. // Author: Vadim Zeitlin
  5. // Created: 2008-11-23 (moved from wx/unix/private.h)
  6. // Copyright: (c) 2008 Vadim Zeitlin <vadim@wxwidgets.org>
  7. // Licence: wxWindows licence
  8. ///////////////////////////////////////////////////////////////////////////////
  9. #ifndef _WX_PRIVATE_FD_H_
  10. #define _WX_PRIVATE_FD_H_
  11. // standard Linux headers produce many warnings when used with icc so define
  12. // our own replacements for FD_XXX macros
  13. #if defined(__INTELC__) && defined(__LINUX__)
  14. inline void wxFD_ZERO(fd_set *fds)
  15. {
  16. #pragma warning(push)
  17. #pragma warning(disable:593)
  18. FD_ZERO(fds);
  19. #pragma warning(pop)
  20. }
  21. inline void wxFD_SET(int fd, fd_set *fds)
  22. {
  23. #pragma warning(push, 1)
  24. #pragma warning(disable:1469)
  25. FD_SET(fd, fds);
  26. #pragma warning(pop)
  27. }
  28. inline bool wxFD_ISSET(int fd, fd_set *fds)
  29. {
  30. #pragma warning(push, 1)
  31. #pragma warning(disable:1469)
  32. return FD_ISSET(fd, fds);
  33. #pragma warning(pop)
  34. }
  35. inline void wxFD_CLR(int fd, fd_set *fds)
  36. {
  37. #pragma warning(push, 1)
  38. #pragma warning(disable:1469)
  39. FD_CLR(fd, fds);
  40. #pragma warning(pop)
  41. }
  42. #else // !__INTELC__
  43. #define wxFD_ZERO(fds) FD_ZERO(fds)
  44. #define wxFD_SET(fd, fds) FD_SET(fd, fds)
  45. #define wxFD_ISSET(fd, fds) FD_ISSET(fd, fds)
  46. #define wxFD_CLR(fd, fds) FD_CLR(fd, fds)
  47. #endif // __INTELC__/!__INTELC__
  48. #endif // _WX_PRIVATE_FD_H_