From 3bf9df6b2785fa6d951086978a3e66f49427166a Mon Sep 17 00:00:00 2001 From: FluorescentCIAAfricanAmerican <0934gj3049fk@protonmail.com> Date: Wed, 22 Apr 2020 12:56:21 -0400 Subject: 1 --- tracker/common/CompletionEvent.cpp | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 tracker/common/CompletionEvent.cpp (limited to 'tracker/common/CompletionEvent.cpp') diff --git a/tracker/common/CompletionEvent.cpp b/tracker/common/CompletionEvent.cpp new file mode 100644 index 0000000..dd4bfae --- /dev/null +++ b/tracker/common/CompletionEvent.cpp @@ -0,0 +1,37 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: +// +// $NoKeywords: $ +//============================================================================= + +#include "CompletionEvent.h" +#include "winlite.h" + +//----------------------------------------------------------------------------- +// Purpose: creates an event +//----------------------------------------------------------------------------- +EventHandle_t Event_CreateEvent() +{ + return (EventHandle_t)::CreateEvent(NULL, false, false, NULL); +} + +//----------------------------------------------------------------------------- +// Purpose: sets the current thread to wait for either the event to be signalled, or the timeout to occur +//----------------------------------------------------------------------------- +void Event_WaitForEvent(EventHandle_t event, unsigned long timeoutMilliseconds) +{ + ::WaitForSingleObject((HANDLE)event, timeoutMilliseconds); +} + +//----------------------------------------------------------------------------- +// Purpose: signals an event to Activate +// Releases one thread waiting on the event. +// If the event has no threads waiting on it, the next thread to wait on it will be let right through +//----------------------------------------------------------------------------- +void Event_SignalEvent(EventHandle_t event) +{ + ::SetEvent((HANDLE)event); +} + + -- cgit v1.2.3