| Disk ARchive 2.5.10 Full featured and portable backup and archiving tool

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | List of all members
libdar::list_entry Class Reference
API

`#include <list_entry.hpp>`

Inherits libdar::on_pool.

## Public Member Functions
const std::string & | get_name () const
unsigned char | get_type () const
bool | is_dir () const
bool | is_file () const
bool | is_symlink () const
bool | is_char_device () const
bool | is_block_device () const
bool | is_unix_socket () const
bool | is_named_pipe () const
bool | is_hard_linked () const
bool | is_removed_entry () const
bool | is_door_inode () const
bool | has_data_present_in_the_archive () const
bool | has_EA () const
bool | has_EA_saved_in_the_archive () const
bool | has_FSA () const
bool | has_FSA_saved_in_the_archive () const
std::string | get_uid () const
std::string | get_gid () const
std::string | get_perm () const
std::string | get_last_access () const
std::string | get_last_modif () const
std::string | get_last_change () const
time_t | get_last_access_s () const
time_t | get_last_modif_s () const
time_t | get_last_change_s () const
void | get_last_access (datetime::time_unit tu, time_t &second, time_t &fraction) const
void | get_last_modif (datetime::time_unit tu, time_t &second, time_t &fraction) const
| yet an alternative method to get the last modification date (see get_last_access() for details)
void | get_last_change (datetime::time_unit tu, time_t &second, time_t &fraction) const
| yet an alternative method to get the last change date (see get_last_access() for details)
std::string | get_file_size () const
std::string | get_compression_ratio () const
bool | is_sparse () const
std::string | get_compression_algo () const
bool | is_dirty () const
std::string | get_link_target () const
std::string | get_major () const
std::string | get_minor () const
const range & | get_slices () const
bool | get_archive_offset_for_data (infinint &val) const
bool | get_archive_offset_for_data (U_64 &val) const
std::string | get_archive_offset_for_data () const
bool | get_storage_size_for_data (infinint &val) const
bool | get_storage_size_for_data (U_64 &val) const
std::string | get_storage_size_for_data () const
bool | get_archive_offset_for_EA (infinint &val) const
bool | get_archive_offset_for_EA (U_64 &val) const
std::string | get_archive_offset_for_EA () const
bool | get_storage_size_for_EA (infinint &val) const
| amount of byte used to store the file's EA
bool | get_storage_size_for_EA (U_64 &val) const
std::string | get_storage_size_for_EA () const
bool | get_archive_offset_for_FSA (infinint &val) const
bool | get_archive_offset_for_FSA (U_64 &val) const
std::string | get_archive_offset_for_FSA () const
bool | get_storage_size_for_FSA (infinint &val) const
| amount of byte used to store the file's FSA
bool | get_storage_size_for_FSA (U_64 &val) const
std::string | get_storage_size_for_FSA () const
void | set_name (const std::string &val)
void | set_type (unsigned char val)
void | set_hard_link (bool val)
void | set_uid (const infinint &val)
void | set_gid (const infinint &val)
void | set_perm (U_16 val)
void | set_last_access (const datetime &val)
void | set_last_modif (const datetime &val)
void | set_saved_status (saved_status val)
void | set_ea_status (cat_inode::ea_status val)
void | set_last_change (const datetime &val)
void | set_fsa_status (cat_inode::fsa_status val)
void | set_file_size (const infinint &val)
void | set_storage_size (const infinint &val)
void | set_is_sparse_file (bool val)
void | set_compression_algo (compression val)
void | set_dirtiness (bool val)
void | set_link_target (const std::string &val)
void | set_major (int val)
void | set_minor (int val)
void | set_slices (const range &sl)
void | set_archive_offset_for_data (const infinint &val)
void | set_storage_size_for_data (const infinint &val)
void | set_archive_offset_for_EA (const infinint &val)
void | set_storage_size_for_EA (const infinint &val)
void | set_archive_offset_for_FSA (const infinint &val)
void | set_storage_size_for_FSA (const infinint &val)
Public Member Functions inherited from libdar::on_pool
void * | operator new (size_t n_byte)
void * | operator new (size_t n_byte, const std::nothrow_t &nothrow_value)
void * | operator new[] (size_t n_byte)
void * | operator new[] (size_t n_byte, const std::nothrow_t &nothrow_value)
void * | operator new (size_t n_byte, memory_pool *p)
void * | operator new[] (size_t n_byte, memory_pool *p)
void | operator delete (void *ptr, memory_pool *p)
| this operator is called by the compiler if an exception is throw from the constructor of the allocated object
void | operator delete[] (void *ptr, memory_pool *p)
| this operator is called by the compiler if an exception is throw from the constructor of the allocated objects
void | operator delete (void *ptr)
| this is the usual delete operator, modified to handle allocated objects allocated on a memory pool or not
void | operator delete[] (void *ptr)
| this is the usual delete[] operator, modified to handle allocated objects allocated on a memory pool or not

