123 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			Factor
		
	
	
		
		
			
		
	
	
			123 lines
		
	
	
		
			5.3 KiB
		
	
	
	
		
			Factor
		
	
	
| 
								 | 
							
								USING: alien.syntax classes.struct windows.com
							 | 
						||
| 
								 | 
							
								windows.com.syntax windows.kernel32 windows.ole32 windows.types ;
							 | 
						||
| 
								 | 
							
								IN: windows.directx.dxfile
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								LIBRARY: d3dxof
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								TYPEDEF: DWORD DXFILEFORMAT
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEFORMAT_BINARY     0
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEFORMAT_TEXT       1
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEFORMAT_COMPRESSED 2
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								TYPEDEF: DWORD DXFILELOADOPTIONS
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILELOAD_FROMFILE     0
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILELOAD_FROMRESOURCE 1
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILELOAD_FROMMEMORY   2
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILELOAD_FROMSTREAM   4
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILELOAD_FROMURL      8
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								STRUCT: DXFILELOADRESOURCE
							 | 
						||
| 
								 | 
							
								    { hModule HMODULE }
							 | 
						||
| 
								 | 
							
								    { lpName  LPCTSTR }
							 | 
						||
| 
								 | 
							
								    { lpType  LPCTSTR } ;
							 | 
						||
| 
								 | 
							
								TYPEDEF: DXFILELOADRESOURCE* LPDXFILELOADRESOURCE
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								STRUCT: DXFILELOADMEMORY
							 | 
						||
| 
								 | 
							
								    { lpMemory LPVOID }
							 | 
						||
| 
								 | 
							
								    { dSize    DWORD  } ;
							 | 
						||
| 
								 | 
							
								TYPEDEF: DXFILELOADMEMORY* LPDXFILELOADMEMORY
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								C-TYPE: IDirectXFile
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFile* LPDIRECTXFILE
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFile** LPLPDIRECTXFILE
							 | 
						||
| 
								 | 
							
								C-TYPE: IDirectXFileEnumObject
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileEnumObject* LPDIRECTXFILEENUMOBJECT
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileEnumObject** LPLPDIRECTXFILEENUMOBJECT
							 | 
						||
| 
								 | 
							
								C-TYPE: IDirectXFileSaveObject
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileSaveObject* LPDIRECTXFILESAVEOBJECT
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileSaveObject** LPLPDIRECTXFILESAVEOBJECT
							 | 
						||
| 
								 | 
							
								C-TYPE: IDirectXFileObject
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileObject* LPDIRECTXFILEOBJECT
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileObject** LPLPDIRECTXFILEOBJECT
							 | 
						||
| 
								 | 
							
								C-TYPE: IDirectXFileData
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileData* LPDIRECTXFILEDATA
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileData** LPLPDIRECTXFILEDATA
							 | 
						||
| 
								 | 
							
								C-TYPE: IDirectXFileDataReference
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileDataReference* LPDIRECTXFILEDATAREFERENCE
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileDataReference** LPLPDIRECTXFILEDATAREFERENCE
							 | 
						||
| 
								 | 
							
								C-TYPE: IDirectXFileBinary
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileBinary* LPDIRECTXFILEBINARY
							 | 
						||
| 
								 | 
							
								TYPEDEF: IDirectXFileBinary** LPLPDIRECTXFILEBINARY
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								FUNCTION: HRESULT DirectXFileCreate ( LPDIRECTXFILE* lplpDirectXFile ) ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COM-INTERFACE: IDirectXFile IUnknown {3d82ab40-62da-11cf-ab39-0020af71e433}
							 | 
						||
| 
								 | 
							
								    HRESULT CreateEnumObject ( LPVOID v, DXFILELOADOPTIONS y,
							 | 
						||
| 
								 | 
							
								                               LPDIRECTXFILEENUMOBJECT* z )
							 | 
						||
| 
								 | 
							
								    HRESULT CreateSaveObject ( LPCSTR v, DXFILEFORMAT y,
							 | 
						||
| 
								 | 
							
								                                 LPDIRECTXFILESAVEOBJECT* z )
							 | 
						||
| 
								 | 
							
								    HRESULT RegisterTemplates ( LPVOID x, DWORD y ) ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COM-INTERFACE: IDirectXFileEnumObject IUnknown {3d82ab41-62da-11cf-ab39-0020af71e433}
							 | 
						||
| 
								 | 
							
								    HRESULT GetNextDataObject ( LPDIRECTXFILEDATA* x )
							 | 
						||
| 
								 | 
							
								    HRESULT GetDataObjectById ( REFGUID x, LPDIRECTXFILEDATA* y )
							 | 
						||
| 
								 | 
							
								    HRESULT GetDataObjectByName ( LPCSTR x, LPDIRECTXFILEDATA* y ) ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COM-INTERFACE: IDirectXFileSaveObject IUnknown {3d82ab42-62da-11cf-ab39-0020af71e433}
							 | 
						||
| 
								 | 
							
								    HRESULT SaveTemplates ( DWORD x, GUID** y )
							 | 
						||
| 
								 | 
							
								    HRESULT CreateDataObject ( REFGUID x, LPCSTR y, GUID* z,
							 | 
						||
| 
								 | 
							
								                               DWORD a, LPVOID b, LPDIRECTXFILEDATA* c )
							 | 
						||
| 
								 | 
							
								    HRESULT SaveData ( LPDIRECTXFILEDATA x ) ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COM-INTERFACE: IDirectXFileObject IUnknown {3d82ab43-62da-11cf-ab39-0020af71e433}
							 | 
						||
| 
								 | 
							
								    HRESULT GetName ( LPSTR x, LPDWORD y )
							 | 
						||
| 
								 | 
							
								    HRESULT GetId ( LPGUID y ) ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COM-INTERFACE: IDirectXFileData IDirectXFileObject {3d82ab44-62da-11cf-ab39-0020af71e433}
							 | 
						||
| 
								 | 
							
								    HRESULT GetData          ( LPCSTR x, DWORD* y, void** z )
							 | 
						||
| 
								 | 
							
								    HRESULT GetType          ( GUID** x )
							 | 
						||
| 
								 | 
							
								    HRESULT GetNextObject    ( LPDIRECTXFILEOBJECT* x )
							 | 
						||
| 
								 | 
							
								    HRESULT AddDataObject    ( LPDIRECTXFILEDATA y )
							 | 
						||
| 
								 | 
							
								    HRESULT AddDataReference ( LPCSTR x, GUID* y )
							 | 
						||
| 
								 | 
							
								    HRESULT AddBinaryObject  ( LPCSTR x, GUID* y, LPCSTR z, LPVOID a, DWORD b ) ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COM-INTERFACE: IDirectXFileDataReference IDirectXFileObject {3d82ab45-62da-11cf-ab39-0020af71e433}
							 | 
						||
| 
								 | 
							
								    HRESULT Resolve ( LPDIRECTXFILEDATA* x ) ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COM-INTERFACE: IDirectXFileBinary IDirectXFileObject {3d82ab46-62da-11cf-ab39-0020af71e433}
							 | 
						||
| 
								 | 
							
								    HRESULT GetSize      ( DWORD* x )
							 | 
						||
| 
								 | 
							
								    HRESULT GetMimeType  ( LPCSTR* x )
							 | 
						||
| 
								 | 
							
								    HRESULT Read         ( LPVOID x, DWORD y, LPDWORD z ) ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILE_OK   0
							 | 
						||
| 
								 | 
							
								                               
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADOBJECT                 HEX: 88760352
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADVALUE                  HEX: 88760353
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADTYPE                   HEX: 88760354
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADSTREAMHANDLE           HEX: 88760355
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADALLOC                  HEX: 88760356
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_NOTFOUND                  HEX: 88760357
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_NOTDONEYET                HEX: 88760358
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_FILENOTFOUND              HEX: 88760359
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_RESOURCENOTFOUND          HEX: 8876035A
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_URLNOTFOUND               HEX: 8876035B
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADRESOURCE               HEX: 8876035C
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADFILETYPE               HEX: 8876035D
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADFILEVERSION            HEX: 8876035E
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADFILEFLOATSIZE          HEX: 8876035F
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADFILECOMPRESSIONTYPE    HEX: 88760360
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADFILE                   HEX: 88760361
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_PARSEERROR                HEX: 88760362
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_NOTEMPLATE                HEX: 88760363
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADARRAYSIZE              HEX: 88760364
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADDATAREFERENCE          HEX: 88760365
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_INTERNALERROR             HEX: 88760366
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_NOMOREOBJECTS             HEX: 88760367
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADINTRINSICS             HEX: 88760368
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_NOMORESTREAMHANDLES       HEX: 88760369
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_NOMOREDATA                HEX: 8876036A
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_BADCACHEFILE              HEX: 8876036B
							 | 
						||
| 
								 | 
							
								CONSTANT: DXFILEERR_NOINTERNET                HEX: 8876036C
							 |