Disk ARchive 2.7.16
Full featured and portable backup and archiving tool
Public Member Functions | Private Member Functions | Private Attributes | List of all members
libdar::archive_options_merge Class Reference

class holding optional parameters used to proceed to the merge operation More...

#include <archive_options.hpp>

Inherited by libdar5::archive_options_merge.

+ Collaboration diagram for libdar::archive_options_merge:

Public Member Functions

 archive_options_merge (const archive_options_merge &ref)
 
 archive_options_merge (archive_options_merge &&ref) noexcept
 
archive_options_mergeoperator= (const archive_options_merge &ref)
 
archive_options_mergeoperator= (archive_options_merge &&ref) noexcept
 
void clear ()
 
void set_auxiliary_ref (std::shared_ptr< archive > ref)
 
void set_selection (const mask &selection)
 defines the filenames to only save (except directory) as those that match the given mask
 
void set_subtree (const mask &subtree)
 defines the directories and files to consider More...
 
void set_allow_over (bool allow_over)
 defines whether overwritting is allowed or not More...
 
void set_warn_over (bool warn_over)
 defines whether a warning shall be issued before overwriting More...
 
void set_overwriting_rules (const crit_action &overwrite)
 policy to solve merging conflict
 
void set_info_details (bool info_details)
 defines whether the user needs detailed output of the operation More...
 
void set_display_treated (bool display_treated, bool only_dir)
 defines whether to show treated files More...
 
void set_display_skipped (bool display_skipped)
 whether to display files that have been excluded by filters More...
 
void set_pause (const infinint &pause)
 set a pause beteween slices. Set to zero does not pause at all, set to 1 makes libdar pauses each slice, set to 2 makes libdar pause each 2 slices and so on. More...
 
void set_empty_dir (bool empty_dir)
 defines whether we need to store ignored directories as empty More...
 
void set_compression (compression compr_algo)
 set the compression algorithm to be used More...
 
void set_compression_level (U_I compression_level)
 set the compression level (from 1 to 9) More...
 
void set_compression_block_size (U_I compression_block_size)
 set the compression block size (0 for streamed compression) More...
 
void set_slicing (const infinint &file_size, const infinint &first_file_size=0)
 define the archive slicing More...
 
void set_ea_mask (const mask &ea_mask)
 defines which Extended Attributes to save
 
void set_execute (const std::string &execute)
 set the command to execute after each slice creation More...
 
void set_crypto_algo (crypto_algo crypto)
 set the cypher to use More...
 
void set_crypto_pass (const secu_string &pass)
 
void set_crypto_size (U_32 crypto_size)
 set the size of the encryption by block to use More...
 
void set_gnupg_recipients (const std::vector< std::string > &gnupg_recipients)
 
void set_gnupg_signatories (const std::vector< std::string > &gnupg_signatories)
 
void set_compr_mask (const mask &compr_mask)
 defines files to compress
 
void set_min_compr_size (const infinint &min_compr_size)
 defines file size under which to never compress More...
 
void set_empty (bool empty)
 defines whether we do a dry-run execution More...
 
void set_keep_compressed (bool keep_compressed)
 make dar ignore the 'algo' argument and do not uncompress / compress files that are selected for merging More...
 
void set_slice_permission (const std::string &slice_permission)
 if not an empty string set the slice permission according to the octal value given. More...
 
void set_slice_user_ownership (const std::string &slice_user_ownership)
 if not an empty string set the user ownership of slices accordingly More...
 
void set_slice_group_ownership (const std::string &slice_group_ownership)
 if not an empty string set the group ownership of slices accordingly More...
 
void set_decremental_mode (bool mode)
 if set to true use a merging mode suitable to build a decremental backup from two full backups (see Notes) More...
 
void set_sequential_marks (bool sequential)
 whether to activate escape sequence aka tape marks to allow sequential reading of the archive More...
 
void set_sparse_file_min_size (const infinint &size)
 whether to try to detect sparse files More...
 
void set_user_comment (const std::string &comment)
 specify a user comment in the archive (always in clear text!) More...
 
void set_hash_algo (hash_algo hash)
 specify whether to produce a hash file of the slice and which hash algo to use
 
void set_slice_min_digits (infinint val)
 defines the minimum digit a slice must have concerning its number, zeros will be prepended as much as necessary to respect this More...
 
void set_entrepot (const std::shared_ptr< entrepot > &entr)
 defines the protocol to use for slices More...
 
void set_fsa_scope (const fsa_scope &scope)
 defines the FSA (Filesystem Specific Attribute) to only consider (by default all FSA are considered) More...
 
