Disk ARchive  2.5.7
Full featured and portable backup and archiving tool
cat_door.hpp
Go to the documentation of this file.
1 /*********************************************************************/
2 // dar - disk archive - a backup/restoration program
3 // Copyright (C) 2002-2052 Denis Corbin
4 //
5 // This program is free software; you can redistribute it and/or
6 // modify it under the terms of the GNU General Public License
7 // as published by the Free Software Foundation; either version 2
8 // of the License, or (at your option) any later version.
9 //
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
14 //
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software
17 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 //
19 // to contact the author : http://dar.linux.free.fr/email.html
20 /*********************************************************************/
21 
25 
26 #ifndef CAT_DOOR_HPP
27 #define CAT_DOOR_HPP
28 
29 #include "../my_config.h"
30 
31 extern "C"
32 {
33 } // end extern "C"
34 
35 #include "cat_file.hpp"
36 #include "cat_tools.hpp"
37 
38 namespace libdar
39 {
40 
43 
44 
46  class cat_door : public cat_file
47  {
48  public:
49  cat_door(const infinint & xuid,
50  const infinint & xgid,
51  U_16 xperm,
52  const datetime & last_access,
53  const datetime & last_modif,
54  const datetime & last_change,
55  const std::string & src,
56  const path & che,
57  const infinint & fs_device) : cat_file(xuid, xgid, xperm, last_access, last_modif,
58  last_change, src, che, 0, fs_device, false) {};
59  cat_door(user_interaction & dialog,
60  const smart_pointer<pile_descriptor> & pdesc,
61  const archive_version & reading_ver,
62  saved_status saved,
63  compression default_algo,
64  bool small) : cat_file(dialog, pdesc, reading_ver, saved, default_algo, small) {};
65 
66  bool operator == (const cat_entree & ref) const;
67 
68  unsigned char signature() const { return mk_signature('o', get_saved_status()); };
69 
70  generic_file *get_data(get_data_mode mode) const; // inherited from class cat_file
71 
72  };
73 
75 
76 } // end of namespace
77 
78 #endif
79 
class used to record plain files in a catalogue
This is a pure virtual class that is used by libdar when interaction with the user is required...
the plain file class
Definition: cat_file.hpp:46
unsigned char signature() const
inherited class signature
Definition: cat_door.hpp:68
compression
the different compression algorithm available
Definition: compressor.hpp:43
this is the interface class from which all other data transfer classes inherit
the class for Door IPC (mainly for Solaris)
Definition: cat_door.hpp:46
bool operator==(const cat_entree &ref) const
returns true if the two object have the same content
the arbitrary large positive integer class
the root class from all other inherite for any entry in the catalogue
Definition: cat_entree.hpp:85
set of routines used by catalogue related classes
libdar namespace encapsulate all libdar symbols
Definition: archive.hpp:47
the class path is here to manipulate paths in the Unix notation: using&#39;/&#39;
Definition: path.hpp:50