Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygend3dx9xof.h
Go to the documentation of this file.
00001 00002 00003 #include "d3dx9.h" 00004 00005 #if !defined( __D3DX9XOF_H__ ) 00006 #define __D3DX9XOF_H__ 00007 00008 #if defined( __cplusplus ) 00009 extern "C" { 00010 #endif 00011 00012 #if defined( _WIN32 ) && !defined( _NO_COM ) 00013 DEFINE_GUID( IID_ID3DXFile, 0xcef08CF9, 0x7B4F, 0x4429, 0x96, 0x24, 0x2A, 0x69, 0x0A, 0x93, 0x32, 0x01 ); 00014 DEFINE_GUID( IID_ID3DXFileSaveObject, 0xcef08CFA, 0x7B4F, 0x4429, 0x96, 0x24, 0x2A, 0x69, 0x0A, 0x93, 0x32, 0x01 ); 00015 DEFINE_GUID( IID_ID3DXFileSaveData, 0xcef08CFB, 0x7B4F, 0x4429, 0x96, 0x24, 0x2A, 0x69, 0x0A, 0x93, 0x32, 0x01 ); 00016 DEFINE_GUID( IID_ID3DXFileEnumObject, 0xcef08CFC, 0x7B4F, 0x4429, 0x96, 0x24, 0x2A, 0x69, 0x0A, 0x93, 0x32, 0x01 ); 00017 DEFINE_GUID( IID_ID3DXFileData, 0xcef08CFD, 0x7B4F, 0x4429, 0x96, 0x24, 0x2A, 0x69, 0x0A, 0x93, 0x32, 0x01 ); 00018 #endif 00019 00020 #define D3DXF_FILEFORMAT_BINARY 0 00021 #define D3DXF_FILEFORMAT_TEXT 1 00022 #define D3DXF_FILEFORMAT_COMPRESSED 2 00023 #define D3DXF_FILESAVE_TOFILE 0x00 00024 #define D3DXF_FILESAVE_TOWFILE 0x01 00025 #define D3DXF_FILELOAD_FROMFILE 0x00 00026 #define D3DXF_FILELOAD_FROMWFILE 0x01 00027 #define D3DXF_FILELOAD_FROMRESOURCE 0x02 00028 #define D3DXF_FILELOAD_FROMMEMORY 0x03 00029 #define _FACD3DXF 0x876 00030 #define D3DXFERR_BADOBJECT MAKE_HRESULT( 1, _FACD3DXF, 900 ) 00031 #define D3DXFERR_BADVALUE MAKE_HRESULT( 1, _FACD3DXF, 901 ) 00032 #define D3DXFERR_BADTYPE MAKE_HRESULT( 1, _FACD3DXF, 902 ) 00033 #define D3DXFERR_NOTFOUND MAKE_HRESULT( 1, _FACD3DXF, 903 ) 00034 #define D3DXFERR_NOTDONEYET MAKE_HRESULT( 1, _FACD3DXF, 904 ) 00035 #define D3DXFERR_FILENOTFOUND MAKE_HRESULT( 1, _FACD3DXF, 905 ) 00036 #define D3DXFERR_RESOURCENOTFOUND MAKE_HRESULT( 1, _FACD3DXF, 906 ) 00037 #define D3DXFERR_BADRESOURCE MAKE_HRESULT( 1, _FACD3DXF, 907 ) 00038 #define D3DXFERR_BADFILETYPE MAKE_HRESULT( 1, _FACD3DXF, 908 ) 00039 #define D3DXFERR_BADFILEVERSION MAKE_HRESULT( 1, _FACD3DXF, 909 ) 00040 #define D3DXFERR_BADFILEFLOATSIZE MAKE_HRESULT( 1, _FACD3DXF, 910 ) 00041 #define D3DXFERR_BADFILE MAKE_HRESULT( 1, _FACD3DXF, 911 ) 00042 #define D3DXFERR_PARSEERROR MAKE_HRESULT( 1, _FACD3DXF, 912 ) 00043 #define D3DXFERR_BADARRAYSIZE MAKE_HRESULT( 1, _FACD3DXF, 913 ) 00044 #define D3DXFERR_BADDATAREFERENCE MAKE_HRESULT( 1, _FACD3DXF, 914 ) 00045 #define D3DXFERR_NOMOREOBJECTS MAKE_HRESULT( 1, _FACD3DXF, 915 ) 00046 #define D3DXFERR_NOMOREDATA MAKE_HRESULT( 1, _FACD3DXF, 916 ) 00047 #define D3DXFERR_BADCACHEFILE MAKE_HRESULT( 1, _FACD3DXF, 917 ) 00048 00049 typedef DWORD D3DXF_FILEFORMAT; 00050 typedef DWORD D3DXF_FILESAVEOPTIONS; 00051 typedef DWORD D3DXF_FILELOADOPTIONS; 00052 00053 typedef struct _D3DXF_FILELOADMEMORY 00054 { 00055 LPCVOID lpMemory; 00056 SIZE_T dSize; 00057 } D3DXF_FILELOADMEMORY; 00058 00059 typedef struct _D3DXF_FILELOADRESOURCE 00060 { 00061 HMODULE hModule; 00062 LPCSTR lpName; 00063 LPCSTR lpType; 00064 } D3DXF_FILELOADRESOURCE; 00065 00066 00067 #if defined( __cplusplus ) 00068 #if !defined( DECLSPEC_UUID ) 00069 #if _MSC_VER >= 1100 00070 #define DECLSPEC_UUID( x ) __declspec( uuid( x ) ) 00071 #else 00072 #define DECLSPEC_UUID( x ) 00073 #endif 00074 #endif 00075 00076 #if defined( _COM_SMARTPTR_TYPEDEF ) 00077 interface DECLSPEC_UUID( "CEF08CF9-7B4F-4429-9624-2A690A933201" ) ID3DXFile; 00078 interface DECLSPEC_UUID( "CEF08CFA-7B4F-4429-9624-2A690A933201" ) ID3DXFileSaveObject; 00079 interface DECLSPEC_UUID( "CEF08CFB-7B4F-4429-9624-2A690A933201" ) ID3DXFileSaveData; 00080 interface DECLSPEC_UUID( "CEF08CFC-7B4F-4429-9624-2A690A933201" ) ID3DXFileEnumObject; 00081 interface DECLSPEC_UUID( "CEF08CFD-7B4F-4429-9624-2A690A933201" ) ID3DXFileData; 00082 #endif 00083 #endif 00084 00085 #undef INTERFACE 00086 #define INTERFACE ID3DXFile 00087 DECLARE_INTERFACE_( ID3DXFile, IUnknown ) 00088 { 00089 STDMETHOD( QueryInterface )( THIS_ REFIID, LPVOID* ) PURE; 00090 STDMETHOD_( ULONG, AddRef )( THIS ) PURE; 00091 STDMETHOD_( ULONG, Release )( THIS ) PURE; 00092 STDMETHOD( CreateEnumObject )( THIS_ LPCVOID, D3DXF_FILELOADOPTIONS, ID3DXFileEnumObject** ) PURE; 00093 STDMETHOD( CreateSaveObject )( THIS_ LPCVOID, D3DXF_FILESAVEOPTIONS, D3DXF_FILEFORMAT, ID3DXFileSaveObject** ) PURE; 00094 STDMETHOD( RegisterTemplates )( THIS_ LPCVOID, SIZE_T ) PURE; 00095 STDMETHOD( RegisterEnumTemplates )( THIS_ ID3DXFileEnumObject* ) PURE; 00096 }; 00097 00098 #undef INTERFACE 00099 #define INTERFACE ID3DXFileEnumObject 00100 DECLARE_INTERFACE_( ID3DXFileEnumObject, IUnknown ) 00101 { 00102 STDMETHOD( QueryInterface )( THIS_ REFIID, LPVOID* ) PURE; 00103 STDMETHOD_( ULONG, AddRef )( THIS ) PURE; 00104 STDMETHOD_( ULONG, Release )( THIS ) PURE; 00105 STDMETHOD( GetFile )( THIS_ ID3DXFile** ) PURE; 00106 STDMETHOD( GetChildren )( THIS_ SIZE_T* ) PURE; 00107 STDMETHOD( GetChild )( THIS_ SIZE_T, ID3DXFileData** ) PURE; 00108 STDMETHOD( GetDataObjectById )( THIS_ REFGUID, ID3DXFileData** ) PURE; 00109 STDMETHOD( GetDataObjectByName )( THIS_ LPCSTR, ID3DXFileData** ) PURE; 00110 }; 00111 00112 00113 #undef INTERFACE 00114 #define INTERFACE ID3DXFileData 00115 00116 DECLARE_INTERFACE_( ID3DXFileData, IUnknown ) 00117 { 00118 STDMETHOD( QueryInterface )( THIS_ REFIID, LPVOID* ) PURE; 00119 STDMETHOD_( ULONG, AddRef )( THIS ) PURE; 00120 STDMETHOD_( ULONG, Release )( THIS ) PURE; 00121 STDMETHOD( GetEnum )( THIS_ ID3DXFileEnumObject** ) PURE; 00122 STDMETHOD( GetName )( THIS_ LPSTR, SIZE_T* ) PURE; 00123 STDMETHOD( GetId )( THIS_ LPGUID ) PURE; 00124 STDMETHOD( Lock )( THIS_ SIZE_T*, LPCVOID* ) PURE; 00125 STDMETHOD( Unlock )( THIS ) PURE; 00126 STDMETHOD( GetType )( THIS_ GUID* ) PURE; 00127 STDMETHOD_( BOOL, IsReference )( THIS ) PURE; 00128 STDMETHOD( GetChildren )( THIS_ SIZE_T* ) PURE; 00129 STDMETHOD( GetChild )( THIS_ SIZE_T, ID3DXFileData** ) PURE; 00130 }; 00131 00132 #undef INTERFACE 00133 #define INTERFACE ID3DXFileSaveData 00134 DECLARE_INTERFACE_( ID3DXFileSaveData, IUnknown ) 00135 { 00136 STDMETHOD( QueryInterface )( THIS_ REFIID, LPVOID* ) PURE; 00137 STDMETHOD_( ULONG, AddRef )( THIS ) PURE; 00138 STDMETHOD_( ULONG, Release )( THIS ) PURE; 00139 STDMETHOD( GetSave )( THIS_ ID3DXFileSaveObject** ) PURE; 00140 STDMETHOD( GetName )( THIS_ LPSTR, SIZE_T* ) PURE; 00141 STDMETHOD( GetId )( THIS_ LPGUID ) PURE; 00142 STDMETHOD( GetType )( THIS_ GUID* ) PURE; 00143 STDMETHOD( AddDataObject )( THIS_ REFGUID, LPCSTR, CONST GUID*, SIZE_T, LPCVOID, ID3DXFileSaveData** ) PURE; 00144 STDMETHOD( AddDataReference )( THIS_ LPCSTR, CONST GUID* ) PURE; 00145 }; 00146 00147 #undef INTERFACE 00148 #define INTERFACE ID3DXFileSaveObject 00149 DECLARE_INTERFACE_( ID3DXFileSaveObject, IUnknown ) 00150 { 00151 STDMETHOD( QueryInterface )( THIS_ REFIID, LPVOID* ) PURE; 00152 STDMETHOD_( ULONG, AddRef )( THIS ) PURE; 00153 STDMETHOD_( ULONG, Release )( THIS ) PURE; 00154 STDMETHOD( GetFile )( THIS_ ID3DXFile** ) PURE; 00155 STDMETHOD( AddDataObject )( THIS_ REFGUID, LPCSTR, CONST GUID*, SIZE_T, LPCVOID, ID3DXFileSaveData** ) PURE; 00156 STDMETHOD( Save )( THIS ) PURE; 00157 }; 00158 00159 #ifndef WIN_TYPES 00160 #define WIN_TYPES(itype, ptype) typedef interface itype *LP##ptype, **LPLP##ptype 00161 #endif 00162 WIN_TYPES(ID3DXFile, D3DXFILE); 00163 WIN_TYPES(ID3DXFileEnumObject, D3DXFILEENUMOBJECT); 00164 WIN_TYPES(ID3DXFileSaveObject, D3DXFILESAVEOBJECT); 00165 WIN_TYPES(ID3DXFileData, D3DXFILEDATA); 00166 WIN_TYPES(ID3DXFileSaveData, D3DXFILESAVEDATA); 00167 #if defined( __cplusplus ) 00168 } 00169 #endif 00170 00171 #endif 00172 00173 Generated on Sat May 26 2012 04:29:16 for ReactOS by
1.7.6.1
|