Event_VX.h 835 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. //
  2. // Event_VX.h
  3. //
  4. // $Id: //poco/1.4/Foundation/include/Poco/Event_VX.h#1 $
  5. //
  6. // Library: Foundation
  7. // Package: Threading
  8. // Module: Event
  9. //
  10. // Definition of the EventImpl class for VxWorks.
  11. //
  12. // Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
  13. // and Contributors.
  14. //
  15. // SPDX-License-Identifier: BSL-1.0
  16. //
  17. #ifndef Foundation_Event_VX_INCLUDED
  18. #define Foundation_Event_VX_INCLUDED
  19. #include "Poco/Foundation.h"
  20. #include "Poco/Exception.h"
  21. #include <semLib.h>
  22. namespace Poco {
  23. class Foundation_API EventImpl
  24. {
  25. protected:
  26. EventImpl(bool autoReset);
  27. ~EventImpl();
  28. void setImpl();
  29. void waitImpl();
  30. bool waitImpl(long milliseconds);
  31. void resetImpl();
  32. private:
  33. bool _auto;
  34. volatile bool _state;
  35. SEM_ID _sem;
  36. };
  37. } // namespace Poco
  38. #endif // Foundation_Event_VX_INCLUDED