33 #include "../my_config.h"
49 const U_32 SAUV_MAGIC_NUMBER = 123;
51 typedef U_32 magic_number;
55 flag_type_terminal =
'T',
56 flag_type_non_terminal =
'N',
57 flag_type_located_at_end_of_slice =
'E'
79 const struct header & operator = (
const header & ref) { copy_from(ref);
return *
this; };
97 static U_I
min_size() {
return sizeof(magic_number) +
sizeof(label) + 2*
sizeof(char); };
102 magic_number & get_set_magic() {
return magic; };
103 label & get_set_internal_name() {
return internal_name; };
104 char & get_set_flag() {
return flag; };
105 label & get_set_data_name() {
return data_name; };
107 bool get_first_slice_size(infinint & size);
108 void set_first_slice_size(
const infinint & size);
109 void unset_first_slice_size() {
if(first_size != NULL) {
delete first_size; first_size = NULL; } };
111 bool get_slice_size(infinint & size);
112 void set_slice_size(
const infinint & size);
113 void unset_slice_size() {
if(slice_size != NULL) {
delete slice_size; slice_size = NULL; } };
115 bool is_old_header()
const {
return old_header; };
122 infinint *first_size;
123 infinint *slice_size;
127 void copy_from(
const header & ref);
128 void clear_pointers();
129 void fill_from(user_interaction & ui,
const tlv_list & list);
130 tlv_list build_tlv_list(user_interaction & ui)
const;