26#ifndef HEADER_FLAGS_HPP
27#define HEADER_FLAGS_HPP
52 header_flags():
bits(0) {};
54 header_flags(
const header_flags & ref) =
default;
55 header_flags(header_flags && ref)
noexcept =
default;
56 header_flags & operator = (
const header_flags & ref) =
default;
57 header_flags & operator = (header_flags && ref)
noexcept =
default;
58 ~header_flags() =
default;
84 static bool has_an_lsb_set(U_I bitfield);
this is the interface class from which all other data transfer classes inherit
class generic_file is defined here as well as class fichier
bool is_set(U_I bitfield) const
return true if all bits of the argument set to 1, are set in this header_flags
U_I bits
future implementation could rely on infinint for a arbitrary large bitfield
void unset_bits(U_I bitfield)
remove all the bits set to in in the argument
void clear()
clear all flags
void dump(generic_file &f) const
dump the header_flags to generic_file
bool is_all_cleared()
whether all bits are cleared
void set_bits(U_I bitfield)
add all the bits set to 1 in the argument
void read(generic_file &f)
set the header_flags from a generic_file
include macro defined by the configure script and some specific additional ones
libdar namespace encapsulate all libdar symbols