Salome HOME
Updated copyright comment
[modules/hexablock.git] / src / HEXABLOCK / HexSubShape.hxx
index 240f8f12ea3cdf9cf1e11437501b80f19130e32a..b021fb3e498151562be09f68e3e3e295076cdac9 100644 (file)
@@ -1,12 +1,12 @@
 
 // class : Gestion des formes associees (Hexa 5)
 
-// Copyright (C) 2009-2013  CEA/DEN, EDF R&D
+// Copyright (C) 2009-2024  CEA, EDF
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 #ifndef __SUB_SHAPE_H_
 #define __SUB_SHAPE_H_
 
-
-
 #include "HexEltBase.hxx"
 
-#ifndef NO_CASCADE
 #include <TopoDS_Shape.hxx>
-#endif
 
 BEGIN_NAMESPACE_HEXA
 
-class SubShape : public EltBase
+class HexaExport SubShape : public EltBase
 {
 public :
     SubShape (NewShape* dad, int id, int dim);
@@ -41,9 +37,10 @@ public :
     cpchar      getParentName () const;
     int         getIdent ()             { return sub_ident ; }
     int         getDim   ()             { return sub_dim ; }
+    virtual EnumKindOfShape kindOf ()   { return kind_of ; }
 
-    const string&       getBrep  ();
-    const TopoDS_Shape& getShape ();
+    const std::string&       getBrep  ();
+    virtual const TopoDS_Shape& getShape ();
 
     void   saveXml (XmlWriter* xml);
     void   callXml (XmlWriter* xml);
@@ -57,9 +54,10 @@ protected :
     int       sub_ident;
     int       sub_dim;     // 0 = point, 1 = arete, 2 = face;
 
-    TopoDS_Shape geo_shape;
-    string       geo_brep;
-    bool         maj_brep, maj_shape;
+    TopoDS_Shape    geo_shape;
+    std::string          geo_brep;
+    bool            maj_brep, maj_shape;
+    EnumKindOfShape kind_of;
 };
 END_NAMESPACE_HEXA
 #endif