1 /**********************************************************
2  * This file has been automatically created by "typemaker2"
3  * from the file "gwen_sar_fileheader.xml".
4  * Please do not edit this file, all changes will be lost.
5  * Better edit the mentioned source file instead.
6  **********************************************************/
7 
8 #ifndef GWEN_SAR_FILEHEADER_H
9 #define GWEN_SAR_FILEHEADER_H
10 
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 /** @page P_GWEN_SAR_FILEHEADER Structure GWEN_SAR_FILEHEADER
17 <p>This page describes the properties of GWEN_SAR_FILEHEADER.</p>
18 
19 
20 
21 <h1>GWEN_SAR_FILEHEADER</h1>
22 
23 
24 
25 @anchor GWEN_SAR_FILEHEADER_status
26 <h2>status</h2>
27 
28 <p>Set this property with @ref GWEN_SarFileHeader_SetStatus(), get it with @ref GWEN_SarFileHeader_GetStatus().</p>
29 
30 
31 @anchor GWEN_SAR_FILEHEADER_flags
32 <h2>flags</h2>
33 
34 <p>Set this property with @ref GWEN_SarFileHeader_SetFlags(), get it with @ref GWEN_SarFileHeader_GetFlags().</p>
35 
36 
37 @anchor GWEN_SAR_FILEHEADER_path
38 <h2>path</h2>
39 
40 <p>Set this property with @ref GWEN_SarFileHeader_SetPath(), get it with @ref GWEN_SarFileHeader_GetPath().</p>
41 
42 
43 @anchor GWEN_SAR_FILEHEADER_fileType
44 <h2>fileType</h2>
45 
46 <p>Set this property with @ref GWEN_SarFileHeader_SetFileType(), get it with @ref GWEN_SarFileHeader_GetFileType().</p>
47 
48 
49 @anchor GWEN_SAR_FILEHEADER_permissions
50 <h2>permissions</h2>
51 
52 <p>Set this property with @ref GWEN_SarFileHeader_SetPermissions(), get it with @ref GWEN_SarFileHeader_GetPermissions().</p>
53 
54 
55 @anchor GWEN_SAR_FILEHEADER_atime
56 <h2>atime</h2>
57 
58 <p>Set this property with @ref GWEN_SarFileHeader_SetAtime(), get it with @ref GWEN_SarFileHeader_GetAtime().</p>
59 
60 
61 @anchor GWEN_SAR_FILEHEADER_mtime
62 <h2>mtime</h2>
63 
64 <p>Set this property with @ref GWEN_SarFileHeader_SetMtime(), get it with @ref GWEN_SarFileHeader_GetMtime().</p>
65 
66 
67 @anchor GWEN_SAR_FILEHEADER_ctime
68 <h2>ctime</h2>
69 
70 <p>Set this property with @ref GWEN_SarFileHeader_SetCtime(), get it with @ref GWEN_SarFileHeader_GetCtime().</p>
71 
72 
73 @anchor GWEN_SAR_FILEHEADER_fileSize
74 <h2>fileSize</h2>
75 
76 <p>Set this property with @ref GWEN_SarFileHeader_SetFileSize(), get it with @ref GWEN_SarFileHeader_GetFileSize().</p>
77 
78 
79 @anchor GWEN_SAR_FILEHEADER_headerStartPos
80 <h2>headerStartPos</h2>
81 
82 <p>Set this property with @ref GWEN_SarFileHeader_SetHeaderStartPos(), get it with @ref GWEN_SarFileHeader_GetHeaderStartPos().</p>
83 
84 
85 @anchor GWEN_SAR_FILEHEADER_headerSize
86 <h2>headerSize</h2>
87 
88 <p>Set this property with @ref GWEN_SarFileHeader_SetHeaderSize(), get it with @ref GWEN_SarFileHeader_GetHeaderSize().</p>
89 
90 
91 @anchor GWEN_SAR_FILEHEADER_dataPos
92 <h2>dataPos</h2>
93 
94 <p>Set this property with @ref GWEN_SarFileHeader_SetDataPos(), get it with @ref GWEN_SarFileHeader_GetDataPos().</p>
95 
96 
97 @anchor GWEN_SAR_FILEHEADER_dataSize
98 <h2>dataSize</h2>
99 
100 <p>Set this property with @ref GWEN_SarFileHeader_SetDataSize(), get it with @ref GWEN_SarFileHeader_GetDataSize().</p>
101 
102 
103 @anchor GWEN_SAR_FILEHEADER_hashPos
104 <h2>hashPos</h2>
105 
106 <p>Set this property with @ref GWEN_SarFileHeader_SetHashPos(), get it with @ref GWEN_SarFileHeader_GetHashPos().</p>
107 
108 */
109 
110 /* define GWEN_SAR_FILEHEADER_FLAGS */
111 #define GWEN_SAR_FILEHEADER_FLAGS_SIGNED 0x00000001
112 
113 
114 /* needed system headers */
115 #include <gwenhywfar/types.h>
116 #include <gwenhywfar/list1.h>
117 #include <gwenhywfar/list2.h>
118 
119 /* pre-headers */
120 #include <gwenhywfar/syncio_file.h>
121 #include <gwenhywfar/gwentime.h>
122 
123 typedef struct GWEN_SAR_FILEHEADER GWEN_SAR_FILEHEADER;
124 GWEN_LIST_FUNCTION_LIB_DEFS(GWEN_SAR_FILEHEADER, GWEN_SarFileHeader, GWENHYWFAR_API)
125 GWEN_LIST2_FUNCTION_LIB_DEFS(GWEN_SAR_FILEHEADER, GWEN_SarFileHeader, GWENHYWFAR_API)
126 
127 
128 
129 typedef enum {
130   GWEN_SarFileHeader_FType_Unknown = -1,
131   GWEN_SarFileHeader_FType_None = 0,
132   GWEN_SarFileHeader_FType_File,
133   GWEN_SarFileHeader_FType_Dir,
134   GWEN_SarFileHeader_FType_SymLink
135 } GWEN_SAR_FILEHEADER_FTYPE;
136 
137 
138 typedef enum {
139   GWEN_SarFileHeader_Status_Unknown = -1,
140   GWEN_SarFileHeader_Status_Active = 0,
141   GWEN_SarFileHeader_Status_Deleted
142 } GWEN_SAR_FILEHEADER_STATUS;
143 
144 
145 /* post-headers */
146 
147 
148 GWENHYWFAR_API GWEN_SAR_FILEHEADER_FTYPE GWEN_SarFileHeader_FType_fromString(const char *p_s);
149 
150 GWENHYWFAR_API GWEN_SAR_FILEHEADER_STATUS GWEN_SarFileHeader_Status_fromString(const char *p_s);
151 
152 GWENHYWFAR_API const char *GWEN_SarFileHeader_FType_toString(GWEN_SAR_FILEHEADER_FTYPE p_i);
153 
154 GWENHYWFAR_API const char *GWEN_SarFileHeader_Status_toString(GWEN_SAR_FILEHEADER_STATUS p_i);
155 
156 /** Constructor. */
157 GWENHYWFAR_API GWEN_SAR_FILEHEADER *GWEN_SarFileHeader_new(void);
158 
159 /** Destructor. */
160 GWENHYWFAR_API void GWEN_SarFileHeader_free(GWEN_SAR_FILEHEADER *p_struct);
161 
162 GWENHYWFAR_API void GWEN_SarFileHeader_Attach(GWEN_SAR_FILEHEADER *p_struct);
163 
164 GWENHYWFAR_API GWEN_SAR_FILEHEADER *GWEN_SarFileHeader_dup(const GWEN_SAR_FILEHEADER *p_struct);
165 
166 GWENHYWFAR_API GWEN_SAR_FILEHEADER *GWEN_SarFileHeader_copy(GWEN_SAR_FILEHEADER *p_struct,
167                                                             const GWEN_SAR_FILEHEADER *p_src);
168 
169 /** Getter.
170  * Use this function to get the member "status" (see @ref GWEN_SAR_FILEHEADER_status)
171 */
172 GWENHYWFAR_API int GWEN_SarFileHeader_GetStatus(const GWEN_SAR_FILEHEADER *p_struct);
173 
174 /** Getter.
175  * Use this function to get the member "flags" (see @ref GWEN_SAR_FILEHEADER_flags)
176 */
177 GWENHYWFAR_API uint32_t GWEN_SarFileHeader_GetFlags(const GWEN_SAR_FILEHEADER *p_struct);
178 
179 /** Getter.
180  * Use this function to get the member "path" (see @ref GWEN_SAR_FILEHEADER_path)
181 */
182 GWENHYWFAR_API const char *GWEN_SarFileHeader_GetPath(const GWEN_SAR_FILEHEADER *p_struct);
183 
184 /** Getter.
185  * Use this function to get the member "fileType" (see @ref GWEN_SAR_FILEHEADER_fileType)
186 */
187 GWENHYWFAR_API int GWEN_SarFileHeader_GetFileType(const GWEN_SAR_FILEHEADER *p_struct);
188 
189 /** Getter.
190  * Use this function to get the member "permissions" (see @ref GWEN_SAR_FILEHEADER_permissions)
191 */
192 GWENHYWFAR_API uint32_t GWEN_SarFileHeader_GetPermissions(const GWEN_SAR_FILEHEADER *p_struct);
193 
194 /** Getter.
195  * Use this function to get the member "atime" (see @ref GWEN_SAR_FILEHEADER_atime)
196 */
197 GWENHYWFAR_API const GWEN_TIME *GWEN_SarFileHeader_GetAtime(const GWEN_SAR_FILEHEADER *p_struct);
198 
199 /** Getter.
200  * Use this function to get the member "mtime" (see @ref GWEN_SAR_FILEHEADER_mtime)
201 */
202 GWENHYWFAR_API const GWEN_TIME *GWEN_SarFileHeader_GetMtime(const GWEN_SAR_FILEHEADER *p_struct);
203 
204 /** Getter.
205  * Use this function to get the member "ctime" (see @ref GWEN_SAR_FILEHEADER_ctime)
206 */
207 GWENHYWFAR_API const GWEN_TIME *GWEN_SarFileHeader_GetCtime(const GWEN_SAR_FILEHEADER *p_struct);
208 
209 /** Getter.
210  * Use this function to get the member "fileSize" (see @ref GWEN_SAR_FILEHEADER_fileSize)
211 */
212 GWENHYWFAR_API uint64_t GWEN_SarFileHeader_GetFileSize(const GWEN_SAR_FILEHEADER *p_struct);
213 
214 /** Setter.
215  * Use this function to set the member "status" (see @ref GWEN_SAR_FILEHEADER_status)
216 */
217 GWENHYWFAR_API void GWEN_SarFileHeader_SetStatus(GWEN_SAR_FILEHEADER *p_struct, int p_src);
218 
219 /** Add flags.
220  * Use this function to add flags to the member "status"
221 */
222 GWENHYWFAR_API void GWEN_SarFileHeader_AddStatus(GWEN_SAR_FILEHEADER *p_struct, int p_src);
223 
224 /** Sub flags.
225  * Use this function to sub flags from the member "status"
226 */
227 GWENHYWFAR_API void GWEN_SarFileHeader_SubStatus(GWEN_SAR_FILEHEADER *p_struct, int p_src);
228 
229 /** Setter.
230  * Use this function to set the member "flags" (see @ref GWEN_SAR_FILEHEADER_flags)
231 */
232 GWENHYWFAR_API void GWEN_SarFileHeader_SetFlags(GWEN_SAR_FILEHEADER *p_struct, uint32_t p_src);
233 
234 /** Add flags.
235  * Use this function to add flags to the member "flags"
236 */
237 GWENHYWFAR_API void GWEN_SarFileHeader_AddFlags(GWEN_SAR_FILEHEADER *p_struct, uint32_t p_src);
238 
239 /** Sub flags.
240  * Use this function to sub flags from the member "flags"
241 */
242 GWENHYWFAR_API void GWEN_SarFileHeader_SubFlags(GWEN_SAR_FILEHEADER *p_struct, uint32_t p_src);
243 
244 /** Setter.
245  * Use this function to set the member "path" (see @ref GWEN_SAR_FILEHEADER_path)
246 */
247 GWENHYWFAR_API void GWEN_SarFileHeader_SetPath(GWEN_SAR_FILEHEADER *p_struct, const char *p_src);
248 
249 /** Setter.
250  * Use this function to set the member "fileType" (see @ref GWEN_SAR_FILEHEADER_fileType)
251 */
252 GWENHYWFAR_API void GWEN_SarFileHeader_SetFileType(GWEN_SAR_FILEHEADER *p_struct, int p_src);
253 
254 /** Setter.
255  * Use this function to set the member "permissions" (see @ref GWEN_SAR_FILEHEADER_permissions)
256 */
257 GWENHYWFAR_API void GWEN_SarFileHeader_SetPermissions(GWEN_SAR_FILEHEADER *p_struct, uint32_t p_src);
258 
259 /** Add flags.
260  * Use this function to add flags to the member "permissions"
261 */
262 GWENHYWFAR_API void GWEN_SarFileHeader_AddPermissions(GWEN_SAR_FILEHEADER *p_struct, uint32_t p_src);
263 
264 /** Sub flags.
265  * Use this function to sub flags from the member "permissions"
266 */
267 GWENHYWFAR_API void GWEN_SarFileHeader_SubPermissions(GWEN_SAR_FILEHEADER *p_struct, uint32_t p_src);
268 
269 /** Setter.
270  * Use this function to set the member "atime" (see @ref GWEN_SAR_FILEHEADER_atime)
271 */
272 GWENHYWFAR_API void GWEN_SarFileHeader_SetAtime(GWEN_SAR_FILEHEADER *p_struct, GWEN_TIME *p_src);
273 
274 /** Setter.
275  * Use this function to set the member "mtime" (see @ref GWEN_SAR_FILEHEADER_mtime)
276 */
277 GWENHYWFAR_API void GWEN_SarFileHeader_SetMtime(GWEN_SAR_FILEHEADER *p_struct, GWEN_TIME *p_src);
278 
279 /** Setter.
280  * Use this function to set the member "ctime" (see @ref GWEN_SAR_FILEHEADER_ctime)
281 */
282 GWENHYWFAR_API void GWEN_SarFileHeader_SetCtime(GWEN_SAR_FILEHEADER *p_struct, GWEN_TIME *p_src);
283 
284 /** Setter.
285  * Use this function to set the member "fileSize" (see @ref GWEN_SAR_FILEHEADER_fileSize)
286 */
287 GWENHYWFAR_API void GWEN_SarFileHeader_SetFileSize(GWEN_SAR_FILEHEADER *p_struct, uint64_t p_src);
288 
289 /* list1 functions */
290 GWENHYWFAR_API GWEN_SAR_FILEHEADER_LIST *GWEN_SarFileHeader_List_dup(const GWEN_SAR_FILEHEADER_LIST *p_src);
291 
292 /* end-headers */
293 
294 
295 #ifdef __cplusplus
296 }
297 #endif
298 
299 #endif
300 
301