64 #include "../my_config.h" 95 #define LIBDAR_XXXXXXXX 98 #define LIBDAR_NOEXCEPT 0 99 #define LIBDAR_EMEMORY 1 101 #define LIBDAR_EBUG 2 103 #define LIBDAR_EINFININT 3 105 #define LIBDAR_ELIMITINT 4 107 #define LIBDAR_ERANGE 5 109 #define LIBDAR_EDECI 6 111 #define LIBDAR_EFEATURE 7 113 #define LIBDAR_EHARDWARE 8 115 #define LIBDAR_EUSER_ABORT 9 117 #define LIBDAR_EDATA 10 119 #define LIBDAR_ESCRIPT 11 121 #define LIBDAR_ELIBCALL 12 123 #define LIBDAR_UNKNOWN 13 125 #define LIBDAR_ECOMPILATION 14 127 #define LIBDAR_THREAD_CANCEL 15 170 extern void get_version(U_I & major, U_I & medium, U_I & minor,
bool init_libgcrypt =
true);
185 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);
200 extern void close_and_clean();
218 const path & chem,
const std::string & basename,
219 const std::string & extension,
222 std::string & except_msg);
231 const path & fs_root,
232 const path & sauv_path,
233 const std::string & filename,
234 const std::string & extension,
238 std::string & except_msg);
249 const path &sauv_path,
250 const std::string & filename,
251 const std::string & extension,
254 std::string & except_msg);
262 const path & sauv_path,
264 const std::string & filename,
265 const std::string & extension,
269 std::string & except_msg);
279 std::string & except_msg);
293 std::string & except_msg);
305 std::string & except_msg);
315 const path & fs_root,
316 const archive_options_diff & options,
319 std::string & except_msg);
332 std::string & except_msg);
342 const std::string & dir,
344 std::string & except_msg);
378 inline extern void cancel_thread(pthread_t tid,
bool immediate =
true, U_64 flag = 0) { thread_cancellation::cancel(tid, immediate, flag); }
384 inline extern bool cancel_status(pthread_t tid) {
return thread_cancellation::cancel_status(tid); }
391 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
libdar namespace encapsulate all libdar symbols
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) ...