20 #ifndef _OPENMBV_GROUP_H_
21 #define _OPENMBV_GROUP_H_
23 #include <openmbvcppinterface/object.h>
26 #include <boost/shared_ptr.hpp>
27 #include <boost/enable_shared_from_this.hpp>
34 ,
public boost::enable_shared_from_this<Group>
41 std::vector<boost::shared_ptr<Object> > object;
42 std::string expandStr;
45 boost::shared_ptr<H5::File> hdf5File;
46 void createHDF5File();
77 void setExpand(
bool expand) { expandStr=(expand==
true)?
"true":
"false"; }
79 bool getExpand() {
return expandStr==
"true"?
true:
false; }
82 void addObject(boost::shared_ptr<Object>
object);
84 std::vector<boost::shared_ptr<Object> >& getObjects() {
91 bool getSeparateFile() {
return separateFile; }
92 boost::shared_ptr<H5::File>& getHDF5File() {
return hdf5File; }
98 std::string
getFullName(
bool includingFileName=
false,
bool stopAtSeparateFile=
false);
107 void write(
bool writeXMLFile=
true,
bool writeH5File=
true);
112 void read(
bool readXMLFile=
true,
bool readH5File=
true);
122 xercesc::DOMElement* writeXMLFile(xercesc::DOMNode *parent);
126 return separateFile?shared_from_this():parent.lock()->getSeparateGroup();
131 boost::shared_ptr<Group> p=parent.lock();
132 return !p?shared_from_this():p->getTopLevelGroup();
void terminate()
Definition: group.cc:171
std::string getClassName()
Definition: group.h:74
void writeH5()
Definition: group.cc:162
boost::shared_ptr< Group > getSeparateGroup()
Definition: group.h:125
void readXML()
Definition: group.cc:200
Definition: objectfactory.h:40
virtual void initializeUsingXML(xercesc::DOMElement *element)
Definition: group.cc:179
void setFileName(const std::string &fn)
Definition: group.h:102
boost::shared_ptr< Group > getTopLevelGroup()
Definition: group.h:130
void setExpand(bool expand)
Definition: group.h:77
void write(bool writeXMLFile=true, bool writeH5File=true)
Definition: group.cc:224
void addObject(boost::shared_ptr< Object > object)
Definition: group.cc:52
std::string getFullName(bool includingFileName=false, bool stopAtSeparateFile=false)
Definition: group.cc:61
void read(bool readXMLFile=true, bool readH5File=true)
Definition: group.cc:271
void writeXML()
Definition: group.cc:150
void readH5()
Definition: group.cc:209
std::string getFileName()
Definition: group.h:96
void setSeparateFile(bool sepFile)
Definition: group.h:89