Copyright | (c) Esa Ilari Vuokko 2006 |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Esa Ilari Vuokko <ei@vuokko.info> |
Stability | provisional |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
A collection of FFI declarations for interfacing with Win32 event system between processes.
Synopsis
- type DuplicateOption = DWORD
- dUPLICATE_CLOSE_SOURCE :: DuplicateOption
- dUPLICATE_SAME_ACCESS :: DuplicateOption
- type AccessMode = UINT
- eVENT_ALL_ACCESS :: AccessMode
- eVENT_MODIFY_STATE :: AccessMode
- type WaitResult = DWORD
- wAIT_ABANDONED :: WaitResult
- wAIT_IO_COMPLETION :: WaitResult
- wAIT_OBJECT_0 :: WaitResult
- wAIT_TIMEOUT :: WaitResult
- wAIT_FAILED :: WaitResult
- openEvent :: AccessMode -> Bool -> String -> IO HANDLE
- createEvent :: Maybe SECURITY_ATTRIBUTES -> Bool -> Bool -> String -> IO HANDLE
- duplicateHandle :: HANDLE -> HANDLE -> HANDLE -> AccessMode -> Bool -> DuplicateOption -> IO HANDLE
- setEvent :: HANDLE -> IO ()
- resetEvent :: HANDLE -> IO ()
- pulseEvent :: HANDLE -> IO ()
- signalObjectAndWait :: HANDLE -> HANDLE -> MilliSeconds -> Bool -> IO WaitResult
- waitForSingleObject :: HANDLE -> MilliSeconds -> IO WaitResult
- waitForSingleObjectEx :: HANDLE -> MilliSeconds -> Bool -> IO WaitResult
- waitForMultipleObjects :: [HANDLE] -> Bool -> MilliSeconds -> IO WaitResult
- waitForMultipleObjectsEx :: [HANDLE] -> Bool -> MilliSeconds -> Bool -> IO WaitResult
Duplicate options
type DuplicateOption = DWORD Source #
Access modes
type AccessMode = UINT Source #
Wait results
type WaitResult = DWORD Source #
Managing events
createEvent :: Maybe SECURITY_ATTRIBUTES -> Bool -> Bool -> String -> IO HANDLE Source #
duplicateHandle :: HANDLE -> HANDLE -> HANDLE -> AccessMode -> Bool -> DuplicateOption -> IO HANDLE Source #
resetEvent :: HANDLE -> IO () Source #
pulseEvent :: HANDLE -> IO () Source #
Signalling objects
signalObjectAndWait :: HANDLE -> HANDLE -> MilliSeconds -> Bool -> IO WaitResult Source #
Waiting on objects
waitForSingleObject :: HANDLE -> MilliSeconds -> IO WaitResult Source #
waitForSingleObjectEx :: HANDLE -> MilliSeconds -> Bool -> IO WaitResult Source #
waitForMultipleObjects :: [HANDLE] -> Bool -> MilliSeconds -> IO WaitResult Source #
waitForMultipleObjectsEx :: [HANDLE] -> Bool -> MilliSeconds -> Bool -> IO WaitResult Source #