Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
XFileStructs.h
Go to the documentation of this file.
1 // XFileStructs.h
3 //
4 //
6 
7 #ifndef _XFILESTRUCTS_H
8 #define _XFILESTRUCTS_H
9 
10 #define XOFFILE_FORMAT_MAGIC \
11  ((long)'x' + ((long)'o' << 8) + ((long)'f' << 16) + ((long)' ' << 24))
12 
13 #define XOFFILE_FORMAT_VERSION03 \
14  ((long)'0' + ((long)'3' << 8))
15 
16 #define XOFFILE_FORMAT_VERSION02 \
17  ((long)'0' + ((long)'3' << 8))
18 
19 #define XOFFILE_FORMAT_BINARY \
20  ((long)'b' + ((long)'i' << 8) + ((long)'n' << 16) + ((long)' ' << 24))
21 
22 #define XOFFILE_FORMAT_TEXT \
23  ((long)'t' + ((long)'x' << 8) + ((long)'t' << 16) + ((long)' ' << 24))
24 
25 #define XOFFILE_FORMAT_COMPRESSED \
26  ((long)'c' + ((long)'m' << 8) + ((long)'p' << 16) + ((long)' ' << 24))
27 
28 #define XOFFILE_FORMAT_FLOAT_BITS_32 \
29  ((long)'0' + ((long)'0' << 8) + ((long)'3' << 16) + ((long)'2' << 24))
30 
31 #define XOFFILE_FORMAT_FLOAT_BITS_64 \
32  ((long)'0' + ((long)'0' << 8) + ((long)'6' << 16) + ((long)'4' << 24))
33 
34 
35 struct XFileHeader {
36  unsigned long Magic;
37  unsigned short Major_Version;
38  unsigned short Minor_Version;
39  unsigned long Format;
40  unsigned long Float_Size;
41 };
42 
43 #define X_NAME 1
44 #define X_STRING 2
45 #define X_INTEGER 3
46 #define X_GUID 5
47 #define X_INTEGER_LIST 6
48 #define X_FLOAT_LIST 7
49 
50 #define X_OBRACE 10
51 #define X_EBRACE 11
52 #define X_OPAREN 12
53 #define X_CPAREN 13
54 #define X_OBRACKET 14
55 #define X_CBRACKET 15
56 #define X_OANGLE 16
57 #define X_CANGLE 17
58 #define X_DOT 18
59 #define X_COMMA 19
60 #define X_SEMICOLON 20
61 #define X_TOKEN_TEMPLATE 31
62 #define X_WORD 40
63 #define X_DWORD 41
64 #define X_FLOAT 42
65 #define X_DOUBLE 43
66 #define X_CHAR 44
67 #define X_UCHAR 45
68 #define X_SWORD 46
69 #define X_SDWORD 47
70 #define X_VOID 48
71 #define X_LPSTR 49
72 #define X_UNICODE 50
73 #define X_CSTRING 51
74 #define X_ARRAY 52
75 
76 //Personal tokens
77 #define X_ERROR -1
78 #define X_TEMPLATE 60
79 #define X_HEADER 61
80 #define X_FRAME 62
81 #define X_FRAMETRANSFORMMATRIX 63
82 #define X_MESH 64
83 #define X_MESHTEXTURECOORDS 65
84 #define X_MESHMATERIALLIST 66
85 #define X_MATERIAL 67
86 #define X_SKINMESHHEADER 68
87 #define X_SKINWEIGHTS 69
88 #define X_TEXTUREFILENAME 70
89 #define X_MESHNORMALS 71
90 #define X_ANIMATIONSET 72
91 #define X_ANIMATION 73
92 #define X_ANIMATIONKEY 74
93 
94 #define X_COMMENT 254
95 #define X_UNKNOWN 255 //unknown block
96 
97 
98 
99 #endif
Definition: XFileStructs.h:35
unsigned long Format
Definition: XFileStructs.h:39
unsigned long Float_Size
Definition: XFileStructs.h:40
unsigned short Major_Version
Definition: XFileStructs.h:37
unsigned long Magic
Definition: XFileStructs.h:36
unsigned short Minor_Version
Definition: XFileStructs.h:38