Browse Source

Merge pull request #2791 from ftphikari/master

[core:sys/windows] Added couple of procedures
gingerBill 1 year ago
parent
commit
f96579824b
2 changed files with 20 additions and 0 deletions
  1. 15 0
      core/sys/windows/kernel32.odin
  2. 5 0
      vendor/directx/d3d11/d3d11.odin

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

@@ -132,6 +132,21 @@ foreign kernel32 {
 	SetThreadPriority :: proc(thread: HANDLE, priority: c_int) -> BOOL ---
 	GetExitCodeThread :: proc(thread: HANDLE, exit_code: ^DWORD) -> BOOL ---
 	TerminateThread :: proc(thread: HANDLE, exit_code: DWORD) -> BOOL ---
+	SuspendThread :: proc(hThread: HANDLE) -> DWORD ---
+
+	GetProcessAffinityMask :: proc(
+		hProcess: HANDLE,
+		lpProcessAffinityMask: PDWORD_PTR,
+		lpSystemAffinityMask: PDWORD_PTR,
+	) -> BOOL ---
+	SetProcessAffinityMask :: proc(
+		hProcess: HANDLE,
+		dwProcessAffinityMask: DWORD_PTR,
+	) -> BOOL ---
+	SetThreadAffinityMask :: proc(
+		hThread: HANDLE,
+		dwThreadAffinityMask: DWORD_PTR,
+	) -> DWORD_PTR ---
 
 	CreateSemaphoreW :: proc(attributes: LPSECURITY_ATTRIBUTES, initial_count, maximum_count: LONG, name: LPCWSTR) -> HANDLE ---
 	ReleaseSemaphore :: proc(semaphore: HANDLE, release_count: LONG, previous_count: ^LONG) -> BOOL ---

+ 5 - 0
vendor/directx/d3d11/d3d11.odin

@@ -15,6 +15,7 @@ GUID    :: dxgi.GUID
 IID     :: dxgi.IID
 SIZE_T  :: dxgi.SIZE_T
 BOOL    :: dxgi.BOOL
+UINT    :: dxgi.UINT
 
 RECT :: dxgi.RECT
 SIZE :: dxgi.SIZE
@@ -5146,3 +5147,7 @@ MESSAGE_ID :: enum u32 {
 	TRACKED_WORKLOAD_DISJOINT_FAILURE,
 	D3D11_5_MESSAGES_END,
 }
+
+CalcSubresource :: #force_inline proc "contextless" (MipSlice: UINT, ArraySlice: UINT, MipLevels: UINT) -> UINT {
+	return MipSlice + ArraySlice * MipLevels
+}