;--- include file created by h2incx v0.96, copyright 2005 japheth
;--- source file: d:\ddraw\include\d3dx9xof.h, last modified: 12/1/2004 15:7
	include d3dx9.inc
if  NOT defined(__D3DX9XOF_H__)
__D3DX9XOF_H__	EQU	<>

D3DXF_FILEFORMAT  typedef DWORD
D3DXF_FILEFORMAT_BINARY	EQU	0
D3DXF_FILEFORMAT_TEXT	EQU	1
D3DXF_FILEFORMAT_COMPRESSED	EQU	2
D3DXF_FILESAVEOPTIONS  typedef DWORD
D3DXF_FILESAVE_TOFILE	EQU	00h
D3DXF_FILESAVE_TOWFILE	EQU	01h
D3DXF_FILELOADOPTIONS  typedef DWORD
D3DXF_FILELOAD_FROMFILE	EQU	00h
D3DXF_FILELOAD_FROMWFILE	EQU	01h
D3DXF_FILELOAD_FROMRESOURCE	EQU	02h
D3DXF_FILELOAD_FROMMEMORY	EQU	03h
D3DXF_FILELOADRESOURCE	struct
hModule	HMODULE	?
lpName	LPSTR	?
lpType	LPSTR	?
D3DXF_FILELOADRESOURCE	ends

D3DXF_FILELOADMEMORY	struct
lpMemory	LPCVOID	?
dSize	DWORD	?
D3DXF_FILELOADMEMORY	ends

if defined(_WIN32) AND  NOT defined(_NO_COM)
DEFINE_GUID(IID_ID3DXFile,0cef08cf9h,7b4fh,4429h,96h,24h,2ah,69h,0ah,93h,32h,01h)
DEFINE_GUID(IID_ID3DXFileSaveObject,0cef08cfah,7b4fh,4429h,96h,24h,2ah,69h,0ah,93h,32h,01h)
DEFINE_GUID(IID_ID3DXFileSaveData,0cef08cfbh,7b4fh,4429h,96h,24h,2ah,69h,0ah,93h,32h,01h)
DEFINE_GUID(IID_ID3DXFileEnumObject,0cef08cfch,7b4fh,4429h,96h,24h,2ah,69h,0ah,93h,32h,01h)
DEFINE_GUID(IID_ID3DXFileData,0cef08cfdh,7b4fh,4429h,96h,24h,2ah,69h,0ah,93h,32h,01h)
endif 
if defined(__cplusplus)
if  NOT defined(DECLSPEC_UUID)
if _MSC_VER ge 1100
DECLSPEC_UUID macro x
	exitm <__declspec ( uuid ( x ) ) >
	endm
else 
DECLSPEC_UUID macro x
	exitm <>
	endm
endif 
endif 
DECLSPEC_UUID("cef08cf9-7b4f-4429-9624-2a690a933201")
DECLSPEC_UUID("cef08cfa-7b4f-4429-9624-2a690a933201")
DECLSPEC_UUID("cef08cfb-7b4f-4429-9624-2a690a933201")
DECLSPEC_UUID("cef08cfc-7b4f-4429-9624-2a690a933201")
DECLSPEC_UUID("cef08cfd-7b4f-4429-9624-2a690a933201")

if 0;defined(_COM_SMARTPTR_TYPEDEF)
_COM_SMARTPTR_TYPEDEF proto  :ID3DXFile, :__uuidof
_COM_SMARTPTR_TYPEDEF proto  :ID3DXFileSaveObject, :__uuidof
_COM_SMARTPTR_TYPEDEF proto  :ID3DXFileSaveData, :__uuidof
_COM_SMARTPTR_TYPEDEF proto  :ID3DXFileEnumObject, :__uuidof
_COM_SMARTPTR_TYPEDEF proto  :ID3DXFileData, :__uuidof
endif 

endif 

;ID3DXFile typedef ID3DXFile
;ID3DXFileSaveObject typedef ID3DXFileSaveObject
;ID3DXFileSaveData typedef ID3DXFileSaveData
;ID3DXFileEnumObject typedef ID3DXFileEnumObject
;ID3DXFileData typedef ID3DXFileData

;#undef INTERFACE 
INTERFACE	EQU	<ID3DXFile>
DECLARE_INTERFACE_(ID3DXFile,IUnknown)
;{
STDMETHOD QueryInterface , :REFIID, :ptr LPVOID
STDMETHOD_ ULONG,AddRef 
STDMETHOD_ ULONG,Release 
STDMETHOD CreateEnumObject , :LPCVOID, :D3DXF_FILELOADOPTIONS
STDMETHOD CreateSaveObject , :LPCVOID, :D3DXF_FILESAVEOPTIONS
STDMETHOD RegisterTemplates , :LPCVOID, :DWORD
STDMETHOD RegisterEnumTemplates , :ptr ID3DXFileEnumObject
;}
DECLARE_INTERFACE__END

;#undef INTERFACE 
INTERFACE	EQU	<ID3DXFileSaveObject>
DECLARE_INTERFACE_(ID3DXFileSaveObject,IUnknown)
;{
STDMETHOD QueryInterface , :REFIID, :ptr LPVOID
STDMETHOD_ ULONG,AddRef 
STDMETHOD_ ULONG,Release 
STDMETHOD GetFile , :ptr ptr ID3DXFile
STDMETHOD AddDataObject , :REFGUID, :LPSTR, :ptr GUID
STDMETHOD Save 
;}
DECLARE_INTERFACE__END