void set_multi_threaded (bool val)
 whether libdar is allowed to spawn several threads to possibily work faster on multicore CPU (requires libthreadar) More...
 
void set_multi_threaded_crypto (U_I num)
 how much thread libdar will use for cryptography (need libthreadar to be effective) More...
 
void set_multi_threaded_compress (U_I num)
 how much thread libdar will use for compression (need libthreadar too and compression_block_size > 0) More...
 
void set_delta_signature (bool val)
 
void set_delta_mask (const mask &delta_mask)
 whether to derogate to defaut delta file consideration while calculation delta signatures
 
void set_delta_sig_min_size (const infinint &val)
 whether to never calculate delta signature for files which size is smaller or equal to the given argument More...
 
void set_iteration_count (const infinint &val)
 key derivation More...
 
void set_kdf_hash (hash_algo algo)
 hash algo used for key derivation More...
 
void set_sig_block_len (delta_sig_block_size val)
 block size to use to build delta signatures More...
 
std::shared_ptr< archiveget_auxiliary_ref () const
 
const maskget_selection () const
 
const maskget_subtree () const
 
bool get_allow_over () const
 
bool get_warn_over () const
 
const crit_actionget_overwriting_rules () const
 
bool get_info_details () const
 
bool get_display_treated () const
 
bool get_display_treated_only_dir () const
 
bool get_display_skipped () const
 
const infinintget_pause () const
 
bool get_empty_dir () const
 
compression get_compression () const
 
U_I get_compression_level () const
 
U_I get_compression_block_size () const
 
const infinintget_slice_size () const
 
const infinintget_first_slice_size () const
 
const maskget_ea_mask () const
 
const std::string & get_execute () const
 
crypto_algo get_crypto_algo () const
 
const secu_stringget_crypto_pass () const
 
U_32 get_crypto_size () const
 
const std::vector< std::string > & get_gnupg_recipients () const
 
const std::vector< std::string > & get_gnupg_signatories () const
 
const maskget_compr_mask () const
 
const infinintget_min_compr_size () const
 
bool get_empty () const
 
bool get_keep_compressed () const
 
const std::string & get_slice_permission () const
 
const std::string & get_slice_user_ownership () const
 
const std::string & get_slice_group_ownership () const
 
bool get_decremental_mode () const
 
bool get_sequential_marks () const
 
infinint get_sparse_file_min_size () const
 
const std::string & get_user_comment () const
 
hash_algo get_hash_algo () const
 
infinint get_slice_min_digits () const
 
const std::shared_ptr< entrepot > & get_entrepot () const
 
const fsa_scopeget_fsa_scope () const
 
U_I get_multi_threaded_crypto () const
 
U_I get_multi_threaded_compress () const
 
bool get_delta_signature () const
 
const maskget_delta_mask () const
 
bool get_has_delta_mask_been_set () const
 
const infinintget_delta_sig_min_size () const
 
const infinintget_iteration_count () const
 
hash_algo get_kdf_hash () const
 
delta_sig_block_size get_sig_block_len () const
 

Private Member Functions

void destroy () noexcept
 
void copy_from (const archive_options_merge &ref)
 
void move_from (archive_options_merge &&ref) noexcept
 
void nullifyptr () noexcept
 

Private Attributes

std::shared_ptr< archivex_ref
 
maskx_selection
 
maskx_subtree
 
bool x_allow_over
 
bool x_warn_over
 
crit_actionx_overwrite
 
bool x_info_details
 
bool x_display_treated
 
bool x_display_treated_only_dir
 
bool x_display_skipped
 
infinint x_pause
 
bool x_empty_dir
 
compression x_compr_algo
 
U_I x_compression_level
 
U_I x_compression_block_size
 
infinint x_file_size
 
infinint x_first_file_size
 
maskx_ea_mask
 
std::string x_execute
 
crypto_algo x_crypto
 
secu_string x_pass
 
U_32 x_crypto_size
 
std::vector< std::string > x_gnupg_recipients
 
std::vector< std::string > x_gnupg_signatories
 
maskx_compr_mask
 
infinint x_min_compr_size
 
bool x_empty
 
bool x_keep_compressed
 
std::string x_slice_permission
 
std::string x_slice_user_ownership
 
std::string x_slice_group_ownership
 
bool x_decremental
 
bool x_sequential_marks
 
infinint x_sparse_file_min_size
 
std::string x_user_comment
 
hash_algo x_hash
 
infinint x_slice_min_digits
 
std::shared_ptr< entrepotx_entrepot
 
fsa_scope x_scope
 
U_I x_multi_threaded_crypto
 
U_I x_multi_threaded_compress
 
bool x_delta_signature
 
maskx_delta_mask
 
bool has_delta_mask_been_set
 
