Event_VX.h 774 B

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