Disk ARchive 2.3.12
|
00001 /*********************************************************************/ 00002 // dar - disk archive - a backup/restoration program 00003 // Copyright (C) 2002-2052 Denis Corbin 00004 // 00005 // This program is free software; you can redistribute it and/or 00006 // modify it under the terms of the GNU General Public License 00007 // as published by the Free Software Foundation; either version 2 00008 // of the License, or (at your option) any later version. 00009 // 00010 // This program is distributed in the hope that it will be useful, 00011 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 // GNU General Public License for more details. 00014 // 00015 // You should have received a copy of the GNU General Public License 00016 // along with this program; if not, write to the Free Software 00017 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00018 // 00019 // to contact the author : dar.linux@free.fr 00020 /*********************************************************************/ 00021 // $Id: filtre.hpp,v 1.21.2.1 2010/09/12 16:32:51 edrusb Rel $ 00022 // 00023 /*********************************************************************/ 00024 00028 00029 #ifndef FILTRE_HPP 00030 #define FILTRE_HPP 00031 00032 #include "../my_config.h" 00033 #include <vector> 00034 #include "mask.hpp" 00035 #include "compressor.hpp" 00036 #include "catalogue.hpp" 00037 #include "path.hpp" 00038 #include "statistics.hpp" 00039 00040 namespace libdar 00041 { 00042 00043 extern void filtre_restore(user_interaction & dialog, 00044 const mask &filtre, 00045 const mask & subtree, 00046 catalogue & cat, 00047 bool detruire, 00048 const path & fs_racine, 00049 bool fs_allow_overwrite, 00050 bool fs_warn_overwrite, 00051 bool info_details, 00052 statistics & st, 00053 bool only_if_more_recent, 00054 const mask & ea_mask, 00055 bool flat, 00056 inode::comparison_fields what_to_check, 00057 bool warn_remove_no_match, 00058 const infinint & hourshift, 00059 bool empty, 00060 bool ea_erase, 00061 bool display_skipped); 00062 00063 extern void filtre_sauvegarde(user_interaction & dialog, 00064 const mask &filtre, 00065 const mask &subtree, 00066 compressor *stockage, 00067 catalogue & cat, 00068 catalogue &ref, 00069 const path & fs_racine, 00070 bool info_details, 00071 statistics & st, 00072 bool make_empty_dir, 00073 const mask & ea_mask, 00074 const mask &compr_mask, 00075 const infinint & min_compr_size, 00076 bool nodump, 00077 const infinint & hourshift, 00078 bool alter_time, 00079 bool same_fs, 00080 inode::comparison_fields what_to_check, 00081 bool snapshot, 00082 bool cache_directory_tagging, 00083 bool display_skipped, 00084 const infinint & fixed_date); 00085 00086 extern void filtre_difference(user_interaction & dialog, 00087 const mask &filtre, 00088 const mask &subtree, 00089 catalogue & cat, 00090 const path & fs_racine, 00091 bool info_details, 00092 statistics & st, 00093 const mask & ea_mask, 00094 bool alter_time, 00095 inode::comparison_fields what_to_check, 00096 bool display_skipped, 00097 const infinint & hourshift); 00098 00099 extern void filtre_test(user_interaction & dialog, 00100 const mask &filtre, 00101 const mask &subtree, 00102 catalogue & cat, 00103 bool info_details, 00104 statistics & st, 00105 bool display_skipped); 00106 00107 extern void filtre_isolate(user_interaction & dialog, 00108 catalogue & cat, 00109 catalogue & ref, 00110 bool info_details); 00111 00112 extern void filtre_merge(user_interaction & dialog, 00113 const mask & filtre, 00114 const mask & subtree, 00115 compressor *stockage, 00116 catalogue & cat, 00117 catalogue * ref1, 00118 catalogue * ref2, 00119 bool info_details, 00120 statistics & st, 00121 bool make_empty_dir, 00122 const mask & ea_mask, 00123 const mask & compr_mask, 00124 const infinint & min_compr_size, 00125 bool display_skipped, 00126 bool keep_compressed); 00127 00128 } // end of namespace 00129 00130 #endif