infinint x_delta_sig_min_size
 
infinint x_iteration_count
 
hash_algo x_kdf_hash
 
delta_sig_block_size x_sig_block_len
 

Detailed Description

class holding optional parameters used to proceed to the merge operation

Definition at line 988 of file archive_options.hpp.

Constructor & Destructor Documentation

◆ archive_options_merge() [1/3]

libdar::archive_options_merge::archive_options_merge ( )
inline

Definition at line 992 of file archive_options.hpp.

◆ archive_options_merge() [2/3]

libdar::archive_options_merge::archive_options_merge ( const archive_options_merge ref)
inline

Definition at line 993 of file archive_options.hpp.

◆ archive_options_merge() [3/3]

libdar::archive_options_merge::archive_options_merge ( archive_options_merge &&  ref)
inlinenoexcept

Definition at line 994 of file archive_options.hpp.

◆ ~archive_options_merge()

libdar::archive_options_merge::~archive_options_merge ( )
inline

Definition at line 997 of file archive_options.hpp.

Member Function Documentation

◆ get_allow_over()

bool libdar::archive_options_merge::get_allow_over ( ) const
inline

Definition at line 1202 of file archive_options.hpp.

◆ get_auxiliary_ref()

std::shared_ptr< archive > libdar::archive_options_merge::get_auxiliary_ref ( ) const
inline

Definition at line 1199 of file archive_options.hpp.

◆ get_compr_mask()

const mask & libdar::archive_options_merge::get_compr_mask ( ) const
inline

Definition at line 1223 of file archive_options.hpp.

◆ get_compression()

compression libdar::archive_options_merge::get_compression ( ) const
inline

Definition at line 1211 of file archive_options.hpp.

◆ get_compression_block_size()

U_I libdar::archive_options_merge::get_compression_block_size ( ) const
inline

Definition at line 1213 of file archive_options.hpp.

◆ get_compression_level()

U_I libdar::archive_options_merge::get_compression_level ( ) const
inline

Definition at line 1212 of file archive_options.hpp.

◆ get_crypto_algo()

crypto_algo libdar::archive_options_merge::get_crypto_algo ( ) const
inline

Definition at line 1218 of file archive_options.hpp.

◆ get_crypto_pass()

const secu_string & libdar::archive_options_merge::get_crypto_pass ( ) const
inline

Definition at line 1219 of file archive_options.hpp.

◆ get_crypto_size()

U_32 libdar::archive_options_merge::get_crypto_size ( ) const
inline

Definition at line 1220 of file archive_options.hpp.

◆ get_decremental_mode()

bool libdar::archive_options_merge::get_decremental_mode ( ) const
inline

Definition at line 1230 of file archive_options.hpp.

◆ get_delta_mask()

const mask & libdar::archive_options_merge::get_delta_mask ( ) const
inline

Definition at line 1241 of file archive_options.hpp.

◆ get_delta_sig_min_size()

const infinint & libdar::archive_options_merge::get_delta_sig_min_size ( ) const
inline

Definition at line 1243 of file archive_options.hpp.

◆ get_delta_signature()

bool libdar::archive_options_merge::get_delta_signature ( ) const
inline

Definition at line 1240 of file archive_options.hpp.

◆ get_display_skipped()

bool libdar::archive_options_merge::get_display_skipped ( ) const
inline

Definition at line 1208 of file archive_options.hpp.

◆ get_display_treated()

bool libdar::archive_options_merge::get_display_treated ( ) const
inline

Definition at line 1206 of file archive_options.hpp.

◆ get_display_treated_only_dir()

bool libdar::archive_options_merge::get_display_treated_only_dir ( ) const
inline

Definition at line 1207 of file archive_options.hpp.

◆ get_ea_mask()

const mask & libdar::archive_options_merge::get_ea_mask ( ) const
inline

Definition at line 1216 of file archive_options.hpp.

◆ get_empty()

bool libdar::archive_options_merge::get_empty ( ) const
inline

Definition at line 1225 of file archive_options.hpp.

◆ get_empty_dir()

bool libdar::archive_options_merge::get_empty_dir ( ) const
inline

Definition at line 1210 of file archive_options.hpp.

◆ get_entrepot()

const std::shared_ptr< entrepot > & libdar::archive_options_merge::get_entrepot ( ) const
inline

Definition at line 1236 of file archive_options.hpp.

◆ get_execute()

const std::string & libdar::archive_options_merge::get_execute ( ) const
inline

Definition at line 1217 of file archive_options.hpp.

◆ get_first_slice_size()

const infinint & libdar::archive_options_merge::get_first_slice_size ( ) const
inline

Definition at line 1215 of file archive_options.hpp.

