Logo Search packages:      
Sourcecode: dar version File versions

API


Detailed Description

APlication Interface.

This gather all symbols that may be accessed from an external program. Other symbols are not as much documented, and may change or be removed without any warning or backward compatibility. So only use the function, macro, types defined as member of the API in you external programs.


Classes

class  libdar::archive
 the archive class realizes the most general operations on archives More...
class  libdar::bool_mask
 boolean mask, either always true or false More...
class  libdar::Ebug
 exception used to signal a bug. A bug is triggered when reaching some code that should never be reached More...
class  libdar::Ecompilation
 exception used when a requested fearture has not beed activated at compilation time More...
class  libdar::Edata
 exception used when an error concerning the treated data has been met More...
class  libdar::Edeci
 exception used to signal convertion problem between infinint and string (decimal representation) More...
class  libdar::Efeature
 exception used when a requested feature is not (yet) implemented More...
class  libdar::Egeneric
 this is the parent class of all exception classes. More...
class  libdar::Ehardware
 exception used when hardware problem is found More...
class  libdar::Einfinint
 exception used when arithmetic error is detected when operating on infinint More...
class  libdar::Elibcall
 exception used to signal an error in the argument given to libdar call of the API More...
class  libdar::Elimitint
 exception used when a limitint overflow is detected, the maximum value of the limitint has been exceeded More...
class  libdar::Ememory
 exception used when memory has been exhausted More...
class  libdar::Erange
 exception used to signal range error More...
class  libdar::Escript
 exception used when error the inter-slice user command returned an error code More...
class  libdar::et_mask
 makes an *AND* operator between two or more masks More...
class  libdar::Euser_abort
 exception used to signal that the user has aborted the operation More...
class  libdar::exclude_dir_mask
 matches if string is the given string or a sub directory of it More...
class  libdar::mask
 the generic class, parent of all masks More...
class  libdar::not_mask
 negation of another mask More...
class  libdar::ou_mask
 makes the *OR* operator between two or more masks More...
class  libdar::path
 the class path is here to manipulate paths in the Unix notation: using'/' More...
class  libdar::regular_mask
 matches regular expressions (see "man 7 regex") More...
class  libdar::same_path_mask
 matches if string is exactly the given mask (no wilde card expression) More...
class  libdar::simple_mask
 matches as done on shell command lines (see "man 7 glob") More...
class  libdar::simple_path_mask
 string matches if it is subdir of mask or mask is a subdir of expression More...
struct  libdar::statistics
 structure returned by libdar call to give a summary of the operation done in term of file treated More...
class  libdar::user_interaction
 This is a pure virtual class that is used by libdar when interaction with the user is required. More...
class  libdar::user_interaction_callback
 full implemented class for user_interaction based on callback functions. More...

Defines

#define LIBDAR_EBUG   2
 internal bug error.
#define LIBDAR_ECOMPILATION   14
 feature not activated at compilation time
#define LIBDAR_EDATA   10
 data inconsistency, error concerning the treated data
#define LIBDAR_EDECI   6
 decimal representation error
#define LIBDAR_EFEATURE   7
 feature not (yet) implemented
#define LIBDAR_EHARDWARE   8
 hardware failure
#define LIBDAR_EINFININT   3
 division by zero or other arithmetic error
#define LIBDAR_ELIBCALL   12
 libdar invalid call (wrong argument given to call, etc.)
#define LIBDAR_ELIMITINT   4
 limitint overflow
#define LIBDAR_EMEMORY   1
 memory has been exhausted
#define LIBDAR_ERANGE   5
 range error
#define LIBDAR_ESCRIPT   11
 inter slice script failure
#define LIBDAR_EUSER_ABORT   9
 user has aborted the operation
#define LIBDAR_NOEXCEPT   0
 normal return no exception has been thrown
#define LIBDAR_UNKNOWN   13
 unknown error
#define LIBDAR_XXXXXXXX
 The following macro are used in the "exception" argument of the *_noexcept() functions.
#define SRC_BUG   Ebug(__FILE__, __LINE__)
#define XMT_BUG(exception, call)   exception.stack(call, __FILE__, __LINE__)

Enumerations

enum  libdar::compression { libdar::none = 'n', libdar::zip = 'p', libdar::gzip = 'z', libdar::bzip2 = 'y' }
 the different compression algorithm available More...
enum  libdar::crypto_algo { libdar::crypto_none, libdar::crypto_scrambling, libdar::crypto_blowfish }
 the different cypher available for encryption (strong or weak) More...

Functions

