43 Topology(
long alignment_offset,
unsigned long optimal_io_size);
44 Topology(
const Topology& topology);
45 Topology(Topology&& topology) =
default;
48 Topology& operator=(
const Topology& topology);
49 Topology& operator=(Topology&& topology) =
default;
51 long get_alignment_offset()
const;
52 void set_alignment_offset(
long alignment_offset);
54 unsigned long get_optimal_io_size()
const;
55 void set_optimal_io_size(
unsigned long optimal_io_size);
57 unsigned long get_minimal_grain()
const;
58 void set_minimal_grain(
unsigned long minimal_grain);
60 bool operator==(
const Topology& rhs)
const;
61 bool operator!=(
const Topology& rhs)
const;
63 friend std::ostream& operator<<(std::ostream& s,
const Topology& topology);
70 const Impl& get_impl()
const;
72 friend bool getChildValue(
const xmlNode* node,
const char* name, Topology& topology);
73 friend void setChildValue(xmlNode* node,
const char* name,
const Topology& topology);
77 const std::unique_ptr<Impl> impl;