◆ get_fsa_scope()

const fsa_scope & libdar::archive_options_merge::get_fsa_scope ( ) const
inline

Definition at line 1237 of file archive_options.hpp.

◆ get_gnupg_recipients()

const std::vector< std::string > & libdar::archive_options_merge::get_gnupg_recipients ( ) const
inline

Definition at line 1221 of file archive_options.hpp.

◆ get_gnupg_signatories()

const std::vector< std::string > & libdar::archive_options_merge::get_gnupg_signatories ( ) const
inline

Definition at line 1222 of file archive_options.hpp.

◆ get_has_delta_mask_been_set()

bool libdar::archive_options_merge::get_has_delta_mask_been_set ( ) const
inline

Definition at line 1242 of file archive_options.hpp.

◆ get_hash_algo()

hash_algo libdar::archive_options_merge::get_hash_algo ( ) const
inline

Definition at line 1234 of file archive_options.hpp.

◆ get_info_details()

bool libdar::archive_options_merge::get_info_details ( ) const
inline

Definition at line 1205 of file archive_options.hpp.

◆ get_iteration_count()

const infinint & libdar::archive_options_merge::get_iteration_count ( ) const
inline

Definition at line 1244 of file archive_options.hpp.

◆ get_kdf_hash()

hash_algo libdar::archive_options_merge::get_kdf_hash ( ) const
inline

Definition at line 1245 of file archive_options.hpp.

◆ get_keep_compressed()

bool libdar::archive_options_merge::get_keep_compressed ( ) const
inline

Definition at line 1226 of file archive_options.hpp.

◆ get_min_compr_size()

const infinint & libdar::archive_options_merge::get_min_compr_size ( ) const
inline

Definition at line 1224 of file archive_options.hpp.

◆ get_multi_threaded_compress()

U_I libdar::archive_options_merge::get_multi_threaded_compress ( ) const
inline

Definition at line 1239 of file archive_options.hpp.

◆ get_multi_threaded_crypto()

U_I libdar::archive_options_merge::get_multi_threaded_crypto ( ) const
inline

Definition at line 1238 of file archive_options.hpp.

◆ get_overwriting_rules()

const crit_action & libdar::archive_options_merge::get_overwriting_rules ( ) const
inline

Definition at line 1204 of file archive_options.hpp.

◆ get_pause()

const infinint & libdar::archive_options_merge::get_pause ( ) const
inline

Definition at line 1209 of file archive_options.hpp.

◆ get_selection()

const mask & libdar::archive_options_merge::get_selection ( ) const
inline

Definition at line 1200 of file archive_options.hpp.

◆ get_sequential_marks()

bool libdar::archive_options_merge::get_sequential_marks ( ) const
inline

Definition at line 1231 of file archive_options.hpp.

◆ get_sig_block_len()

delta_sig_block_size libdar::archive_options_merge::get_sig_block_len ( ) const
inline

Definition at line 1246 of file archive_options.hpp.

◆ get_slice_group_ownership()

const std::string & libdar::archive_options_merge::get_slice_group_ownership ( ) const
inline

Definition at line 1229 of file archive_options.hpp.

◆ get_slice_min_digits()

infinint libdar::archive_options_merge::get_slice_min_digits ( ) const
inline

Definition at line 1235 of file archive_options.hpp.

◆ get_slice_permission()

const std::string & libdar::archive_options_merge::get_slice_permission ( ) const
inline

Definition at line 1227 of file archive_options.hpp.

◆ get_slice_size()

const infinint & libdar::archive_options_merge::get_slice_size ( ) const
inline

Definition at line 1214 of file archive_options.hpp.

◆ get_slice_user_ownership()

const std::string & libdar::archive_options_merge::get_slice_user_ownership ( ) const
inline

Definition at line 1228 of file archive_options.hpp.

◆ get_sparse_file_min_size()

infinint libdar::archive_options_merge::get_sparse_file_min_size ( ) const
inline

Definition at line 1232 of file archive_options.hpp.

◆ get_subtree()

const mask & libdar::archive_options_merge::get_subtree ( ) const
inline

Definition at line 1201 of file archive_options.hpp.

◆ get_user_comment()

const std::string & libdar::archive_options_merge::get_user_comment ( ) const
inline

Definition at line 1233 of file archive_options.hpp.

◆ get_warn_over()

bool libdar::archive_options_merge::get_warn_over ( ) const
inline

Definition at line 1203 of file archive_options.hpp.

◆ operator=() [1/2]

archive_options_merge & libdar::archive_options_merge::operator= ( archive_options_merge &&  ref)
inlinenoexcept

Definition at line 996 of file archive_options.hpp.

