+KeResetEvent()
[captive.git] / src / libcaptive / ke / event.c
index 545509a..29f8321 100644 (file)
@@ -63,3 +63,20 @@ LONG KeSetEvent(PKEVENT Event,KPRIORITY Increment,BOOLEAN Wait)
        /* TODO:thread */
        return InterlockedExchange(&(Event->Header.SignalState),1);
 }
+
+
+/**
+ * KeResetEvent:
+ * @Event: Event to clear its signal state off.
+ * %NULL value is forbidden.
+ *
+ * Clears the signal state of @Event. See also KeSetEvent().
+ *
+ * Returns: Previous signal state value of @Event.
+ */
+LONG KeResetEvent(PKEVENT Event)
+{
+       g_return_val_if_fail(Event!=NULL,0);
+
+       return InterlockedExchange(&(Event->Header.SignalState),0);
+}