00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef COMMAND_LINE_HPP
00026 #define COMMAND_LINE_HPP
00027
00028 #include "../my_config.h"
00029 #include <string>
00030 #include <vector>
00031 #include "infinint.hpp"
00032 #include "compressor.hpp"
00033 #include "mask.hpp"
00034 #include "path.hpp"
00035 #include "catalogue.hpp"
00036 #include "archive.hpp"
00037
00038 using namespace std;
00039 using namespace libdar;
00040
00041 enum operation { noop, extract, create, diff, test, listing, isolate, merging };
00042
00043
00044
00045 extern bool get_args(user_interaction & dialog,
00046 const char *home,
00047 S_I argc, char *argv[], operation & op, path * & fs_root,
00048 path * & sauv_root, path * & ref_root,
00049 infinint & file_size, infinint & first_file_size,
00050 mask * & selection, mask * & subtree,
00051 string & filename, string * & ref_filename,
00052 bool & allow_over, bool & warn_over, bool & info_details,
00053 compression & algo, U_I & compression_level,
00054 bool & detruire,
00055 infinint & pause,
00056 bool & beep,
00057 bool & make_empty_dir, bool & only_more_recent,
00058 mask * & ea_mask,
00059 string & input_pipe, string & output_pipe,
00060 inode::comparison_fields & what_to_check,
00061 string & execute, string & execute_ref,
00062 string & pass, string & pass_ref,
00063 mask * & compress_mask,
00064 bool & flat,
00065 infinint & min_compr_size,
00066 bool & nodump,
00067 infinint & hourshift,
00068 bool & warn_remove_no_match,
00069 string & alteration,
00070 bool & empty,
00071 path * & on_fly_root,
00072 string * & on_fly_filename,
00073 bool & alter_atime,
00074 bool & same_fs,
00075 bool & snapshot,
00076 bool & cache_directory_tagging,
00077 U_32 & crypto_size,
00078 U_32 & crypto_size_ref,
00079 bool & ea_erase,
00080 bool & display_skipped,
00081 archive::listformat & list_mode,
00082 path * & aux_root,
00083 string * & aux_filename,
00084 string & aux_pass,
00085 string & aux_execute,
00086 U_32 & aux_crypto_size,
00087 bool & keep_compressed,
00088 infinint & fixed_date,
00089 bool & quiet);
00090
00091
00092 #endif