8 #ifndef NDFILEHDF5LAYOUT_H_ 9 #define NDFILEHDF5LAYOUT_H_ 157 { out << dset.
_str_();
return out; }
176 void _copy(
const Dataset& src);
181 size_t data_nelements;
182 size_t data_current_element;
183 size_t data_max_bytes;
184 size_t data_nelements_stored;
202 { out << hardLink.
_str_();
return out; }
246 { out << grp.
_str_();
return out; }
259 MapNDAttrSrc_t::const_iterator it_end,
260 std::set<std::string>& used_ndattribute_srcs);
263 void _copy(
const Group& src);
265 bool ndattr_default_container;
266 std::map<std::string, Dataset*> datasets;
267 std::map<std::string, Group*> groups;
268 std::map<std::string, HardLink*> hardlinks;
281 MapNDAttrSrc_t::const_iterator it_end,
282 std::set<std::string>& used_ndattribute_srcs);
int num_groups()
Definition: NDFileHDF5Layout.cpp:525
Class used for writing an Attribute with the NDFileHDF5 plugin.
Definition: NDFileHDF5Layout.h:85
Element * get_parent()
Definition: NDFileHDF5Layout.cpp:241
Definition: NDFileHDF5Layout.h:36
Definition: NDFileHDF5Layout.h:27
virtual ~Dataset()
Definition: NDFileHDF5Layout.cpp:693
friend std::ostream & operator<<(std::ostream &out, Dataset &dset)
Stream operator: use to prints a string representation of this class.
Definition: NDFileHDF5Layout.h:156
MapGroups_t & get_groups()
Definition: NDFileHDF5Layout.cpp:554
int add_attribute(Attribute &attr)
Definition: NDFileHDF5Layout.cpp:251
HardLink()
Definition: NDFileHDF5Layout.cpp:860
MapDatasets_t & get_datasets()
Definition: NDFileHDF5Layout.cpp:549
size_t data_store_size()
Definition: NDFileHDF5Layout.cpp:791
Dataset * new_dset(const std::string &name)
Definition: NDFileHDF5Layout.cpp:329
Root()
Definition: NDFileHDF5Layout.cpp:627
void data_stored()
Definition: NDFileHDF5Layout.cpp:796
Definition: NDFileHDF5Layout.h:22
void set_target(const std::string &target)
Return a string representation of the object.
Definition: NDFileHDF5Layout.cpp:891
Definition: NDFileHDF5Layout.h:41
const std::string & get_name()
Definition: NDFileHDF5Layout.cpp:236
bool is_src_constant()
Definition: NDFileHDF5Layout.cpp:111
size_t data_append_value(void *val)
Definition: NDFileHDF5Layout.cpp:765
Definition: NDFileHDF5Layout.h:38
void setOnFileOpen(bool onOpen)
Definition: NDFileHDF5Layout.cpp:49
std::string get_path(bool trailing_slash=false)
Definition: NDFileHDF5Layout.h:284
DataSource()
Definition: NDFileHDF5Layout.cpp:73
void set_ndattr_name(const std::string &name)
Definition: NDFileHDF5Layout.cpp:831
Attribute()
Definition: NDFileHDF5Layout.h:88
DataSource & operator=(const DataSource &src)
Assignment operator Copies the sources private data members to this object.
Definition: NDFileHDF5Layout.cpp:97
Definition: NDFileHDF5Layout.h:40
size_t datatype_size()
Definition: NDFileHDF5Layout.cpp:141
std::string get_src_def()
Definition: NDFileHDF5Layout.cpp:131
Definition: NDFileHDF5Layout.h:37
bool has_ndattr_name(const std::string &name)
Definition: NDFileHDF5Layout.cpp:836
virtual std::string get_path(bool trailing_slash=false)
Definition: NDFileHDF5Layout.cpp:214
bool has_attribute(const std::string &attr_name)
Definition: NDFileHDF5Layout.cpp:261
MapHardLinks_t & get_hardlinks()
Definition: NDFileHDF5Layout.cpp:559
int num_datasets()
Definition: NDFileHDF5Layout.cpp:520
Definition: NDFileHDF5Layout.h:34
bool is_src_default()
Definition: NDFileHDF5Layout.cpp:826
DataSource & data_source()
Definition: NDFileHDF5Layout.cpp:751
MapAttributes_t attributes
Definition: NDFileHDF5Layout.h:133
virtual ~Root()
Definition: NDFileHDF5Layout.h:279
DataType_t
Definition: NDFileHDF5Layout.h:33
Definition: NDFileHDF5Layout.h:39
~Attribute()
Definition: NDFileHDF5Layout.h:93
void set_default_ndattr_group()
Definition: NDFileHDF5Layout.cpp:497
When_t
Definition: NDFileHDF5Layout.h:20
Class used for writing a DataSet with the NDFileHDF5 plugin.
Definition: NDFileHDF5Layout.h:146
Definition: NDFileHDF5Layout.h:30
std::map< std::string, DataSource * > MapNDAttrSrc_t
return a map of datasets [string name, Dataset dset] which contains all datasets, marked as [source] ...
Definition: NDFileHDF5Layout.h:257
HardLink & operator=(const HardLink &src)
Definition: NDFileHDF5Layout.cpp:872
Attribute & operator=(const Attribute &src)
Definition: NDFileHDF5Layout.cpp:38
bool is_src_detector()
Definition: NDFileHDF5Layout.cpp:116
Definition: NDFileHDF5Layout.h:23
std::map< std::string, Attribute > MapAttributes_t
Definition: NDFileHDF5Layout.h:128
int find_dset(std::string &dsetname, Dataset **dest)
Definition: NDFileHDF5Layout.cpp:477
int tree_level()
Definition: NDFileHDF5Layout.cpp:266
Definition: NDFileHDF5Layout.cpp:16
Element & operator=(const Element &src)
Definition: NDFileHDF5Layout.cpp:226
Class used for writing the root of the file with the NDFileHDF5 plugin.
Definition: NDFileHDF5Layout.h:273
size_t data_num_elements()
Definition: NDFileHDF5Layout.cpp:786
void set_datatype(DataType_t type)
Definition: NDFileHDF5Layout.cpp:106
void find_dsets(DataSrc_t source, MapDatasets_t &dsets)
Definition: NDFileHDF5Layout.cpp:564
bool is_onFileOpen()
Definition: NDFileHDF5Layout.cpp:54
Group * find_ndattr_default_group()
Definition: NDFileHDF5Layout.cpp:502
friend std::ostream & operator<<(std::ostream &out, Group &grp)
Stream operator: use to prints a string representation of this class.
Definition: NDFileHDF5Layout.h:245
int find_dset_ndattr(const std::string &ndattr_name, Dataset **dset)
Definition: NDFileHDF5Layout.cpp:430
Definition: NDFileHDF5Layout.h:29
Element()
Definition: NDFileHDF5Layout.cpp:190
Definition: NDFileHDF5Layout.h:28
Group & operator=(const Group &src)
Definition: NDFileHDF5Layout.cpp:319
virtual ~HardLink()
Definition: NDFileHDF5Layout.cpp:868
std::string _str_()
Definition: NDFileHDF5Layout.cpp:711
DataType_t get_datatype()
return the string that define the source: either name of NDAttribute or constant value
Definition: NDFileHDF5Layout.cpp:136
virtual std::string get_full_name()
Definition: NDFileHDF5Layout.cpp:207
~Element()
Definition: NDFileHDF5Layout.h:118
Dataset & operator=(const Dataset &src)
Definition: NDFileHDF5Layout.cpp:701
void data_alloc_max_elements(size_t max_elements)
Definition: NDFileHDF5Layout.cpp:756
const void * data()
Definition: NDFileHDF5Layout.cpp:804
std::string _str_()
Definition: NDFileHDF5Layout.cpp:530
Describe a group element.
Definition: NDFileHDF5Layout.h:218
Definition: NDFileHDF5Layout.h:35
std::map< std::string, HardLink * > MapHardLinks_t
Definition: NDFileHDF5Layout.h:251
HardLink * new_hardlink(const std::string &name)
Create a new HardLink, insert it into the group list, set the full path name, and finally return a po...
Definition: NDFileHDF5Layout.cpp:396
virtual ~Group()
Definition: NDFileHDF5Layout.cpp:310
virtual void merge_ndattributes(MapNDAttrSrc_t::const_iterator it_begin, MapNDAttrSrc_t::const_iterator it_end, std::set< std::string > &used_ndattribute_srcs)
Definition: NDFileHDF5Layout.cpp:639
bool is_onFileClose()
Definition: NDFileHDF5Layout.cpp:60
std::string _str_()
Definition: NDFileHDF5Layout.cpp:882
std::string get_name()
Definition: NDFileHDF5Layout.cpp:44
int find_detector_default_dset(Dataset **dset)
<< search through subgroups to return a pointer to the NDAttribute default container group
Definition: NDFileHDF5Layout.cpp:451
bool is_src_ndattribute()
Definition: NDFileHDF5Layout.cpp:121
~DataSource()
Definition: NDFileHDF5Layout.h:60
Group * new_group(const std::string &name)
Create a new group, insert it into the group list, set the full path name, and finally return a point...
Definition: NDFileHDF5Layout.cpp:363
std::string name
Definition: NDFileHDF5Layout.h:134
virtual void merge_ndattributes(MapNDAttrSrc_t::const_iterator it_begin, MapNDAttrSrc_t::const_iterator it_end, std::set< std::string > &used_ndattribute_srcs)
Definition: NDFileHDF5Layout.cpp:583
Definition: NDFileHDF5Layout.h:42
Describe a generic structure element with the NDFileHDF5 plugin.
Definition: NDFileHDF5Layout.h:112
When_t get_when_to_save()
Definition: NDFileHDF5Layout.cpp:184
std::string get_full_name()
Definition: NDFileHDF5Layout.h:283
DataSource source
Definition: NDFileHDF5Layout.h:100
std::map< std::string, Dataset * > MapDatasets_t
Definition: NDFileHDF5Layout.h:250
void set_data_source(DataSource &src)
Return a string representation of the object.
Definition: NDFileHDF5Layout.cpp:739
friend std::ostream & operator<<(std::ostream &out, HardLink &hardLink)
Stream operator: use to prints a string representation of this class.
Definition: NDFileHDF5Layout.h:201
void set_src_default(bool def)
Definition: NDFileHDF5Layout.cpp:821
Definition: NDFileHDF5Layout.h:21
std::string & get_target()
Definition: NDFileHDF5Layout.cpp:896
void set_when_to_save(When_t when)
Definition: NDFileHDF5Layout.cpp:179
void _copy(const Element &src)
Definition: NDFileHDF5Layout.cpp:278
std::map< std::string, Group * > MapGroups_t
Return a string representation of the object.
Definition: NDFileHDF5Layout.h:249
MapAttributes_t & get_attributes()
Definition: NDFileHDF5Layout.cpp:246
Class used for writing a DataSource with the NDFileHDF5 plugin.
Definition: NDFileHDF5Layout.h:47
Group()
Definition: NDFileHDF5Layout.cpp:287
bool is_src(DataSrc_t src)
Definition: NDFileHDF5Layout.cpp:126
void set_const_datatype_value(DataType_t dtype, const std::string &str_val)
Definition: NDFileHDF5Layout.cpp:172
Dataset()
Definition: NDFileHDF5Layout.cpp:679
Class used for writing a HardLink with the NDFileHDF5 plugin.
Definition: NDFileHDF5Layout.h:191
DataSrc_t
Definition: NDFileHDF5Layout.h:26