void libdar::close_archive_noexcept (archive *ptr, U_16 &exception, std::string &except_msg)
 this is wrapper around the archive destructor
archive * libdar::create_archive_noexcept (user_interaction &dialog, const path &fs_root, const path &sauv_path, archive *ref_arch, const mask &selection, const mask &subtree, const std::string &filename, const std::string &extension, bool allow_over, bool warn_over, bool info_details, bool pause, bool empty_dir, compression algo, U_I compression_level, const infinint &file_size, const infinint &first_file_size, bool root_ea, bool user_ea, const std::string &execute, crypto_algo crypto, const std::string &pass, U_32 crypto_size, const mask &compr_mask, const infinint &min_compr_size, bool nodump, bool ignore_owner, const infinint &hourshift, bool empty, bool alter_atime, bool same_fs, statistics &ret, U_16 &exception, std::string &except_msg)
 this is a wrapper around the archive constructor known as the "create" constructor
bool libdar::get_children_of_noexcept (user_interaction &dialog, archive *ptr, const std::string &dir, U_16 &exception, std::string &except_msg)
 this is wrapper around the get_children_of method
void libdar::get_compile_time_features (bool &ea, bool &largefile, bool &nodump, bool &special_alloc, U_I &bits, bool &thread_safe, bool &libz, bool &libbz2, bool &libcrypto)
 return the options activated that have been activated at compilation time
void libdar::get_version (U_I &major, U_I &medium, U_I &minor)
 return the libdar version, and make libdar initialization (may throw Exceptions)
void libdar::get_version (U_I &major, U_I &minor)
void libdar::get_version_noexcept (U_I &major, U_I &medium, U_I &minor, U_16 &exception, std::string &except_msg)
 return the libdar version, and make libdar initialization (does not throw exceptions)
void libdar::get_version_noexcept (U_I &major, U_I &minor, U_16 &exception, std::string &except_msg)
archive * libdar::isolate_archive_noexcept (user_interaction &dialog, const path &sauv_path, archive *ref_arch, const std::string &filename, const std::string &extension, bool allow_over, bool warn_over, bool info_details, bool pause, compression algo, U_I compression_level, const infinint &file_size, const infinint &first_file_size, const std::string &execute, crypto_algo crypto, const std::string &pass, U_32 crypto_size, bool empty, U_16 &exception, std::string &except_msg)
 this is a wrapper around the archive constructor known as the "isolate" constructor
char * libdar::libdar_str2charptr_noexcept (const std::string &x, U_16 &exception, std::string &except_msg)
 routine provided to convert std::string to char *
statistics libdar::op_diff_noexcept (user_interaction &dialog, archive *ptr, const path &fs_root, const mask &selection, const mask &subtree, bool info_details, bool check_ea_root, bool check_ea_user, bool ignore_owner, bool alter_atime, U_16 &exception, std::string &except_msg)
 this is wrapper around the op_diff method
statistics libdar::op_extract_noexcept (user_interaction &dialog, archive *ptr, const path &fs_root, const mask &selection, const mask &subtree, bool allow_over, bool warn_over, bool info_details, bool detruire, bool only_more_recent, bool restore_ea_root, bool restore_ea_user, bool flat, bool ignore_owner, bool warn_remove_no_match, const infinint &hourshift, bool empty, U_16 &exception, std::string &except_msg)
 this is wrapper around the op_extract method
void libdar::op_listing_noexcept (user_interaction &dialog, archive *ptr, bool info_details, bool tar_format, const mask &selection, bool filter_unsaved, U_16 &exception, std::string &except_msg)
 this is wrapper around the op_listing method
statistics libdar::op_test_noexcept (user_interaction &dialog, archive *ptr, const mask &selection, const mask &subtree, bool info_details, U_16 &exception, std::string &except_msg)
 this is wrapper around the op_test method
archive * libdar::open_archive_noexcept (user_interaction &dialog, const path &chem, const std::string &basename, const std::string &extension, crypto_algo crypto, const std::string &pass, U_32 crypto_size, const std::string &input_pipe, const std::string &output_pipe, const std::string &execute, bool info_details, U_16 &exception, std::string &except_msg)
 this is a wrapper around the archive constructor known as the "read" constructor

Variables

const U_I libdar::LIBDAR_COMPILE_TIME_MAJOR = 3
 libdar Major version defined at compilation time
const U_I libdar::LIBDAR_COMPILE_TIME_MEDIUM = 0
 libdar Medium version defined at compilation time
const U_I libdar::LIBDAR_COMPILE_TIME_MINOR = 1
 libdar Minor version defined at compilation time


Generated by  Doxygen 1.6.0   Back to index