Disk ARchive  2.7.15
Full featured and portable backup and archiving tool
Classes | Public Member Functions | Private Attributes | List of all members
libdar::cat_etoile Class Reference

the hard link implementation More...

#include <cat_etoile.hpp>

+ Collaboration diagram for libdar::cat_etoile:

Classes

struct  bool_tags
 bitfield used to record pointed to inode information More...
 

Public Member Functions

 cat_etoile (cat_inode *host, const infinint &etiquette_number)
 build an object More...
 
 cat_etoile (const cat_etoile &ref)=delete
 
 cat_etoile (cat_etoile &&ref)=delete
 
cat_etoileoperator= (const cat_etoile &ref)=delete
 
cat_etoileoperator= (cat_etoile &&ref)=delete
 
void add_ref (void *ref)
 
void drop_ref (void *ref)
 
infinint get_ref_count () const
 
cat_inodeget_inode () const
 
infinint get_etiquette () const
 
void change_etiquette (const infinint &new_val)
 
void disable_reduction_to_normal_inode ()
 
bool cannot_reduce_to_normal_inode () const
 
bool is_counted () const
 
bool is_wrote () const
 
bool is_dumped () const
 
void set_counted (bool val)
 
void set_wrote (bool val)
 
void set_dumped (bool val)
 
const void * get_first_ref () const
 

Private Attributes

std::list< void * > refs
 list of pointers to the mirages objects, in the order of their creation
 
cat_inodehosted
 
infinint etiquette
 
bool_tags tags
 

Detailed Description

the hard link implementation

etoile means star in French. See a star as a point from which are thrown many ray of light

Definition at line 47 of file cat_etoile.hpp.

Constructor & Destructor Documentation

◆ cat_etoile()

libdar::cat_etoile::cat_etoile ( cat_inode host,
const infinint etiquette_number 
)

build an object

Parameters
[in]hostis an inode, it must not be a directory (this would throw an Erange exception)
[in]etiquette_numberis the identifier of this multiply linked structure
Note
the given cat_inode is now managed by the cat_etoile object

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