]> gitweb.factorcode.org Git - factor.git/blob - basis/windows/directx/dxfile/dxfile.factor
use radix literals
[factor.git] / basis / windows / directx / dxfile / dxfile.factor
1 USING: alien.syntax alien.c-types classes.struct windows.com
2 windows.com.syntax windows.kernel32 windows.ole32 windows.types ;
3 IN: windows.directx.dxfile
4
5 LIBRARY: d3dxof
6
7 TYPEDEF: DWORD DXFILEFORMAT
8
9 CONSTANT: DXFILEFORMAT_BINARY     0
10 CONSTANT: DXFILEFORMAT_TEXT       1
11 CONSTANT: DXFILEFORMAT_COMPRESSED 2
12
13 TYPEDEF: DWORD DXFILELOADOPTIONS
14
15 CONSTANT: DXFILELOAD_FROMFILE     0
16 CONSTANT: DXFILELOAD_FROMRESOURCE 1
17 CONSTANT: DXFILELOAD_FROMMEMORY   2
18 CONSTANT: DXFILELOAD_FROMSTREAM   4
19 CONSTANT: DXFILELOAD_FROMURL      8
20
21 STRUCT: DXFILELOADRESOURCE
22     { hModule HMODULE }
23     { lpName  LPCTSTR }
24     { lpType  LPCTSTR } ;
25 TYPEDEF: DXFILELOADRESOURCE* LPDXFILELOADRESOURCE
26
27 STRUCT: DXFILELOADMEMORY
28     { lpMemory LPVOID }
29     { dSize    DWORD  } ;
30 TYPEDEF: DXFILELOADMEMORY* LPDXFILELOADMEMORY
31
32 C-TYPE: IDirectXFile
33 TYPEDEF: IDirectXFile* LPDIRECTXFILE
34 TYPEDEF: IDirectXFile** LPLPDIRECTXFILE
35 C-TYPE: IDirectXFileEnumObject
36 TYPEDEF: IDirectXFileEnumObject* LPDIRECTXFILEENUMOBJECT
37 TYPEDEF: IDirectXFileEnumObject** LPLPDIRECTXFILEENUMOBJECT
38 C-TYPE: IDirectXFileSaveObject
39 TYPEDEF: IDirectXFileSaveObject* LPDIRECTXFILESAVEOBJECT
40 TYPEDEF: IDirectXFileSaveObject** LPLPDIRECTXFILESAVEOBJECT
41 C-TYPE: IDirectXFileObject
42 TYPEDEF: IDirectXFileObject* LPDIRECTXFILEOBJECT
43 TYPEDEF: IDirectXFileObject** LPLPDIRECTXFILEOBJECT
44 C-TYPE: IDirectXFileData
45 TYPEDEF: IDirectXFileData* LPDIRECTXFILEDATA
46 TYPEDEF: IDirectXFileData** LPLPDIRECTXFILEDATA
47 C-TYPE: IDirectXFileDataReference
48 TYPEDEF: IDirectXFileDataReference* LPDIRECTXFILEDATAREFERENCE
49 TYPEDEF: IDirectXFileDataReference** LPLPDIRECTXFILEDATAREFERENCE
50 C-TYPE: IDirectXFileBinary
51 TYPEDEF: IDirectXFileBinary* LPDIRECTXFILEBINARY
52 TYPEDEF: IDirectXFileBinary** LPLPDIRECTXFILEBINARY
53
54 FUNCTION: HRESULT DirectXFileCreate ( LPDIRECTXFILE* lplpDirectXFile ) ;
55
56 COM-INTERFACE: IDirectXFile IUnknown {3d82ab40-62da-11cf-ab39-0020af71e433}
57     HRESULT CreateEnumObject ( LPVOID v, DXFILELOADOPTIONS y,
58                                LPDIRECTXFILEENUMOBJECT* z )
59     HRESULT CreateSaveObject ( LPCSTR v, DXFILEFORMAT y,
60                                  LPDIRECTXFILESAVEOBJECT* z )
61     HRESULT RegisterTemplates ( LPVOID x, DWORD y ) ;
62
63 COM-INTERFACE: IDirectXFileEnumObject IUnknown {3d82ab41-62da-11cf-ab39-0020af71e433}
64     HRESULT GetNextDataObject ( LPDIRECTXFILEDATA* x )
65     HRESULT GetDataObjectById ( REFGUID x, LPDIRECTXFILEDATA* y )
66     HRESULT GetDataObjectByName ( LPCSTR x, LPDIRECTXFILEDATA* y ) ;
67
68 COM-INTERFACE: IDirectXFileSaveObject IUnknown {3d82ab42-62da-11cf-ab39-0020af71e433}
69     HRESULT SaveTemplates ( DWORD x, GUID** y )
70     HRESULT CreateDataObject ( REFGUID x, LPCSTR y, GUID* z,
71                                DWORD a, LPVOID b, LPDIRECTXFILEDATA* c )
72     HRESULT SaveData ( LPDIRECTXFILEDATA x ) ;
73
74 COM-INTERFACE: IDirectXFileObject IUnknown {3d82ab43-62da-11cf-ab39-0020af71e433}
75     HRESULT GetName ( LPSTR x, LPDWORD y )
76     HRESULT GetId ( LPGUID y ) ;
77
78 COM-INTERFACE: IDirectXFileData IDirectXFileObject {3d82ab44-62da-11cf-ab39-0020af71e433}
79     HRESULT GetData          ( LPCSTR x, DWORD* y, void** z )
80     HRESULT GetType          ( GUID** x )
81     HRESULT GetNextObject    ( LPDIRECTXFILEOBJECT* x )
82     HRESULT AddDataObject    ( LPDIRECTXFILEDATA y )
83     HRESULT AddDataReference ( LPCSTR x, GUID* y )
84     HRESULT AddBinaryObject  ( LPCSTR x, GUID* y, LPCSTR z, LPVOID a, DWORD b ) ;
85
86 COM-INTERFACE: IDirectXFileDataReference IDirectXFileObject {3d82ab45-62da-11cf-ab39-0020af71e433}
87     HRESULT Resolve ( LPDIRECTXFILEDATA* x ) ;
88
89 COM-INTERFACE: IDirectXFileBinary IDirectXFileObject {3d82ab46-62da-11cf-ab39-0020af71e433}
90     HRESULT GetSize      ( DWORD* x )
91     HRESULT GetMimeType  ( LPCSTR* x )
92     HRESULT Read         ( LPVOID x, DWORD y, LPDWORD z ) ;
93
94 CONSTANT: DXFILE_OK   0
95                                
96 CONSTANT: DXFILEERR_BADOBJECT                 0x88760352
97 CONSTANT: DXFILEERR_BADVALUE                  0x88760353
98 CONSTANT: DXFILEERR_BADTYPE                   0x88760354
99 CONSTANT: DXFILEERR_BADSTREAMHANDLE           0x88760355
100 CONSTANT: DXFILEERR_BADALLOC                  0x88760356
101 CONSTANT: DXFILEERR_NOTFOUND                  0x88760357
102 CONSTANT: DXFILEERR_NOTDONEYET                0x88760358
103 CONSTANT: DXFILEERR_FILENOTFOUND              0x88760359
104 CONSTANT: DXFILEERR_RESOURCENOTFOUND          0x8876035A
105 CONSTANT: DXFILEERR_URLNOTFOUND               0x8876035B
106 CONSTANT: DXFILEERR_BADRESOURCE               0x8876035C
107 CONSTANT: DXFILEERR_BADFILETYPE               0x8876035D
108 CONSTANT: DXFILEERR_BADFILEVERSION            0x8876035E
109 CONSTANT: DXFILEERR_BADFILEFLOATSIZE          0x8876035F
110 CONSTANT: DXFILEERR_BADFILECOMPRESSIONTYPE    0x88760360
111 CONSTANT: DXFILEERR_BADFILE                   0x88760361
112 CONSTANT: DXFILEERR_PARSEERROR                0x88760362
113 CONSTANT: DXFILEERR_NOTEMPLATE                0x88760363
114 CONSTANT: DXFILEERR_BADARRAYSIZE              0x88760364
115 CONSTANT: DXFILEERR_BADDATAREFERENCE          0x88760365
116 CONSTANT: DXFILEERR_INTERNALERROR             0x88760366
117 CONSTANT: DXFILEERR_NOMOREOBJECTS             0x88760367
118 CONSTANT: DXFILEERR_BADINTRINSICS             0x88760368
119 CONSTANT: DXFILEERR_NOMORESTREAMHANDLES       0x88760369
120 CONSTANT: DXFILEERR_NOMOREDATA                0x8876036A
121 CONSTANT: DXFILEERR_BADCACHEFILE              0x8876036B
122 CONSTANT: DXFILEERR_NOINTERNET                0x8876036C