Disk ARchive  2.5.2
Full featured and portable backup and archiving tool
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines
Public Types | Public Member Functions | Protected Member Functions
libdar::cat_mirage Class Reference

the hard link implementation, cat_mirage is the named entry owned by a directory it points to a common "cat_etoile class" More...

#include <cat_mirage.hpp>

Inherits libdar::cat_nomme.

List of all members.

Public Types

enum  mirage_format { fmt_mirage, fmt_hard_link, fmt_file_etiquette }

Public Member Functions

 cat_mirage (const std::string &name, cat_etoile *ref)
 cat_mirage (user_interaction &dialog, const pile_descriptor &pdesc, const archive_version &reading_ver, saved_status saved, entree_stats &stats, std::map< infinint, cat_etoile * > &corres, compression default_algo, mirage_format fmt, bool lax, bool small)
 cat_mirage (user_interaction &dialog, const pile_descriptor &pdesc, const archive_version &reading_ver, saved_status saved, entree_stats &stats, std::map< infinint, cat_etoile * > &corres, compression default_algo, bool lax, bool small)
 cat_mirage (const cat_mirage &ref)
const cat_mirageoperator= (const cat_mirage &ref)
bool operator== (const cat_entree &ref) const
 returns true if the two object have the same content
unsigned char signature () const
 inherited class signature
cat_entreeclone () const
 a way to copy the exact type of an object even if pointed to by a parent class pointer
cat_inodeget_inode () const
infinint get_etiquette () const
infinint get_etoile_ref_count () const
cat_etoileget_etoile () const
bool is_inode_counted () const
bool is_inode_wrote () const
bool is_inode_dumped () const
void set_inode_counted (bool val) const
void set_inode_wrote (bool val) const
void set_inode_dumped (bool val) const
void post_constructor (const pile_descriptor &pdesc)
bool is_first_mirage () const
 whether we are the mirage that triggered this hard link creation
virtual void change_location (const pile_descriptor &pdesc)

Protected Member Functions

void inherited_dump (const pile_descriptor &pdesc, bool small) const
 inherited class may overload this method but shall first call the parent's inherited_dump() in the overloaded method

Detailed Description

the hard link implementation, cat_mirage is the named entry owned by a directory it points to a common "cat_etoile class"

well, a mirage is this fake apparition of water in a desert... I guess you get the picture now... :-)

Definition at line 47 of file cat_mirage.hpp.


Member Function Documentation

virtual void libdar::cat_mirage::change_location ( const pile_descriptor &  pdesc) [inline, virtual]

for archive merging, will let the object drop EA, FSA and Data to an alternate stack than the one it has been read from

Note:
this is used when cloning an object from a catalogue to provide a merged archive. Such cloned object must point the stack of the archive under construction, so we use this call for that need,
this is also used when opening a catalogue if an isolated catalogue in place of the internal catalogue of an archive
this method is virtual for cat_directory to overwrite it and propagate the change to all entries of the directory tree as well for mirage to propagate the change to the hard linked inode

Reimplemented from libdar::cat_entree.

Definition at line 101 of file cat_mirage.hpp.

References libdar::cat_entree::change_location().

void libdar::cat_mirage::post_constructor ( const pile_descriptor &  pdesc) [virtual]

let inherited classes build object's data after CRC has been read from file in small read mode

Parameters:
[in]pdescstack to read the data from
Note:
used from cat_entree::read to complete small read
this method is called by cat_entree::read and mirage::post_constructor only when contructing an object with small set to true

Reimplemented from libdar::cat_entree.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines