![]() |
Disk ARchive
2.6.11
Full featured and portable backup and archiving tool
|
the catalogue class which gather all objects contained in a give archive More...
#include <catalogue.hpp>
Inherits libdar::mem_ui.
Inherited by libdar::escape_catalogue.
Public Member Functions | |
| catalogue (const std::shared_ptr< user_interaction > &ui, const datetime &root_last_modif, const label &data_name) | |
| catalogue (const std::shared_ptr< user_interaction > &ui, const pile_descriptor &pdesc, const archive_version &reading_ver, compression default_algo, bool lax, const label &lax_layer1_data_name, bool only_detruit=false) | |
| catalogue (const catalogue &ref) | |
| catalogue (catalogue &&ref)=delete | |
| catalogue & | operator= (const catalogue &ref) |
| catalogue & | operator= (catalogue &&ref)=delete |
| virtual void | reset_read () const |
| virtual void | end_read () const |
| virtual void | skip_read_to_parent_dir () const |
| virtual bool | read (const cat_entree *&ref) const |
| virtual bool | read_if_present (std::string *name, const cat_nomme *&ref) const |
| void | remove_read_entry (std::string &name) |
| const cat_directory & | get_current_reading_dir () const |
| virtual void | tail_catalogue_to_current_read () |
| void | reset_sub_read (const path &sub) |
| bool | sub_read (user_interaction &ui, const cat_entree *&ref) |
| virtual bool | read_second_time_dir () const |
| void | reset_add () |
| virtual void | pre_add (const cat_entree *ref, const pile_descriptor *dest=nullptr) const |
| catalogue extension routines for escape sequence | |
| virtual void | pre_add_ea (const cat_entree *ref, const pile_descriptor *dest=nullptr) const |
| virtual void | pre_add_crc (const cat_entree *ref, const pile_descriptor *dest=nullptr) const |
| virtual void | pre_add_dirty (const pile_descriptor *dest=nullptr) const |
| virtual void | pre_add_ea_crc (const cat_entree *ref, const pile_descriptor *dest=nullptr) const |
| virtual void | pre_add_waste_mark (const pile_descriptor *dest=nullptr) const |
| virtual void | pre_add_failed_mark (const pile_descriptor *dest=nullptr) const |
| virtual void | pre_add_fsa (const cat_entree *ref, const pile_descriptor *dest=nullptr) const |
| virtual void | pre_add_fsa_crc (const cat_entree *ref, const pile_descriptor *dest=nullptr) const |
| virtual void | pre_add_delta_sig (const pile_descriptor *dest=nullptr) const |
| virtual escape * | get_escape_layer () const |
| virtual void | drop_escape_layer () |
| void | add (cat_entree *ref) |
| void | re_add_in (const std::string &subdirname) |
| void | re_add_in_replace (const cat_directory &dir) |
| void | add_in_current_read (cat_nomme *ref) |
| const cat_directory & | get_current_add_dir () const |
| void | reset_compare () const |
| bool | compare (const cat_entree *name, const cat_entree *&extracted) const |
| infinint | update_destroyed_with (const catalogue &ref) |
| add into "this" detruit object corresponding to object of ref absent in "this" More... | |
| void | update_absent_with (const catalogue &ref, infinint aborting_next_etoile) |
| copy from ref missing files in "this" and mark then as "not_saved" (no change since reference) More... | |
| void | drop_all_non_detruits () |
| remove/destroy from "this" all objects that are neither directory nor detruit objects | |
| bool | is_subset_of (const catalogue &ref) const |
| check whether all inode existing in the "this" and ref have the same attributes More... | |
| void | reset_dump () const |
| before dumping the catalogue, need to set all hardlinked inode they have not been saved once | |
| void | dump (const pile_descriptor &pdesc) const |
| write down the whole catalogue to file | |
| entree_stats | get_stats () const |
| bool | is_empty () const |
| whether the catalogue is empty or not | |
| const cat_directory * | get_contenu () const |
| const label & | get_data_name () const |
| void | set_data_name (const label &val) |
| datetime | get_root_dir_last_modif () const |
| void | launch_recursive_has_changed_update () const |
| recursive evaluation of directories that have changed (make the cat_directory::get_recurisve_has_changed() method of entry in this catalogue meaningful) | |
| void | set_all_mirage_s_inode_wrote_field_to (bool val) const |
| recursive setting of mirage inode_wrote flag | |
| datetime | get_root_mtime () const |
| void | reset_all () |
| reset all pointers to the root (a bit better than reset_add() + reset_read() + reset_compare() + reset_sub_read()) | |
| void | set_to_unsaved_data_and_FSA () |
| void | change_location (const pile_descriptor &pdesc) |
| change location where to find EA, FSA and DATA for all the objects of the catalogue | |
| void | transfer_delta_signatures (const pile_descriptor &destination, bool sequential_read, bool build, const mask &delta_mask, const infinint &delta_sig_min_size, const delta_sig_block_size &signature_block_size) |
| copy delta signatures to the given stack and update the cat_file objects accordingly More... | |
| void | drop_delta_signatures () |
| remove delta signature from the catalogue object as if they had never been calculated | |
Public Member Functions inherited from libdar::mem_ui | |
| mem_ui (const std::shared_ptr< user_interaction > &dialog) | |
| constructor More... | |
| mem_ui (const mem_ui &ref)=default | |
| the copy constructor More... | |
| mem_ui (mem_ui &&ref) noexcept=default | |
| the move constructor | |
| mem_ui & | operator= (const mem_ui &ref)=default |
| assignement operator More... | |
| mem_ui & | operator= (mem_ui &&ref) noexcept=default |
| move operator | |
| virtual | ~mem_ui () noexcept(false) |
| destructor More... | |
Protected Member Functions | |
| entree_stats & | access_stats () |
| void | copy_detruits_from (const catalogue &ref) |
| const cat_eod * | get_r_eod_address () const |
| void | swap_stuff (catalogue &ref) |
Protected Member Functions inherited from libdar::mem_ui | |
| user_interaction & | get_ui () const |
| get access to the user_interaction object More... | |
| std::shared_ptr< user_interaction > | get_pointer () const |
| get access to the shared_ptr pointing to the user_interaction | |
Private Member Functions | |
| void | partial_copy_from (const catalogue &ref) |
| void | detruire () |
Private Attributes | |
| cat_directory * | contenu |
| catalogue contents | |
| path | out_compare |
| stores the missing directory structure, when extracting | |
| cat_directory * | current_compare |
| points to the current directory when extracting | |
| cat_directory * | current_add |
| points to the directory where to add the next file with add_file; | |
| cat_directory * | current_read |
| points to the directory where the next item will be read | |
| path * | sub_tree |
| path to sub_tree | |
| signed int | sub_count |
| count the depth in of read routine in the sub_tree | |
| entree_stats | stats |
| statistics catalogue contents | |
| label | ref_data_name |
| name of the archive where is located the data | |
Static Private Attributes | |
| static const cat_eod | r_eod |
| needed to return eod reference, without taking risk of saturating memory | |
| static const U_I | CAT_CRC_SIZE |
the catalogue class which gather all objects contained in a give archive
Definition at line 60 of file catalogue.hpp.
| bool libdar::catalogue::is_subset_of | ( | const catalogue & | ref | ) | const |
check whether all inode existing in the "this" and ref have the same attributes
|
protected |
invert the data tree memory management responsibility pointed to by "contenu" pointers between the current catalogue and the catalogue given in argument.
| void libdar::catalogue::transfer_delta_signatures | ( | const pile_descriptor & | destination, |
| bool | sequential_read, | ||
| bool | build, | ||
| const mask & | delta_mask, | ||
| const infinint & | delta_sig_min_size, | ||
| const delta_sig_block_size & | signature_block_size | ||
| ) |
copy delta signatures to the given stack and update the cat_file objects accordingly
| [in] | destination | where to drop delta signatures |
| [in] | sequential_read | whether we read the archive in sequential mode |
| [in] | build | if set and delta signature is not present but data is available for a file, calculate the delta sig |
| [in] | delta_mask | defines what files to calculate delta signature for when build is set to true |
| [in] | delta_sig_min_size | minimum size below which to never calculate delta signatures |
| [in] | signature_block_size | block size to use for computing delta signatures |
copy from ref missing files in "this" and mark then as "not_saved" (no change since reference)
in case of abortion, completes missing files as if what could not be inspected had not changed since the reference was done aborting_last_etoile is the highest etoile reference withing "this" current object.
add into "this" detruit object corresponding to object of ref absent in "this"
1.8.18