Salome HOME
Initial version of interface 'CurveCreator_ISection' was created for the curve sections.
[modules/geom.git] / src / CurveCreator / CurveCreator_Section.hxx
index 0eafa06292b85cb8c2441999288e760e6012e936..076dc78091c85e665e95363cb17e03023fdb086a 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2013-2014  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2013-2015  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 #define _CurveCreator_Section_HeaderFile
 
 #include "CurveCreator.hxx"
+#include "CurveCreator_ICurve.hxx"
 
 #include <string>
 
 //! Structure to store sections representing the CurveCreator_Curve object
-struct CurveCreator_Section
+struct CURVECREATOR_EXPORT CurveCreator_Section :
+  public CurveCreator_ISection
 {
   //! Constructor. Initializes object with default values.
   CurveCreator_Section() : myName("Section"),myType(CurveCreator::Polyline), myIsClosed(false)
@@ -36,9 +38,11 @@ struct CurveCreator_Section
 
   std::string               myName; //!< section name
   CurveCreator::Coordinates myPoints;   //!< points coordinates
-  CurveCreator::Type        myType;     //!< type of the section
+  CurveCreator::SectionType myType;     //!< type of the section
   bool                      myIsClosed; //!< closed or not
 
+  //! A virtual method.
+  void GetDifferentPoints(const int theDimension, Handle(TColgp_HArray1OfPnt)& thePoints) const;
 };
 
 #endif