◆ operator=() [2/2]

archive_options_merge & libdar::archive_options_merge::operator= ( const archive_options_merge ref)
inline

Definition at line 995 of file archive_options.hpp.

◆ set_allow_over()

void libdar::archive_options_merge::set_allow_over ( bool  allow_over)
inline

defines whether overwritting is allowed or not

Definition at line 1023 of file archive_options.hpp.

◆ set_auxiliary_ref()

void libdar::archive_options_merge::set_auxiliary_ref ( std::shared_ptr< archive ref)
inline

Definition at line 1004 of file archive_options.hpp.

◆ set_compression()

void libdar::archive_options_merge::set_compression ( compression  compr_algo)
inline

set the compression algorithm to be used

Definition at line 1055 of file archive_options.hpp.

◆ set_compression_block_size()

void libdar::archive_options_merge::set_compression_block_size ( U_I  compression_block_size)
inline

set the compression block size (0 for streamed compression)

Definition at line 1061 of file archive_options.hpp.

◆ set_compression_level()

void libdar::archive_options_merge::set_compression_level ( U_I  compression_level)
inline

set the compression level (from 1 to 9)

Definition at line 1058 of file archive_options.hpp.

◆ set_crypto_algo()

void libdar::archive_options_merge::set_crypto_algo ( crypto_algo  crypto)
inline

set the cypher to use

Definition at line 1094 of file archive_options.hpp.

◆ set_crypto_pass()

void libdar::archive_options_merge::set_crypto_pass ( const secu_string pass)
inline

set the pass the password / passphrase to use. Giving an empty string makes the password asked interactively through the dialog argument if encryption has been set.

Definition at line 1098 of file archive_options.hpp.

◆ set_crypto_size()

void libdar::archive_options_merge::set_crypto_size ( U_32  crypto_size)
inline

set the size of the encryption by block to use

Definition at line 1101 of file archive_options.hpp.

◆ set_decremental_mode()

void libdar::archive_options_merge::set_decremental_mode ( bool  mode)
inline

if set to true use a merging mode suitable to build a decremental backup from two full backups (see Notes)

Definition at line 1136 of file archive_options.hpp.

◆ set_delta_sig_min_size()

void libdar::archive_options_merge::set_delta_sig_min_size ( const infinint val)
inline

whether to never calculate delta signature for files which size is smaller or equal to the given argument

Note
by default a min size of 10 kiB is used

Definition at line 1184 of file archive_options.hpp.

◆ set_delta_signature()

void libdar::archive_options_merge::set_delta_signature ( bool  val)
inline

whether signature to base binary delta on the future has to be calculated and stored beside saved files

Note
the default is true, which lead to preserve delta signature over merging, but not to calculate new ones unless a mask is given to set_delta_mask() in which case signature are dropped / preserved / added in regard to this mask. If set_delta_signature() is false, providing a mask has no effect, no signature will be transfered nor calculated in the resulting merged archive.

Definition at line 1176 of file archive_options.hpp.

◆ set_display_skipped()

void libdar::archive_options_merge::set_display_skipped ( bool  display_skipped)
inline

whether to display files that have been excluded by filters

Definition at line 1046 of file archive_options.hpp.

◆ set_display_treated()

void libdar::archive_options_merge::set_display_treated ( bool  display_treated,
bool  only_dir 
)
inline

defines whether to show treated files

Parameters
[in]display_treatedtrue to display processed inodes
[in]only_dironly display the current directory under processing, not its individual files

Definition at line 1043 of file archive_options.hpp.

◆ set_empty()

void libdar::archive_options_merge::set_empty ( bool  empty)
inline

defines whether we do a dry-run execution

Definition at line 1121 of file archive_options.hpp.

◆ set_empty_dir()

void libdar::archive_options_merge::set_empty_dir ( bool  empty_dir)
inline

defines whether we need to store ignored directories as empty

Definition at line 1052 of file archive_options.hpp.

◆ set_entrepot()

void libdar::archive_options_merge::set_entrepot ( const std::shared_ptr< entrepot > &  entr)
inline

defines the protocol to use for slices

Definition at line 1154 of file archive_options.hpp.

◆ set_execute()

void libdar::archive_options_merge::set_execute ( const std::string &  execute)
inline

set the command to execute after each slice creation

several macros are available:

  • %n : the number of the just created slice
  • %N : the slice number with padded zeros according to slice_min_digits given option
  • %b : the archive basename
  • %p : the slices path
  • %e : the archive extension (usually "dar")
  • %c : the archive context ("init", "operation" or "last_slice") see dar(1) man page for more details
  • %%% : substitued by %%

Definition at line 1091 of file archive_options.hpp.

