ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

d3dx9xof.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 doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.