## Additional Inherited Members
Protected Member Functions inherited from libdar::on_pool
memory_pool * | get_pool () const
template<class T >
void | meta_new (T *&ptr, size_t num)
template<class T >
void | meta_delete (T *ptr)

## Detailed Description

the list_entry class provides mean to get information about a particular entry in the archive

it provides methods for libdar to fill up such object and methods for API user to read the information. Each information uses its own method, thus it will require several call to different method to get the full description of the object. This has the advantage to let the possiblity to add new fields in the future without breaking anything in API, and in consequences in user programs.

Definition at line 55 of file list_entry.hpp.

## Member Function Documentation

bool libdar::list_entry::get_archive_offset_for_data | ( | infinint & | val | ) | const
| inline

offset in byte where to find first byte of data

Note
  : return false if no data is present, else set the argument
  : offset is counted whatever is the number of slice as if there all slice were sticked toghether. But the first bytes of each slice do not count as they hold the slice header. This one is variable but can be known using the archive::get_first_slice_header_size() and archive::get_non_first_slice_header_size() methods from the current archive class. If encryption is used it is not possible to translate precisely from archive offset to slice offset, the encryption layer depending on the algorithm used may introduce an additional shift between clear data offset an corresponding ciphered data offset.
  if an U_64 cannot handle such large value, false is returned, you should use the infinint of std::string version of this method

Definition at line 130 of file list_entry.hpp.

bool libdar::list_entry::get_archive_offset_for_EA | ( | infinint & | val | ) | const
| inline

offset in byte whert to find the first byte of Extended Attributes

Note
  see note for get_archive_offset_for_data(infinint)
  if an U_64 cannot handle such large value, false is returned, you should use the infinint of std::string version of this method

Definition at line 147 of file list_entry.hpp.

bool libdar::list_entry::get_archive_offset_for_FSA | ( | infinint & | val | ) | const
| inline

offset in byte where to find the first byte of Filesystem Specific Attributes

Note
  see note for get_archive_offset_for_data(infinint)
  if an U_64 cannot handle such large value, false is returned, you should use the infinint of std::string version of this method

Definition at line 161 of file list_entry.hpp.

void libdar::list_entry::get_last_access | ( | datetime::time_unit | tu,
|  | time_t & | second,
|  | time_t & | fraction
| ) |  | const
| inline

yet an alternative method to get last access time

Parameters

  [in] | tu | time unit to be used to store fraction (libdar::datetime::tu_microsecond, libdar::datetime::tu_nanosecond,...)
  [out] | second | integer number of second
  [out] | fraction | remaining part of the time (expressed as tu unit) to be added to "second" to get the exact time

Definition at line 97 of file list_entry.hpp.

bool libdar::list_entry::get_storage_size_for_data | ( | infinint & | val | ) | const
| inline

amount of byte used to store the file's data

Note
  if an U_64 cannot handle such large value, false is returned, you should use the infinint of std::string version of this method

Definition at line 138 of file list_entry.hpp.

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

- list_entry.hpp