22 unsigned int alignment;
23 unsigned int layout_dimension;
24 dimension_info(
size_t n = 0,
unsigned int a = 1,
unsigned int ld = 0)
25 : resolution(n), alignment(a), layout_dimension(ld) {}
33 explicit data_format(
const std::string& description);
70 bool set_data_format(
const std::string& description);
73 unsigned align = 1,
unsigned d0 = 0,
unsigned d1 = 0,
unsigned d2 = 0,
unsigned d3 = 0);
76 unsigned align = 1,
unsigned d0 = 0,
unsigned d1 = 0,
unsigned d2 = 0,
unsigned d3 = 0);
79 unsigned align = 1,
unsigned d0 = 0,
unsigned d1 = 0,
unsigned d2 = 0,
unsigned d3 = 0);
82 unsigned align = 1,
unsigned d0 = 0,
unsigned d1 = 0,
unsigned d2 = 0,
unsigned d3 = 0);
85 unsigned align = 1,
unsigned d0 = 0,
unsigned d1 = 0,
unsigned d2 = 0,
unsigned d3 = 0);
88 unsigned align = 1,
unsigned d0 = 0,
unsigned d1 = 0,
unsigned d2 = 0,
unsigned d3 = 0);
91 unsigned align = 1,
unsigned d0 = 0,
unsigned d1 = 0,
unsigned d2 = 0,
unsigned d3 = 0);
94 unsigned align = 1,
unsigned d0 = 0,
unsigned d1 = 0,
unsigned d2 = 0,
unsigned d3 = 0);
96 friend FRIEND_MEMBER_API std::ostream& operator << (std::ostream& os,
const data_format& df);
98 void set_dimensions(
size_t _d0,
size_t _d1 = -1,
size_t _d2 = -1,
size_t _d3 = -1);
100 unsigned get_nr_dimensions()
const;
102 void set_nr_dimensions(
unsigned _d);
104 size_t get_resolution(
unsigned i)
const;
106 size_t get_width()
const;
108 size_t get_height()
const;
110 size_t get_depth()
const;
112 size_t get_nr_time_steps()
const;
114 size_t get_nr_entries()
const;
116 size_t get_nr_bytes()
const;
118 void set_resolution(
unsigned i,
size_t resolution);
120 void set_width(
size_t _width);
122 void set_height(
size_t _height);
124 void set_depth(
size_t _depth);
126 void set_nr_time_steps(
size_t _nr_time_steps);
128 unsigned get_entry_alignment()
const;
132 unsigned get_alignment(
unsigned i)
const;
134 void set_entry_alignment(
unsigned _a);
137 void set_alignment(
unsigned i,
unsigned _a);
139 unsigned get_layout_dimension(
unsigned dim)
const;
141 void set_layout_dimension(
unsigned dim,
unsigned layout_dim);