◆ set_fsa_scope()

void libdar::archive_options_merge::set_fsa_scope ( const fsa_scope scope)
inline

defines the FSA (Filesystem Specific Attribute) to only consider (by default all FSA are considered)

Definition at line 1157 of file archive_options.hpp.

◆ set_gnupg_recipients()

void libdar::archive_options_merge::set_gnupg_recipients ( const std::vector< std::string > &  gnupg_recipients)
inline

set the list of recipients that will be able to read the archive

Note
more details for the same option of archive_options_create
since release 2.7.0 if a given std::string in the list contains an '@' the string is assumed to be an email and search is done in the keyring for that field type, else it is assumed to be a keyid.

Definition at line 1107 of file archive_options.hpp.

◆ set_gnupg_signatories()

void libdar::archive_options_merge::set_gnupg_signatories ( const std::vector< std::string > &  gnupg_signatories)
inline

the private keys matching the email of the provided list are used to sign the archive random key

Note
since release 2.7.0 if a given std::string in the list contains an '@' the string is assumed to be an email and search is done in the keyring for that field type, else it is assumed to be a keyid.

Definition at line 1112 of file archive_options.hpp.

◆ set_info_details()

void libdar::archive_options_merge::set_info_details ( bool  info_details)
inline

defines whether the user needs detailed output of the operation

Note
in API 5.5.x and before this switch drove the displaying of processing messages and treated files. now it only drives the display of processing messages, use set_display_treated to define whether files under treatement should be display or not

Definition at line 1037 of file archive_options.hpp.

◆ set_iteration_count()

void libdar::archive_options_merge::set_iteration_count ( const infinint val)
inline

key derivation

Definition at line 1187 of file archive_options.hpp.

◆ set_kdf_hash()

void libdar::archive_options_merge::set_kdf_hash ( hash_algo  algo)
inline

hash algo used for key derivation

Definition at line 1190 of file archive_options.hpp.

◆ set_keep_compressed()

void libdar::archive_options_merge::set_keep_compressed ( bool  keep_compressed)
inline

make dar ignore the 'algo' argument and do not uncompress / compress files that are selected for merging

Definition at line 1124 of file archive_options.hpp.

◆ set_min_compr_size()

void libdar::archive_options_merge::set_min_compr_size ( const infinint min_compr_size)
inline

defines file size under which to never compress

Definition at line 1118 of file archive_options.hpp.

◆ set_multi_threaded()

void libdar::archive_options_merge::set_multi_threaded ( bool  val)
inline

whether libdar is allowed to spawn several threads to possibily work faster on multicore CPU (requires libthreadar)

Deprecated:
this call is deprecated, see set_multi_threaded_*() more specific calls
Note
setting this to true is equivalent to calling set_mutli_threaded_crypto(2)

Definition at line 1163 of file archive_options.hpp.

◆ set_multi_threaded_compress()

void libdar::archive_options_merge::set_multi_threaded_compress ( U_I  num)
inline

how much thread libdar will use for compression (need libthreadar too and compression_block_size > 0)

Definition at line 1169 of file archive_options.hpp.

◆ set_multi_threaded_crypto()

void libdar::archive_options_merge::set_multi_threaded_crypto ( U_I  num)
inline

how much thread libdar will use for cryptography (need libthreadar to be effective)

Definition at line 1166 of file archive_options.hpp.

◆ set_pause()

void libdar::archive_options_merge::set_pause ( const infinint pause)
inline

set a pause beteween slices. Set to zero does not pause at all, set to 1 makes libdar pauses each slice, set to 2 makes libdar pause each 2 slices and so on.

Definition at line 1049 of file archive_options.hpp.

◆ set_sequential_marks()

void libdar::archive_options_merge::set_sequential_marks ( bool  sequential)
inline

whether to activate escape sequence aka tape marks to allow sequential reading of the archive

Definition at line 1139 of file archive_options.hpp.

◆ set_sig_block_len()

void libdar::archive_options_merge::set_sig_block_len ( delta_sig_block_size  val)
inline

block size to use to build delta signatures

Definition at line 1193 of file archive_options.hpp.

References libdar::delta_sig_block_size::check().

◆ set_slice_group_ownership()

void libdar::archive_options_merge::set_slice_group_ownership ( const std::string &  slice_group_ownership)
inline

if not an empty string set the group ownership of slices accordingly

Definition at line 1133 of file archive_options.hpp.

◆ set_slice_min_digits()

void libdar::archive_options_merge::set_slice_min_digits ( infinint  val)
inline

defines the minimum digit a slice must have concerning its number, zeros will be prepended as much as necessary to respect this

Definition at line 1151 of file archive_options.hpp.

