// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// See http://www.salome-platform.org or email : webmaster.salome@opencascade.org
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
//
//
#ifndef _SMESH_Group_HeaderFile
#define _SMESH_Group_HeaderFile
-#include <SMDSAbs_ElementType.hxx>
+#include "SMESH_SMESH.hxx"
+
+#include "SMDSAbs_ElementType.hxx"
+
#include <string>
-using namespace std;
+#include <TopoDS_Shape.hxx>
-class SMESHDS_Group;
+class SMESHDS_GroupBase;
class SMESH_Mesh;
-class SMESH_Group
+class SMESH_EXPORT SMESH_Group
{
public:
- SMESH_Group (const SMESH_Mesh* theMesh,
+ SMESH_Group (int theID,
+ const SMESH_Mesh* theMesh,
const SMDSAbs_ElementType theType,
- const char* theName);
+ const char* theName,
+ const TopoDS_Shape& theShape = TopoDS_Shape());
~SMESH_Group ();
void SetName (const char* theName) { myName = theName; }
const char* GetName () const { return myName.c_str(); }
- SMESHDS_Group * GetGroupDS () { return myGroupDS; }
+ SMESHDS_GroupBase * GetGroupDS () { return myGroupDS; }
private:
SMESH_Group (const SMESH_Group& theOther);
SMESH_Group& operator = (const SMESH_Group& theOther);
// prohibited assign operator
- SMESHDS_Group * myGroupDS;
- string myName;
-
+ SMESHDS_GroupBase * myGroupDS;
+ std::string myName;
};
#endif