Browse Source

Merge pull request #2225 from ftphikari/master

sys/windows: add CreateWaitableTimerExW
Jeroen van Rijn 2 years ago
parent
commit
9c8eaeb988
2 changed files with 13 additions and 0 deletions
  1. 6 0
      core/sys/windows/kernel32.odin
  2. 7 0
      core/sys/windows/types.odin

+ 6 - 0
core/sys/windows/kernel32.odin

@@ -120,6 +120,12 @@ foreign kernel32 {
 		bManualReset: BOOL,
 		bManualReset: BOOL,
 		lpTimerName: LPCWSTR,
 		lpTimerName: LPCWSTR,
 	) -> HANDLE ---
 	) -> HANDLE ---
+	CreateWaitableTimerExW :: proc(
+		lpTimerAttributes: LPSECURITY_ATTRIBUTES,
+		lpTimerName: LPCWSTR,
+		dwFlags: DWORD,
+		dwDesiredAccess: DWORD,
+	) -> HANDLE ---
 	SetWaitableTimerEx :: proc(
 	SetWaitableTimerEx :: proc(
 		hTimer: HANDLE,
 		hTimer: HANDLE,
 		lpDueTime: ^LARGE_INTEGER,
 		lpDueTime: ^LARGE_INTEGER,

+ 7 - 0
core/sys/windows/types.odin

@@ -146,6 +146,13 @@ PSRWLOCK :: ^SRWLOCK
 
 
 MMRESULT :: UINT
 MMRESULT :: UINT
 
 
+CREATE_WAITABLE_TIMER_MANUAL_RESET    :: 0x00000001
+CREATE_WAITABLE_TIMER_HIGH_RESOLUTION :: 0x00000002
+
+TIMER_QUERY_STATE  :: 0x0001
+TIMER_MODIFY_STATE :: 0x0002
+TIMER_ALL_ACCESS   :: STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | TIMER_QUERY_STATE | TIMER_MODIFY_STATE
+
 SOCKET :: distinct uintptr // TODO
 SOCKET :: distinct uintptr // TODO
 socklen_t :: c_int
 socklen_t :: c_int
 ADDRESS_FAMILY :: USHORT
 ADDRESS_FAMILY :: USHORT