OSDN Git Service

strdup bug fixed:
[eos/hostdependX86LINUX64.git] / src / Objects / DataManip / dmFile / doc / 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 // Header
47 typedef struct dm3FileHeader {
48         dmFileInteger4 version;
49         dmFileInteger4 rootLength;
50         dmFileInteger4 byteOrder;
51 } dm3FileHeader;
52
53 typedef struct dm4FileHeader {
54         dmFileInteger4 version;
55         dmFileInteger8 rootLength;
56         dmFileInteger4 byteOrder;
57 } dm4FileHeader;
58
59 // Root Tag Directory
60 typedef struct dm3FileRootTagDirectory {
61         dmFileInteger1 sortf;
62         dmFileInteger1 closef;
63         dmFileInteger4 numberOfTags;
64 } dm3FileRootTagDirectory;
65
66 typedef struct dm4FileRootTagDirectory {
67         dmFileInteger1 sortf;
68         dmFileInteger1 closef;
69         dmFileInteger8 numberOfTags;
70 } dm4FileRootTagDirectory;
71
72 // Tag Directory
73 typedef struct dm3FileTagDirectrory {
74         dmFileInteger1 tagID;
75         dmFileInteger2 tagNameLength; // Bytes
76         char*          tagName;
77         dmFileInteger1 seperator[4];
78         dmFileInteger4 sizeDim; 
79         dmFileInteger4* dim; 
80 } dm3FileTagDirectrory;
81
82 typedef struct dm4FileTagDirectrory {
83         dmFileInteger1 tagID;
84         dmFileInteger2 tagNameLength; // Bytes
85         char*          tagName;
86 } dm4FileTagDirectrory;
87
88 typedef struct dmFile {
89         // Header
90         dmFileInteger4 version;
91         dm3FileHeader Header3;
92         dm4FileHeader Header4;
93         // Root Tag
94         dm3FileRootTagDirectory RootTag3;
95         dm4FileRootTagDirectory RootTag4;
96
97         dmFileInteger8 Tail;
98 } dmFile;
99
100 /* struct end */
101
102 #ifdef __cplusplus
103 extern "C" {
104 #endif
105
106 /* prototype begin */
107
108 // in dfFileInfo.c
109 extern void dmFileInfo(FILE* fpt, dmFile dm, int mode);
110
111 // in dmFileRead.c
112 extern void dmFileRead(FILE* fpt, dmFile* dm, char* message, int mode);
113
114
115 /* prototype end */
116
117 #ifdef __cplusplus
118 };
119 #endif
120
121 #endif  /* DMFILE_H */ 
122 </PRE>