◆ set_slice_permission()

void libdar::archive_options_merge::set_slice_permission ( const std::string &  slice_permission)
inline

if not an empty string set the slice permission according to the octal value given.

Definition at line 1127 of file archive_options.hpp.

◆ set_slice_user_ownership()

void libdar::archive_options_merge::set_slice_user_ownership ( const std::string &  slice_user_ownership)
inline

if not an empty string set the user ownership of slices accordingly

Definition at line 1130 of file archive_options.hpp.

◆ set_slicing()

void libdar::archive_options_merge::set_slicing ( const infinint file_size,
const infinint first_file_size = 0 
)
inline

define the archive slicing

Parameters
[in]file_sizeset the slice size in byte (0 for a single slice whatever its size is)
[in]first_file_sizeset the first file size
Note
if not specified or set to zero, first_file_size is considered equal to file_size

Definition at line 1068 of file archive_options.hpp.

◆ set_sparse_file_min_size()

void libdar::archive_options_merge::set_sparse_file_min_size ( const infinint size)
inline

whether to try to detect sparse files

Definition at line 1142 of file archive_options.hpp.

◆ set_subtree()

void libdar::archive_options_merge::set_subtree ( const mask subtree)

defines the directories and files to consider

Note
WARNING: The filter mechanism used here is common to all operations and works by comparing full paths, while in the other hand, paths stored in the libdar archive are all relative to what was provided as fs_root at backup time. To have this filter mecanism working in the context of merging, where no fs_root can be provided to transform relative paths to absolute paths, libdar will emulate an fs_root with the pseudo root value of the path::FAKE_ROOT field. This is invisible form the libdar API user except when relying on mask_list objects, which cannot thus receive full path as those would not be prepended by path::FAKE_ROOT as fs_root value, because fs_root prefixing is only performed for relative paths.

◆ set_user_comment()

void libdar::archive_options_merge::set_user_comment ( const std::string &  comment)
inline

specify a user comment in the archive (always in clear text!)

Definition at line 1145 of file archive_options.hpp.

◆ set_warn_over()

void libdar::archive_options_merge::set_warn_over ( bool  warn_over)
inline

defines whether a warning shall be issued before overwriting

Definition at line 1026 of file archive_options.hpp.

Member Data Documentation

◆ has_delta_mask_been_set

bool libdar::archive_options_merge::has_delta_mask_been_set
private

Definition at line 1293 of file archive_options.hpp.

◆ x_allow_over

bool libdar::archive_options_merge::x_allow_over
private

Definition at line 1253 of file archive_options.hpp.

◆ x_compr_algo

compression libdar::archive_options_merge::x_compr_algo
private

Definition at line 1262 of file archive_options.hpp.

◆ x_compr_mask

mask* libdar::archive_options_merge::x_compr_mask
private

Definition at line 1274 of file archive_options.hpp.

◆ x_compression_block_size

U_I libdar::archive_options_merge::x_compression_block_size
private

Definition at line 1264 of file archive_options.hpp.

◆ x_compression_level

U_I libdar::archive_options_merge::x_compression_level
private

Definition at line 1263 of file archive_options.hpp.

◆ x_crypto

crypto_algo libdar::archive_options_merge::x_crypto
private

Definition at line 1269 of file archive_options.hpp.

◆ x_crypto_size

U_32 libdar::archive_options_merge::x_crypto_size
private

Definition at line 1271 of file archive_options.hpp.

◆ x_decremental

bool libdar::archive_options_merge::x_decremental
private

Definition at line 1281 of file archive_options.hpp.

◆ x_delta_mask

mask* libdar::archive_options_merge::x_delta_mask
private

Definition at line 1292 of file archive_options.hpp.

◆ x_delta_sig_min_size

infinint libdar::archive_options_merge::x_delta_sig_min_size
private

Definition at line 1294 of file archive_options.hpp.

◆ x_delta_signature

bool libdar::archive_options_merge::x_delta_signature
private

Definition at line 1291 of file archive_options.hpp.

◆ x_display_skipped

bool libdar::archive_options_merge::x_display_skipped
private

Definition at line 1259 of file archive_options.hpp.

◆ x_display_treated

bool libdar::archive_options_merge::x_display_treated
private

Definition at line 1257 of file archive_options.hpp.

◆ x_display_treated_only_dir

bool libdar::archive_options_merge::x_display_treated_only_dir
private

Definition at line 1258 of file archive_options.hpp.

◆ x_ea_mask

mask* libdar::archive_options_merge::x_ea_mask
private

Definition at line 1267 of file archive_options.hpp.

◆ x_empty

bool libdar::archive_options_merge::x_empty
private

