41#ifndef MASK_DATABASE_HPP
42#define MASK_DATABASE_HPP
44#include "../my_config.h"
67 class mask_database:
public mask
79 mask_database(
const data_dir* racine,
81 const datetime & ignore_older_than_that);
82 mask_database(
const mask_database & ref) =
default;
83 mask_database(mask_database && ref)
noexcept =
default;
84 mask_database & operator = (
const mask_database & ref) =
default;
85 mask_database & operator = (mask_database && ref)
noexcept =
default;
86 virtual ~mask_database() =
default;
92 void compose_with(
const mask & ref);
95 std::set<archive_num> get_locations()
const;
98 void set_focus(archive_num focus)
const { zoom = focus; };
102 virtual bool is_covered(
const std::string & expression)
const;
106 virtual bool is_covered(
const path & expression)
const override;
112 virtual std::string dump(
const std::string & prefix =
"")
const override {
return "database mask"; };
115 virtual mask_database *clone()
const override {
return new (std::nothrow) mask_database(*
this); };
120 mutable archive_num zoom;
121 std::shared_ptr<restore_tree> tree;
122 std::shared_ptr<mask> composition;
classes used to store directory tree information in dar_manager databases
this file contains the definition of class datetime that stores unix times in a portable way
here lies a collection of mask classes
libdar namespace encapsulate all libdar symbols
restore_tree class stores archive location needed to restore files