26 #ifndef TRIVIAL_SAR_HPP
27 #define TRIVIAL_SAR_HPP
29 #include "../my_config.h"
61 const std::string & base_name,
62 const std::string & extension,
64 const label & internal_nale,
65 const label & data_name,
66 const std::string & execute,
69 bool force_permission,
73 bool format_07_compatible);
78 const std::string & pipename,
85 const label & internal_name,
86 const label & data_name,
87 bool format_07_compatible,
88 const std::string & execute);
104 bool is_an_old_start_end_archive()
const {
return old_sar; };
105 const label & get_data_name()
const {
return of_data_name; };
126 std::string hook_where;
128 void init(
const label & internal_name);
136 extern std::string
sar_make_filename(
const std::string & base_name,
const infinint & num,
const infinint & min_digits,
const std::string & ext);
defines the entrepot interface. Entrepot interface defines a generic way to interact with files (slic...
void inherited_read_ahead(const infinint &amount)
void inherited_terminate()
destructor-like call, except that it is allowed to throw exceptions
void inherited_sync_write()
write down any pending data
are defined here basic integer types that tend to be portable
bool skip_to_eof()
skip to the end of file
class generic_file is defined here as well as class fichierthe generic_file interface is widely used ...
This is a pure virtual class that is used by libdar when interaction with the user is required...
void inherited_write(const char *a, U_I size)
implementation of the write() operation
virtual void read_ahead(const infinint &amount)
trivial_sar(const trivial_sar &ref)
copy constructor (disabled)
gf_mode
generic_file openning modes
object describing the slicing of an archive
bool skip_relative(S_I x)
skip relatively to the current position
bool is_terminated() const
trivial_sar(const user_interaction &dialog, gf_mode open_mode, const std::string &base_name, const std::string &extension, const entrepot &where, const label &internal_nale, const label &data_name, const std::string &execute, bool allow_over, bool warn_over, bool force_permission, U_I permission, hash_algo x_hash, const infinint &min_digits, bool format_07_compatible)
constructor to build a new single sliced archive
here is the definition of the path classthe path class handle path and provide several operation on t...
switch module to limitint (32 ou 64 bits integers) or infinint
U_I inherited_read(char *a, U_I size)
implementation of read() operation
bool skippable(skippability direction, const infinint &amount)
std::string sar_make_filename(const std::string &base_name, const infinint &num, const infinint &min_digits, const std::string &ext)
return the name of a slice given the base_name, slice number and extension
this is the interface class from which all other data transfer classes inherit
class mem_ui to keep a copy of a user_interaction object
void inherited_flush_read()
the arbitrary large positive integer class
infinint get_position() const
get the current read/write position
bool skip(const infinint &pos)
virtual bool skip_to_eof()=0
skip to the end of file
libdar namespace encapsulate all libdar symbols
virtual bool skippable(skippability direction, const infinint &amount)=0