65 #include "../my_config.h"
96 #define LIBDAR_XXXXXXXX
99 #define LIBDAR_NOEXCEPT 0
100 #define LIBDAR_EMEMORY 1
102 #define LIBDAR_EBUG 2
104 #define LIBDAR_EINFININT 3
106 #define LIBDAR_ELIMITINT 4
108 #define LIBDAR_ERANGE 5
110 #define LIBDAR_EDECI 6
112 #define LIBDAR_EFEATURE 7
114 #define LIBDAR_EHARDWARE 8
116 #define LIBDAR_EUSER_ABORT 9
118 #define LIBDAR_EDATA 10
120 #define LIBDAR_ESCRIPT 11
122 #define LIBDAR_ELIBCALL 12
124 #define LIBDAR_UNKNOWN 13
126 #define LIBDAR_ECOMPILATION 14
128 #define LIBDAR_THREAD_CANCEL 15
171 extern void get_version(U_I & major, U_I & medium, U_I & minor,
bool init_libgcrypt =
true);
186 extern void get_version_noexcept(U_I & major, U_I & medium, U_I & minor, U_16 & exception, std::string & except_msg,
bool init_libgcrypt =
true);
201 extern void close_and_clean();
219 const path & chem,
const std::string & basename,
220 const std::string & extension,
223 std::string & except_msg);
232 const path & fs_root,
233 const path & sauv_path,
234 const std::string & filename,
235 const std::string & extension,
239 std::string & except_msg);
250 const path &sauv_path,
251 const std::string & filename,
252 const std::string & extension,
255 std::string & except_msg);
263 const path & sauv_path,
265 const std::string & filename,
266 const std::string & extension,
270 std::string & except_msg);
280 std::string & except_msg);
294 std::string & except_msg);
306 std::string & except_msg);
316 const path & fs_root,
317 const archive_options_diff & options,
320 std::string & except_msg);
333 std::string & except_msg);
343 const std::string & dir,
345 std::string & except_msg);
379 inline extern void cancel_thread(pthread_t tid,
bool immediate =
true, U_64 flag = 0) { thread_cancellation::cancel(tid, immediate, flag); }
385 inline extern bool cancel_status(pthread_t tid) {
return thread_cancellation::cancel_status(tid); }
392 inline extern bool cancel_clear(pthread_t tid) {
return thread_cancellation::clear_pending_request(tid); }
archive * open_archive_noexcept(user_interaction &dialog, const path &chem, const std::string &basename, const std::string &extension, const archive_options_read &options, U_16 &exception, std::string &except_msg)
this is a wrapper around the archive constructor known as the "read" constructor
void get_version(U_I &major, U_I &medium, U_I &minor, bool init_libgcrypt=true)
return the libdar version, and make libdar initialization (may throw Exceptions)
are defined here basic integer types that tend to be portable
the archive class is defined in this module
const U_I LIBDAR_COMPILE_TIME_MINOR
libdar Minor version defined at compilation time
class holding optional parameters used to test the structure coherence of an existing archive ...
This is a pure virtual class that is used by libdar when interaction with the user is required...
nested namespace containing routines that give features activated at compile time ...
the crypto algoritm definition
archive * isolate_archive_noexcept(user_interaction &dialog, archive *ptr, const path &sauv_path, const std::string &filename, const std::string &extension, const archive_options_isolate &options, U_16 &exception, std::string &except_msg)
this is a wrapper around the archive constructor known as the "isolate" constructor ...
const U_I LIBDAR_COMPILE_TIME_MAJOR
libdar Major version defined at compilation time
void close_archive_noexcept(archive *ptr, U_16 &exception, std::string &except_msg)
this is wrapper around the archive destructor
the archive class realizes the most general operations on archives
void op_listing_noexcept(user_interaction &dialog, archive *ptr, const archive_options_listing &options, U_16 &exception, std::string &except_msg)
this is wrapper around the op_listing method
defines the interaction between libdar and the user.Three classes are defined
statistics op_extract_noexcept(user_interaction &dialog, archive *ptr, const path &fs_root, const archive_options_extract &options, statistics *progressive_report, U_16 &exception, std::string &except_msg)
this is wrapper around the op_extract method
here is the definition of the path classthe path class handle path and provide several operation on t...
archive * merge_archive_noexcept(user_interaction &dialog, const path &sauv_path, archive *ref_arch1, const std::string &filename, const std::string &extension, const archive_options_merge &options, statistics *progressive_report, U_16 &exception, std::string &except_msg)
this is a wrapper around the archive constructor known as the "merging" constructor ...
handle the statistic structure that gives a summary of treated files after each operatio ...
archive * create_archive_noexcept(user_interaction &dialog, const path &fs_root, const path &sauv_path, const std::string &filename, const std::string &extension, const archive_options_create &options, statistics *progressive_report, U_16 &exception, std::string &except_msg)
this is a wrapper around the archive constructor known as the "create" constructor ...
to be able to cancel libdar operation while running in a given thread.the class thread_cancellation i...
char * libdar_str2charptr_noexcept(const std::string &x, U_16 &exception, std::string &except_msg)
routine provided to convert std::string to char *
switch module to limitint (32 ou 64 bits integers) or infinint
here lies a collection of mask classes
manages the decimal representation of infinint
statistics op_test_noexcept(user_interaction &dialog, archive *ptr, const archive_options_test &options, statistics *progressive_report, U_16 &exception, std::string &except_msg)
this is wrapper around the op_test method
compression engine implementation
class holding optional parameters used to list the contents of an existing archive ...
statistics op_diff_noexcept(user_interaction &dialog, archive *ptr, const path &fs_root, const archive_options_diff &options, statistics *progressive_report, U_16 &exception, std::string &except_msg)
this is wrapper around the op_diff method
provide information about current thread (underlying using the widthdrawn POSIX.1e API) ...
const U_I LIBDAR_COMPILE_TIME_MEDIUM
libdar Medium version defined at compilation time
bool 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
class holding optional parameters used to read an existing archive
class holding optional parameters used to proceed to the merge operation
class holding optional parameters used to create an archive
class holding optional parameters used to isolate an existing archive
structure returned by libdar call to give a summary of the operation done in term of file treated ...
the class path is here to manipulate paths in the Unix notation: using'/'
void get_version_noexcept(U_I &major, U_I &medium, U_I &minor, U_16 &exception, std::string &except_msg, bool init_libgcrypt=true)
return the libdar version, and make libdar initialization (does not throw exceptions) ...