30 #include "../my_config.h" 47 const U_32 SAUV_MAGIC_NUMBER = 123;
49 typedef U_32 magic_number;
53 flag_type_terminal =
'T',
54 flag_type_non_terminal =
'N',
55 flag_type_located_at_end_of_slice =
'E' 75 const header & operator = (
const header & ref) { free_pointers(); copy_from(ref);
return *
this; };
76 ~
header() { free_pointers(); };
92 static U_I
min_size() {
return sizeof(magic_number) +
sizeof(label) + 2*
sizeof(char); };
97 magic_number & get_set_magic() {
return magic; };
98 label & get_set_internal_name() {
return internal_name; };
99 char & get_set_flag() {
return flag; };
100 label & get_set_data_name() {
return data_name; };
102 bool get_first_slice_size(
infinint & size)
const;
103 void set_first_slice_size(
const infinint & size);
104 void unset_first_slice_size() {
if(first_size !=
nullptr) {
delete first_size; first_size =
nullptr; } };
106 bool get_slice_size(
infinint & size)
const;
107 void set_slice_size(
const infinint & size);
108 void unset_slice_size() {
if(slice_size !=
nullptr) {
delete slice_size; slice_size =
nullptr; } };
110 bool is_old_header()
const {
return old_header; };
111 void set_format_07_compatibility() { old_header =
true; };
122 void copy_from(
const header & ref);
123 void free_pointers();
class generic_file is defined here as well as class fichierthe generic_file interface is widely used ...
define the datastructure "label" used to identify slice membership to an archive
This is a pure virtual class that is used by libdar when interaction with the user is required...
defines the interaction between libdar and the user.Three classes are defined
switch module to limitint (32 ou 64 bits integers) or infinint
this is the interface class from which all other data transfer classes inherit
this is the base class of object that can be allocated on a memory pool
List of Generic Type Length Value data structures.
the arbitrary large positive integer class
libdar namespace encapsulate all libdar symbols