Disk ARchive 2.7.16
Full featured and portable backup and archiving tool
|
this class manages the header of each slice More...
#include <header.hpp>
Public Member Functions | |
header (const header &ref) | |
header (header &&ref) noexcept | |
header & | operator= (const header &ref) |
header & | operator= (header &&ref) noexcept |
void | read (user_interaction &ui, generic_file &f, bool lax=false) |
void | write (user_interaction &, generic_file &f) const |
magic_number & | get_set_magic () |
label & | get_set_internal_name () |
char & | get_set_flag () |
label & | get_set_data_name () |
bool | get_first_slice_size (infinint &size) const |
void | set_first_slice_size (const infinint &size) |
void | unset_first_slice_size () |
bool | get_slice_size (infinint &size) const |
void | set_slice_size (const infinint &size) |
void | unset_slice_size () |
bool | is_old_header () const |
void | set_format_07_compatibility () |
Static Public Member Functions | |
static U_I | min_size () |
minimal size of a header in an archive More... | |
Private Member Functions | |
void | nullifyptr () noexcept |
void | copy_from (const header &ref) |
void | move_from (header &&ref) noexcept |
void | free_pointers () |
void | fill_from (user_interaction &ui, const tlv_list &list) |
tlv_list | build_tlv_list (user_interaction &ui) const |
Private Attributes | |
magic_number | magic |
constant string for all Dar archives More... | |
label | internal_name |
constant string for all slices of a given archive (computed based on date and pid) More... | |
label | data_name |
constant string for a set of data (constant with dar_xform, used to link isolated catalogue to its original data) More... | |
char | flag |
whether slice is the last of the archive or not More... | |
infinint * | first_size |
size of the first slice More... | |
infinint * | slice_size |
size of slices (except first slice if specified else and last if not fulfilled) More... | |
bool | old_header |
true if the header has been read from an old archive (before release 2.4.0, format 07 and below) and if true when writing, create an old slice header (compatible with format 07). More... | |
this class manages the header of each slice
this class was a struct before release 2.4.0, now promoted to a class it hides the fields and uses TLV to store the fields in the archive. This makes the header easier to extend by adding new fields, while letting a chance for the old implementation to be able to use more recent archives the main use of TLV is to handle optional fields easily.
Definition at line 65 of file header.hpp.
|
inline |
Definition at line 71 of file header.hpp.
|
inlinenoexcept |
Definition at line 72 of file header.hpp.
|
inline |
Definition at line 75 of file header.hpp.
|
inline |
Definition at line 99 of file header.hpp.
|
inline |
Definition at line 98 of file header.hpp.
|
inline |
Definition at line 97 of file header.hpp.
|
inline |
Definition at line 96 of file header.hpp.
|
inline |
Definition at line 109 of file header.hpp.
|
inlinestatic |
minimal size of a header in an archive
Definition at line 91 of file header.hpp.
|
inlineprivatenoexcept |
Definition at line 121 of file header.hpp.
Definition at line 73 of file header.hpp.
Definition at line 74 of file header.hpp.
|
inline |
Definition at line 110 of file header.hpp.
|
inline |
Definition at line 103 of file header.hpp.
|
inline |
Definition at line 107 of file header.hpp.
|
private |
constant string for a set of data (constant with dar_xform, used to link isolated catalogue to its original data)
Definition at line 115 of file header.hpp.
|
private |
size of the first slice
Definition at line 117 of file header.hpp.
|
private |
whether slice is the last of the archive or not
Definition at line 116 of file header.hpp.
|
private |
constant string for all slices of a given archive (computed based on date and pid)
Definition at line 114 of file header.hpp.
|
private |
constant string for all Dar archives
Definition at line 113 of file header.hpp.
|
private |
true if the header has been read from an old archive (before release 2.4.0, format 07 and below) and if true when writing, create an old slice header (compatible with format 07).
Definition at line 119 of file header.hpp.
|
private |
size of slices (except first slice if specified else and last if not fulfilled)
Definition at line 118 of file header.hpp.