23 #ifndef STORAGE_HOLDER_H 24 #define STORAGE_HOLDER_H 27 #include <libxml/tree.h> 29 #include <boost/noncopyable.hpp> 31 #include "storage/Devices/Device.h" 48 class Holder :
private boost::noncopyable
54 sid_t get_source_sid()
const;
55 sid_t get_target_sid()
const;
57 bool operator==(
const Holder& rhs)
const;
58 bool operator!=(
const Holder& rhs)
const;
64 Impl& get_impl() {
return *impl; }
65 const Impl& get_impl()
const {
return *impl; }
67 virtual Holder* clone()
const = 0;
69 void save(xmlNode* node)
const;
78 void load(
Devicegraph* devicegraph,
const xmlNode* node);
85 const std::unique_ptr<Impl> impl;
The master container of the libstorage.
Definition: Devicegraph.h:133
An abstract base class of storage devices, and a vertex in the Devicegraph.
Definition: Device.h:73
Base class for storage exceptions.
Definition: Exception.h:113
The storage namespace.
Definition: Actiongraph.h:36
unsigned int sid_t
An integer storage ID.
Definition: Device.h:64
friend std::ostream & operator<<(std::ostream &str, const Exception &obj)
Exception stream output.