;#undef INTERFACE 
INTERFACE	EQU	<ID3DXFileSaveData>
DECLARE_INTERFACE_(ID3DXFileSaveData,IUnknown)
;{
STDMETHOD QueryInterface , :REFIID, :ptr LPVOID
STDMETHOD_ ULONG,AddRef 
STDMETHOD_ ULONG,Release 
STDMETHOD GetSave , :ptr ptr ID3DXFileSaveObject
STDMETHOD GetName , :LPSTR, :ptr DWORD
STDMETHOD GetId , :LPGUID
STDMETHOD GetType , :ptr GUID
STDMETHOD AddDataObject , :REFGUID, :LPSTR, :ptr GUID
STDMETHOD AddDataReference , :LPSTR, :ptr GUID
;}
DECLARE_INTERFACE__END

;#undef INTERFACE 
INTERFACE	EQU	<ID3DXFileEnumObject>
DECLARE_INTERFACE_(ID3DXFileEnumObject,IUnknown)
;{
STDMETHOD QueryInterface , :REFIID, :ptr LPVOID
STDMETHOD_ ULONG,AddRef 
STDMETHOD_ ULONG,Release 
STDMETHOD GetFile , :ptr ptr ID3DXFile
STDMETHOD GetChildren , :ptr DWORD
STDMETHOD GetChild , :DWORD, :ptr ptr ID3DXFileData
STDMETHOD GetDataObjectById , :REFGUID, :ptr ptr ID3DXFileData
STDMETHOD GetDataObjectByName , :LPSTR, :ptr ptr ID3DXFileData
;}
DECLARE_INTERFACE__END

;#undef INTERFACE 
INTERFACE	EQU	<ID3DXFileData>
DECLARE_INTERFACE_(ID3DXFileData,IUnknown)
;{
STDMETHOD QueryInterface , :REFIID, :ptr LPVOID
STDMETHOD_ ULONG,AddRef 
STDMETHOD_ ULONG,Release 
STDMETHOD GetEnum , :ptr ptr ID3DXFileEnumObject
STDMETHOD GetName , :LPSTR, :ptr DWORD
STDMETHOD GetId , :LPGUID
STDMETHOD Lock_ , :ptr DWORD, :ptr LPCVOID
STDMETHOD Unlock 
STDMETHOD GetType , :ptr GUID
STDMETHOD_ BOOL,IsReference 
STDMETHOD GetChildren , :ptr DWORD
STDMETHOD GetChild , :DWORD, :ptr ptr ID3DXFileData
;}
DECLARE_INTERFACE__END

D3DXFileCreate proto stdcall  :ptr ptr ID3DXFile
_FACD3DXF	EQU	876h
D3DXFERR_BADOBJECT	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 900 )>
D3DXFERR_BADVALUE	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 901 )>
D3DXFERR_BADTYPE	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 902 )>
D3DXFERR_NOTFOUND	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 903 )>
D3DXFERR_NOTDONEYET	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 904 )>
D3DXFERR_FILENOTFOUND	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 905 )>
D3DXFERR_RESOURCENOTFOUND	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 906 )>
D3DXFERR_BADRESOURCE	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 907 )>
D3DXFERR_BADFILETYPE	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 908 )>
D3DXFERR_BADFILEVERSION	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 909 )>
D3DXFERR_BADFILEFLOATSIZE	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 910 )>
D3DXFERR_BADFILE	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 911 )>
D3DXFERR_PARSEERROR	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 912 )>
D3DXFERR_BADARRAYSIZE	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 913 )>
D3DXFERR_BADDATAREFERENCE	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 914 )>
D3DXFERR_NOMOREOBJECTS	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 915 )>
D3DXFERR_NOMOREDATA	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 916 )>
D3DXFERR_BADCACHEFILE	EQU	<MAKE_HRESULT ( 1 , _FACD3DXF , 917 )>

if 0
ifndef WIN_TYPES
WIN_TYPES macro itype,ptype
LP&ptype typedef ptr itype
	exitm <LPLP&ptype typedef ptr ptr itype>
	endm
endif 
WIN_TYPES(ID3DXFile,D3DXFILE)
WIN_TYPES(ID3DXFileEnumObject,D3DXFILEENUMOBJECT)
WIN_TYPES(ID3DXFileSaveObject,D3DXFILESAVEOBJECT)
WIN_TYPES(ID3DXFileData,D3DXFILEDATA)
WIN_TYPES(ID3DXFileSaveData,D3DXFILESAVEDATA)
else
LPD3DXFILE typedef ptr ID3DXFile
LPD3DXFILEENUMOBJECT typedef ptr ID3DXFileEnumObject
LPD3DXFILESAVEOBJECT typedef ptr ID3DXFileSaveObject
LPD3DXFILEDATA typedef ptr ID3DXFileData
LPD3DXFILESAVEDATA typedef ptr ID3DXFileSaveData
endif

endif 

;--- errors: 0
;--- end of file ---
