34 #ifndef ESCAPE_CATALOGUE_HPP 35 #define ESCAPE_CATALOGUE_HPP 37 #include "../my_config.h" 50 class escape_catalogue :
public catalogue
55 escape_catalogue(user_interaction & dialog,
56 const pile_descriptor & x_pdesc,
57 const datetime & root_last_modif,
58 const label & data_name);
61 escape_catalogue(user_interaction & dialog,
62 const pile_descriptor & x_pdesc,
63 const header_version & ver,
64 const std::list<signator> & known_signatories,
66 escape_catalogue(
const escape_catalogue & ref) : catalogue(ref) { copy_from(ref); };
67 const escape_catalogue & operator = (
const escape_catalogue &ref);
68 ~escape_catalogue() { destroy(); };
71 void pre_add(
const cat_entree *ref)
const;
72 void pre_add_ea(
const cat_entree *ref)
const;
73 void pre_add_crc(
const cat_entree *ref)
const;
74 void pre_add_dirty()
const;
75 void pre_add_ea_crc(
const cat_entree *ref)
const;
76 void pre_add_waste_mark()
const;
77 void pre_add_failed_mark()
const;
78 void pre_add_fsa(
const cat_entree *ref)
const;
79 void pre_add_fsa_crc(
const cat_entree *ref)
const;
80 escape *get_escape_layer()
const {
return pdesc->esc; };
82 void reset_read()
const;
83 void end_read()
const;
84 void skip_read_to_parent_dir()
const;
85 bool read(
const cat_entree * & ref)
const;
86 bool read_if_present(std::string *name,
const cat_nomme * & ref)
const;
87 void tail_catalogue_to_current_read();
88 bool read_second_time_dir()
const {
return status == ec_detruits; };
101 smart_pointer<pile_descriptor> pdesc;
102 header_version x_ver;
103 std::list<signator> known_sig;
105 std::map <infinint, cat_etoile *> corres;
108 infinint min_read_offset;
110 infinint wait_parent_depth;
112 void set_esc_and_stack(
const pile_descriptor & x_pdesc);
113 void copy_from(
const escape_catalogue & ref);
115 void merge_cat_det();
116 void reset_reading_process();
class pile definition. Used to manage a stack of generic_file objects
class escape definition, used for sequential reading of archivesThe class escape is used to insert es...
template class implementing memory efficient smart pointer
libdar namespace encapsulate all libdar symbols
here is defined the many classed which is build of the catalogue