/* * WIN32 Events for POSIX * Author: Mahmoud Al-Qudsi * Copyright (C) 2011 - 2013 by NeoSmart Technologies * This code is released under the terms of the MIT License */ #ifndef TLX_POSIXEVENTS_H #define TLX_POSIXEVENTS_H #define WFMO #include namespace neosmart { //Type declarations struct neosmart_event_t_; typedef neosmart_event_t_ * neosmart_event_t; //WIN32-style functions neosmart_event_t CreateEvent(bool manualReset = false, bool initialState = false); int DestroyEvent(neosmart_event_t event); int WaitForEvent(neosmart_event_t event, uint64_t milliseconds = -1); int SetEvent(neosmart_event_t event); int ResetEvent(neosmart_event_t event); #ifdef WFMO int WaitForMultipleEvents(neosmart_event_t *events, int count, bool waitAll, uint64_t milliseconds); int WaitForMultipleEvents(neosmart_event_t *events, int count, bool waitAll, uint64_t milliseconds, int &index); #endif #ifdef PULSE int PulseEvent(neosmart_event_t event); #endif //POSIX-style functions //TBD } #endif