Definition at line 1276 of file archive_options.hpp.

◆ x_empty_dir

bool libdar::archive_options_merge::x_empty_dir
private

Definition at line 1261 of file archive_options.hpp.

◆ x_entrepot

std::shared_ptr<entrepot> libdar::archive_options_merge::x_entrepot
private

Definition at line 1287 of file archive_options.hpp.

◆ x_execute

std::string libdar::archive_options_merge::x_execute
private

Definition at line 1268 of file archive_options.hpp.

◆ x_file_size

infinint libdar::archive_options_merge::x_file_size
private

Definition at line 1265 of file archive_options.hpp.

◆ x_first_file_size

infinint libdar::archive_options_merge::x_first_file_size
private

Definition at line 1266 of file archive_options.hpp.

◆ x_gnupg_recipients

std::vector<std::string> libdar::archive_options_merge::x_gnupg_recipients
private

Definition at line 1272 of file archive_options.hpp.

◆ x_gnupg_signatories

std::vector<std::string> libdar::archive_options_merge::x_gnupg_signatories
private

Definition at line 1273 of file archive_options.hpp.

◆ x_hash

hash_algo libdar::archive_options_merge::x_hash
private

Definition at line 1285 of file archive_options.hpp.

◆ x_info_details

bool libdar::archive_options_merge::x_info_details
private

Definition at line 1256 of file archive_options.hpp.

◆ x_iteration_count

infinint libdar::archive_options_merge::x_iteration_count
private

Definition at line 1295 of file archive_options.hpp.

◆ x_kdf_hash

hash_algo libdar::archive_options_merge::x_kdf_hash
private

Definition at line 1296 of file archive_options.hpp.

◆ x_keep_compressed

bool libdar::archive_options_merge::x_keep_compressed
private

Definition at line 1277 of file archive_options.hpp.

◆ x_min_compr_size

infinint libdar::archive_options_merge::x_min_compr_size
private

Definition at line 1275 of file archive_options.hpp.

◆ x_multi_threaded_compress

U_I libdar::archive_options_merge::x_multi_threaded_compress
private

Definition at line 1290 of file archive_options.hpp.

◆ x_multi_threaded_crypto

U_I libdar::archive_options_merge::x_multi_threaded_crypto
private

Definition at line 1289 of file archive_options.hpp.

◆ x_overwrite

crit_action* libdar::archive_options_merge::x_overwrite
private

Definition at line 1255 of file archive_options.hpp.

◆ x_pass

secu_string libdar::archive_options_merge::x_pass
private

Definition at line 1270 of file archive_options.hpp.

◆ x_pause

infinint libdar::archive_options_merge::x_pause
private

Definition at line 1260 of file archive_options.hpp.

◆ x_ref

std::shared_ptr<archive> libdar::archive_options_merge::x_ref
private

Definition at line 1250 of file archive_options.hpp.

◆ x_scope

fsa_scope libdar::archive_options_merge::x_scope
private

Definition at line 1288 of file archive_options.hpp.

◆ x_selection

mask* libdar::archive_options_merge::x_selection
private

Definition at line 1251 of file archive_options.hpp.

◆ x_sequential_marks

bool libdar::archive_options_merge::x_sequential_marks
private

Definition at line 1282 of file archive_options.hpp.

◆ x_sig_block_len

delta_sig_block_size libdar::archive_options_merge::x_sig_block_len
private

Definition at line 1297 of file archive_options.hpp.

◆ x_slice_group_ownership

std::string libdar::archive_options_merge::x_slice_group_ownership
private

Definition at line 1280 of file archive_options.hpp.

◆ x_slice_min_digits

infinint libdar::archive_options_merge::x_slice_min_digits
private

Definition at line 1286 of file archive_options.hpp.

◆ x_slice_permission

std::string libdar::archive_options_merge::x_slice_permission
private

Definition at line 1278 of file archive_options.hpp.

◆ x_slice_user_ownership

std::string libdar::archive_options_merge::x_slice_user_ownership
private

Definition at line 1279 of file archive_options.hpp.

◆ x_sparse_file_min_size

infinint libdar::archive_options_merge::x_sparse_file_min_size
private

Definition at line 1283 of file archive_options.hpp.

◆ x_subtree

mask* libdar::archive_options_merge::x_subtree
private

Definition at line 1252 of file archive_options.hpp.

◆ x_user_comment

std::string libdar::archive_options_merge::x_user_comment
private

Definition at line 1284 of file archive_options.hpp.

◆ x_warn_over

bool libdar::archive_options_merge::x_warn_over
private

Definition at line 1254 of file archive_options.hpp.


The documentation for this class was generated from the following file: