Disk ARchive  2.4.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
Public Member Functions | Static Public Member Functions
libdar::header Class Reference

this class manages the header of each slice More...

#include <header.hpp>

List of all members.

Public Member Functions

 header (const header &ref)
struct headeroperator= (const header &ref)
void read (user_interaction &ui, generic_file &f, bool lax=false)
void write (user_interaction &, generic_file &f) const
void read (user_interaction &dialog, S_I fd, bool lax=false)
void write (user_interaction &dialog, S_I fd) 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

Static Public Member Functions

static U_I min_size ()
 minimal size of a header in an archive

Detailed Description

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. A new fields are easily identified by old implementations, and optional known fields can be recognized after those. This makes the header easier to extend by adding new fields, while letting a chance for the old implementation to use more recent archives the main use of TLV is to handle optional fields easily.

Definition at line 72 of file header.hpp.


Member Function Documentation

static U_I libdar::header::min_size ( )
inlinestatic

minimal size of a header in an archive

Returns:
min size of a header once stored in an archive
Note:
since release 2.4.0 the header used for each slice is exactly the same. before this release the header of the first slice might be bigger, it was known that the size of the other header was "min_size" this let dar be able to find the proper slice for a given position. For compatibility with older DAR format, it is thus important to not change the value returned by this class method. This call is only used when reading archive generated by old versions of dar < 2.4.0. (aka archive format <= 7)

Definition at line 98 of file header.hpp.


The documentation for this class was generated from the following file: