44 hide_file(
const hide_file & ref) =
default;
45 hide_file & operator = (
const hide_file & ref) =
default;
46 ~hide_file() =
default;
48 virtual bool skippable(skippability direction,
const infinint & amount)
override {
return true; };
49 virtual bool skip(
const infinint & pos)
override;
51 virtual bool skip_relative(S_I x)
override;
52 virtual bool truncatable(
const infinint & pos)
const override {
return false; };
58 infinint debut, longueur;
62 vector <partie> morceau;
65 virtual void inherited_read_ahead(
const infinint & amount)
override { ref->read_ahead(amount); };
66 virtual U_I inherited_read(
char *a, U_I size)
override;
67 virtual void inherited_write(
const char *a,
size_t size)
override;
68 virtual void inherited_truncate(
const infinint & pos)
override {
throw Efeature(
"truncate a hide file"); };
72 virtual void fill_morceau() = 0;
this is the interface class from which all other data transfer classes inherit
virtual void inherited_sync_write()=0
write down any pending data
generic_file(gf_mode m)
main constructor
virtual infinint get_position() const =0
get the current read/write position
virtual bool skip_to_eof()=0
skip to the end of file
virtual void inherited_terminate()=0
destructor-like call, except that it is allowed to throw exceptions
virtual void inherited_flush_read()=0
reset internal engine, flush caches in order to read the data at current position
class generic_file is defined here as well as class fichier
the main file of the libdar API definitions
include macro defined by the configure script and some specific additional ones
libdar namespace encapsulate all libdar symbols