// // This file is generated by fmtgen from "libaegis/ustate.def". // If you want to change the contents of this file // you need to edit libaegis/ustate.def // or you need to enhance fmtgen. // #ifndef LIBAEGIS_USTATE_H #define LIBAEGIS_USTATE_H #include #include #include #include #include class nstring; // forward #ifndef ustate_own_changes_list_DEF #define ustate_own_changes_list_DEF struct ustate_own_changes_list_ty { size_t length; size_t maximum; long *list; }; #endif // ustate_own_changes_list_DEF extern meta_type ustate_own_changes_list_type; ustate_own_changes_list_ty *ustate_own_changes_list_copy(ustate_own_changes_list_ty *); ustate_own_changes_list_ty *ustate_own_changes_list_clone(ustate_own_changes_list_ty *); void ustate_own_changes_list_write(const output::pointer &fp, const char *name, ustate_own_changes_list_ty *value); void ustate_own_changes_list_write_xml(const output::pointer &fp, const char *name, ustate_own_changes_list_ty *value); #ifdef DEBUG void ustate_own_changes_list_trace_real(const char *name, const ustate_own_changes_list_ty *value); #define ustate_own_changes_list_trace(x) ((void)(trace_pretest_ && (trace_where_, ustate_own_changes_list_trace_real(trace_stringize(x), x), 0))) #else #define ustate_own_changes_list_trace(x) #endif #ifndef ustate_own_DEF #define ustate_own_DEF #define ustate_own_project_name_mask ((unsigned long)0) #define ustate_own_changes_mask ((unsigned long)0) struct ustate_own_ty { long reference_count; unsigned long mask; string_ty *errpos; string_ty *project_name; ustate_own_changes_list_ty *changes; }; #endif // ustate_own_DEF extern meta_type ustate_own_type; void ustate_own_write(const output::pointer &fp, const char *name, ustate_own_ty *value); void ustate_own_write_xml(const output::pointer &fp, const char *name, ustate_own_ty *value); ustate_own_ty *ustate_own_copy(ustate_own_ty *); ustate_own_ty *ustate_own_clone(ustate_own_ty *); #ifdef DEBUG void ustate_own_trace_real(const char *name, const ustate_own_ty *value); #define ustate_own_trace(x) ((void)(trace_pretest_ && (trace_where_, ustate_own_trace_real(trace_stringize(x), x), 0))) #else #define ustate_own_trace(x) #endif #ifndef ustate_own_list_DEF #define ustate_own_list_DEF struct ustate_own_list_ty { size_t length; size_t maximum; ustate_own_ty **list; }; #endif // ustate_own_list_DEF extern meta_type ustate_own_list_type; ustate_own_list_ty *ustate_own_list_copy(ustate_own_list_ty *); ustate_own_list_ty *ustate_own_list_clone(ustate_own_list_ty *); void ustate_own_list_write(const output::pointer &fp, const char *name, ustate_own_list_ty *value); void ustate_own_list_write_xml(const output::pointer &fp, const char *name, ustate_own_list_ty *value); #ifdef DEBUG void ustate_own_list_trace_real(const char *name, const ustate_own_list_ty *value); #define ustate_own_list_trace(x) ((void)(trace_pretest_ && (trace_where_, ustate_own_list_trace_real(trace_stringize(x), x), 0))) #else #define ustate_own_list_trace(x) #endif #ifndef ustate_DEF #define ustate_DEF #define ustate_own_mask ((unsigned long)0) struct ustate_ty { long reference_count; unsigned long mask; string_ty *errpos; ustate_own_list_ty *own; }; #endif // ustate_DEF extern meta_type ustate_type; void ustate_write(const output::pointer &fp, ustate_ty *value); void ustate_write_xml(const output::pointer &fp, ustate_ty *value); ustate_ty *ustate_copy(ustate_ty *); ustate_ty *ustate_clone(ustate_ty *); #ifdef DEBUG void ustate_trace_real(const char *name, const ustate_ty *value); #define ustate_trace(x) ((void)(trace_pretest_ && (trace_where_, ustate_trace_real(trace_stringize(x), x), 0))) #else #define ustate_trace(x) #endif /** * The ustate_write_file function is used to * write ustate meta data to the named file. * * @param filename * The name of the file to be written. * @param value * The value of the meta-data to be written. * @param comp * true (non-zero) if data should be compressed. * @note * If any errors are encountered, this * function will not return. All errors * will print a fatal error message, and * exit with an exit status of 1. */ void ustate_write_file(string_ty *filename, ustate_ty *value, int comp); /** * The ustate_write_file function is used to * write ustate meta data to the named file. * * @param filnam * The name of the file to be written. * @param value * The value of the meta-data to be written. * @param comp * true if data should be compressed. * @note * If any errors are encountered, this * function will not return. All errors * will print a fatal error message, and * exit with an exit status of 1. */ void ustate_write_file(const nstring &filnam, ustate_ty *value, bool comp); /** * The ustate_read_file function is used to * read ustate meta data from the named file. * * @param filename * The name of the file to be read. * @returns * a pointer to a dynamically allocated * value read from the file. * @note * If any errors are encountered, this * function will not return. All errors * (including syntax errors) will print a * fatal error message, and exit with an * exit status of 1. */ ustate_ty *ustate_read_file(string_ty *filename); /** * The ustate_read_file function is used to * read ustate meta data from the named file. * * @param filename * The name of the file to be read. * @returns * a pointer to a dynamically allocated * value read from the file. * @note * If any errors are encountered, this * function will not return. All errors * (including syntax errors) will print a * fatal error message, and exit with an * exit status of 1. */ ustate_ty *ustate_read_file(const nstring &filename); void ustate__rpt_init(void); #endif // LIBAEGIS_USTATE_H