21 #ifndef __XAO_XAO_HXX__
22 #define __XAO_XAO_HXX__
28 #include "XAO_Exception.hxx"
29 #include "XAO_XaoUtils.hxx"
30 #include "XAO_Geometry.hxx"
33 #pragma warning(disable:4290)
34 #pragma warning(disable:4251)
62 Xao(
const std::string& author,
const std::string& version);
120 if (m_geometry != NULL)
122 m_geometry = geometry;
134 int countGroups()
const;
140 Group* getGroup(
int index) ;
147 Group*
addGroup(XAO::Dimension dim,
const std::string& name = std::string(
"")) ;
153 bool removeGroup(
Group* group);
163 int countFields()
const;
170 XAO::Type getFieldType(
int index) ;
177 Field* getField(
int index) ;
192 Field* addField(XAO::Type type, XAO::Dimension dim,
int nbComponents,
193 const std::string& name = std::string(
""))
196 BooleanField* addBooleanField(XAO::Dimension dim,
int nbComponents,
197 const std::string& name = std::string(
"")) ;
198 IntegerField* addIntegerField(XAO::Dimension dim,
int nbComponents,
199 const std::string& name = std::string(
"")) ;
200 DoubleField* addDoubleField(XAO::Dimension dim,
int nbComponents,
201 const std::string& name = std::string(
"")) ;
202 StringField* addStringField(XAO::Dimension dim,
int nbComponents,
203 const std::string& name = std::string(
"")) ;
210 bool removeField(
Field* field);
221 bool exportXAO(
const std::string& fileName,
const std::string& shapeFileName);
226 const std::string getXML();
233 bool importXAO(
const std::string& fileName);
239 bool setXML(
const std::string& xml);
242 void checkGeometry()
const ;
243 void checkGroupIndex(
int index)
const ;
244 void checkFieldIndex(
int index)
const ;
245 void checkGroupDimension(XAO::Dimension dim)
const ;
249 std::string m_author;
251 std::string m_version;
255 std::list<Group*> m_groups;
257 std::list<Field*> m_fields;
Represents a field with boolean values.
Definition: XAO_BooleanField.hxx:43
Represents a field with double values.
Definition: XAO_DoubleField.hxx:43
A geometrical Field.
Definition: XAO_Field.hxx:46
Base class for geometries.
Definition: XAO_Geometry.hxx:43
void setReadOnly()
Sets the geometry read only.
Definition: XAO_Geometry.hxx:159
Class to represent a Geometrical Group.
Definition: XAO_Group.hxx:39
Represents a field with integer values.
Definition: XAO_IntegerField.hxx:43
Represents a field with string values.
Definition: XAO_StringField.hxx:42
Exception for XAO operations.
Definition: XAO_Exception.hxx:34
The Xao class describes the XAO format.
Definition: XAO_Xao.hxx:51
Geometry * getGeometry() const
Gets the geometry.
Definition: XAO_Xao.hxx:110
const std::string getVersion() const
Gets the version of the file.
Definition: XAO_Xao.hxx:89
const std::string getAuthor() const
Gets the author of the file.
Definition: XAO_Xao.hxx:72
void setGeometry(Geometry *geometry)
Sets the geometry.
Definition: XAO_Xao.hxx:118
void setAuthor(const std::string &author)
Sets the author of the file.
Definition: XAO_Xao.hxx:80
void setVersion(const std::string &version)
Sets the version of the file.
Definition: XAO_Xao.hxx:97
GroupPtr addGroup(const std::shared_ptr< ModelAPI_Document > &thePart, const std::list< ModelHighAPI_Selection > &theGroupList, const bool theShareSameTopology)
Create Group feature.
Definition: CollectionAPI_Group.cpp:76