Salome HOME
Merge changes from 'master' branch.
[plugins/netgenplugin.git] / src / NETGENPlugin / NETGENPlugin_Hypothesis.hxx
index d61f051593974195e165a4db281dc5ec2b13d627..8f1800ee0d5cda3dc78d150ca709f27ad39504a7 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2014  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -45,7 +45,7 @@ class NETGENPLUGIN_EXPORT NETGENPlugin_Hypothesis: public SMESH_Hypothesis
 {
 public:
 
-  NETGENPlugin_Hypothesis(int hypId, int studyId, SMESH_Gen * gen);
+  NETGENPlugin_Hypothesis(int hypId, SMESH_Gen * gen);
 
   void SetMaxSize(double theSize);
   double GetMaxSize() const { return _maxSize; }
@@ -83,6 +83,11 @@ public:
   void SetNbSegPerRadius(double theVal);
   double GetNbSegPerRadius() const { return _nbSegPerRadius; }
 
+  void SetChordalErrorEnabled(bool value);
+  double GetChordalErrorEnabled() const { return _chordalErrorEnabled; }
+  void SetChordalError(double value);
+  double GetChordalError() const { return _chordalError; }
+
   typedef std::map<std::string, double> TLocalSize;
   static TLocalSize GetDefaultLocalSize() { return TLocalSize(); }
   void SetLocalSizeOnEntry(const std::string& entry, double localSize);
@@ -90,6 +95,9 @@ public:
   const TLocalSize& GetLocalSizesAndEntries() const { return _localSize; }
   void UnsetLocalSizeOnEntry(const std::string& entry);
 
+  void SetMeshSizeFile(const std::string& fileName);
+  const std::string& GetMeshSizeFile() const { return _meshSizeFile; }
+
   void SetQuadAllowed(bool theVal);
   bool GetQuadAllowed() const { return _quadAllowed; }
 
@@ -106,6 +114,7 @@ public:
   static double GetDefaultGrowthRate();
   static double GetDefaultNbSegPerEdge();
   static double GetDefaultNbSegPerRadius();
+  static double GetDefaultChordalError();
   static bool GetDefaultSecondOrder();
   static bool GetDefaultOptimize();
   static bool GetDefaultQuadAllowed();
@@ -113,10 +122,8 @@ public:
   static bool GetDefaultFuseEdges();
 
   // Persistence
-  virtual ostream & SaveTo(ostream & save);
-  virtual istream & LoadFrom(istream & load);
-  friend NETGENPLUGIN_EXPORT ostream & operator <<(ostream & save, NETGENPlugin_Hypothesis & hyp);
-  friend NETGENPLUGIN_EXPORT istream & operator >>(istream & load, NETGENPlugin_Hypothesis & hyp);
+  virtual std::ostream & SaveTo(std::ostream & save);
+  virtual std::istream & LoadFrom(std::istream & load);
 
   /*!
    * \brief Does nothing
@@ -138,9 +145,12 @@ private:
   double        _nbSegPerEdge;
   double        _nbSegPerRadius;
   Fineness      _fineness;
+  bool          _chordalErrorEnabled;
+  double        _chordalError;
   bool          _secondOrder;
   bool          _optimize;
   TLocalSize    _localSize;
+  std::string   _meshSizeFile;
   bool          _quadAllowed;
   bool          _surfaceCurvature;
   bool          _fuseEdges;