OSDN Git Service

05cd707fea6dea7ee2bfb84f795df86389778279
[eos/optional.git] / doc / Objects / dmFile.html
1 <HR>
2 <A NAME="Information">
3 <H2>Information from source codes</H2>
4 </A>
5 <PRE>
6 </PRE>
7 <HR>
8 <A NAME="include">
9 <H2>dmFile.h</H2>
10 </A>
11 <PRE>
12 /*
13 # dmFile.h : $Revision$  
14 # $Date$ 
15 # Created by $Author$
16 # Usage : dmFile.h 
17 # Attention
18 #   $Loccker$
19 #       $State$ 
20 #
21 */
22 /* $Log$ */
23 #ifndef DMFILE_H 
24 #define DMFILE_H 
25
26 #include <stdio.h>
27
28 /* constant begin */
29
30
31 /* constant end */
32
33 /* struct begin */
34
35 typedef __int64_t dmFileInteger8; 
36 typedef __int32_t dmFileInteger4; 
37 typedef __int16_t dmFileInteger2; 
38 typedef __int8_t  dmFileInteger1; 
39
40 typedef enum dmFileTagDataType {
41         dmFileTagDataTypeShort=2,
42         dmFileTagDataTypeLong =3,
43         dmFileTagDataTypeUShort =4,
44 } dmFileTagDataType;
45
46 typedef struct dm3FileHeader {
47         dmFileInteger4 version;
48         dmFileInteger4 rootLength;
49         dmFileInteger4 byteOrder;
50 } dm3FileHeader;
51
52 typedef struct dm4FileHeader {
53         dmFileInteger4 version;
54         dmFileInteger8 rootLength;
55         dmFileInteger4 byteOrder;
56 } dm4FileHeader;
57
58 typedef struct dm3FileTagDirectrory {
59         dmFileInteger1 tagID;
60         dmFileInteger2 tagNameLength; // Bytes
61         char*          tagName;
62         dmFileInteger8 tagDataSize;   // Bytes
63 } dm3FileTagDirectrory;
64
65 typedef struct dm4FileTagDirectrory {
66         dmFileInteger1 tagID;
67         dmFileInteger2 tagNameLength; // Bytes
68         char*          tagName;
69         dmFileInteger8 tagDataSize;   // Bytes
70 } dm4FileTagDirectrory;
71
72 typedef struct dm3FileRootTagDirectory {
73         dmFileInteger1 sortf;
74         dmFileInteger1 closef;
75         dmFileInteger4 numberOfTags;
76 } dm3FileRootTagDirectory;
77
78 typedef struct dm4FileRootTagDirectory {
79         dmFileInteger1 sortf;
80         dmFileInteger1 closef;
81         dmFileInteger8 numberOfTags;
82 } dm4FileRootTagDirectory;
83
84 typedef struct dmFile {
85         // Header
86         dmFileInteger4 version;
87         dm3FileHeader Header3;
88         dm4FileHeader Header4;
89         // Root Tag
90         dm3FileRootTagDirectory RootTag3;
91         dm4FileRootTagDirectory RootTag4;
92
93         dmFileInteger8 Tail;
94 } dmFile;
95
96 /* struct end */
97
98 #ifdef __cplusplus
99 extern "C" {
100 #endif
101
102 /* prototype begin */
103
104 // in dfFileInfo.c
105 extern void dmFileInfo(FILE* fpt, dmFile dm, int mode);
106
107 // in dmFileRead.c
108 extern void dmFileRead(FILE* fpt, dmFile* dm, char* message, int mode);
109
110
111 /* prototype end */
112
113 #ifdef __cplusplus
114 };
115 #endif
116
117 #endif  /* DMFILE_H */ 
118 </PRE>