From 73841adafcb04f024dc6cca84a71af2f302b2385 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jos=C3=A9=20Fonseca?= Date: Mon, 16 Apr 2012 20:47:56 +0100 Subject: [PATCH] Fix common HRESULT values. --- specs/d3d.py | 3 +-- specs/d3d10.py | 2 +- specs/d3d11.py | 2 +- specs/d3d8.py | 3 +-- specs/d3d9.py | 3 +-- specs/ddraw.py | 4 +--- specs/dxgitype.py | 2 +- specs/winapi.py | 34 +++++++++++++++++++--------------- 8 files changed, 26 insertions(+), 27 deletions(-) diff --git a/specs/d3d.py b/specs/d3d.py index 2a02afd..ca11551 100644 --- a/specs/d3d.py +++ b/specs/d3d.py @@ -48,8 +48,7 @@ d3ddpFlags = Flags(DWORD, [ "D3DDP_DONOTLIGHT", ]) -HRESULT = FakeEnum(HRESULT, [ - "D3D_OK", +HRESULT = MAKE_HRESULT(ok = "D3D_OK", errors = [ "D3DERR_BADMAJORVERSION", "D3DERR_BADMINORVERSION", "D3DERR_INVALID_DEVICE", diff --git a/specs/d3d10.py b/specs/d3d10.py index 3ee6179..defad5a 100644 --- a/specs/d3d10.py +++ b/specs/d3d10.py @@ -28,7 +28,7 @@ from dxgi import * from d3dcommon import * -HRESULT = FakeEnum(HRESULT, [ +HRESULT = MAKE_HRESULT([ "D3D10_ERROR_FILE_NOT_FOUND", "D3D10_ERROR_TOO_MANY_UNIQUE_STATE_OBJECTS", "D3DERR_INVALIDCALL", diff --git a/specs/d3d11.py b/specs/d3d11.py index bbbf7fa..5d0c626 100644 --- a/specs/d3d11.py +++ b/specs/d3d11.py @@ -29,7 +29,7 @@ from d3dcommon import * from d3d11sdklayers import * -HRESULT = FakeEnum(HRESULT, [ +HRESULT = MAKE_HRESULT([ "D3D11_ERROR_FILE_NOT_FOUND", "D3D11_ERROR_TOO_MANY_UNIQUE_STATE_OBJECTS", "D3D11_ERROR_TOO_MANY_UNIQUE_VIEW_OBJECTS", diff --git a/specs/d3d8.py b/specs/d3d8.py index 79177cf..41e6402 100644 --- a/specs/d3d8.py +++ b/specs/d3d8.py @@ -29,8 +29,7 @@ from winapi import * from d3d8types import * from d3d8caps import * -HRESULT = FakeEnum(HRESULT, [ - "D3D_OK", +HRESULT = MAKE_HRESULT(ok = "D3D_OK", errors = [ "D3DERR_WRONGTEXTUREFORMAT", "D3DERR_UNSUPPORTEDCOLOROPERATION", "D3DERR_UNSUPPORTEDCOLORARG", diff --git a/specs/d3d9.py b/specs/d3d9.py index 475508c..050517b 100644 --- a/specs/d3d9.py +++ b/specs/d3d9.py @@ -78,8 +78,7 @@ D3DPRESENT = Flags(DWORD, [ "D3DPRESENT_VIDEO_RESTRICT_TO_MONITOR", ]) -HRESULT = FakeEnum(HRESULT, [ - "D3D_OK", +HRESULT = MAKE_HRESULT(ok = "D3D_OK", errors = [ "D3DERR_WRONGTEXTUREFORMAT", "D3DERR_UNSUPPORTEDCOLOROPERATION", "D3DERR_UNSUPPORTEDCOLORARG", diff --git a/specs/ddraw.py b/specs/ddraw.py index fe93a8f..aed2b0d 100644 --- a/specs/ddraw.py +++ b/specs/ddraw.py @@ -1147,9 +1147,7 @@ DirectDrawEvaluateModeFlags = Flags(DWORD, [ "DDEM_MODEFAILED", ]) -DDRESULT = FakeEnum(HRESULT, [ - "DD_OK", - "DD_FALSE", +DDRESULT = MAKE_HRESULT(ok = "DD_OK", false = "DD_FALSE", errors = [ "DDERR_ALREADYINITIALIZED", "DDERR_CANNOTATTACHSURFACE", "DDERR_CANNOTDETACHSURFACE", diff --git a/specs/dxgitype.py b/specs/dxgitype.py index c7c610c..e330d14 100644 --- a/specs/dxgitype.py +++ b/specs/dxgitype.py @@ -27,7 +27,7 @@ from dxgiformat import * -HRESULT = FakeEnum(HRESULT, [ +HRESULT = MAKE_HRESULT([ "DXGI_STATUS_OCCLUDED", "DXGI_STATUS_CLIPPED", "DXGI_STATUS_NO_REDIRECTION", diff --git a/specs/winapi.py b/specs/winapi.py index 6fbdfae..0941118 100644 --- a/specs/winapi.py +++ b/specs/winapi.py @@ -179,21 +179,25 @@ LOGFONTW = Struct("LOGFONTW", [ # http://msdn.microsoft.com/en-us/library/ff485842.aspx # http://msdn.microsoft.com/en-us/library/windows/desktop/ms681381.aspx -HRESULT = Enum("HRESULT", [ - "S_OK", # 0x0 - "S_FALSE", # 0x1 - "E_PENDING", # 0x8000000A - "E_NOTIMPL", # 0x80004001 - "E_NOINTERFACE", # 0x80004002 - "E_POINTER", # 0x80004003 - "E_ABORT", # 0x80004004 - "E_FAIL", # 0x80004005 - "E_UNEXPECTED", # 0x8000FFFF - "E_ACCESSDENIED", # 0x80070005 - "E_HANDLE", # 0x80070006 - "E_OUTOFMEMORY", # 0x8007000E - "E_INVALIDARG", # 0x80070057 -]) +def MAKE_HRESULT(errors, ok = "S_OK", false = "S_FALSE"): + values = [ok, false] + values.extend(errors) + values.extend([ + "E_PENDING", # 0x8000000A + "E_NOTIMPL", # 0x80004001 + "E_NOINTERFACE", # 0x80004002 + "E_POINTER", # 0x80004003 + "E_ABORT", # 0x80004004 + "E_FAIL", # 0x80004005 + "E_UNEXPECTED", # 0x8000FFFF + "E_ACCESSDENIED", # 0x80070005 + "E_HANDLE", # 0x80070006 + "E_OUTOFMEMORY", # 0x8007000E + "E_INVALIDARG", # 0x80070057 + ]) + return Enum("HRESULT", values) + +HRESULT = MAKE_HRESULT([]) IUnknown = Interface("IUnknown") -- 2.43.0