Salome HOME
scotch6.0.4 needs pthread... Quick and dirty solution to be improved
[tools/medcoupling.git] / src / MEDCoupling / MEDCouplingVoronoi.hxx
index 06dc32180510b7f79a1a271390664a1a62f36d09..261c63724e85839b32b4d03abf99b66769a56a35 100644 (file)
 #include "MEDCouplingUMesh.hxx"
 
 namespace MEDCoupling
-{ 
-  MCAuto<MEDCouplingUMesh> Voronoize2D(const MEDCouplingUMesh *m, const DataArrayDouble *points, double eps);
+{
+  class Voronizer
+  {
+  public:
+    virtual MCAuto<MEDCouplingUMesh> doIt(const MEDCouplingUMesh *m, const DataArrayDouble *points, double eps) const = 0;
+    virtual int getDimension() const = 0;
+    virtual ~Voronizer();
+  };
+
+  class Voronizer1D : public Voronizer
+  {
+  public:
+    MCAuto<MEDCouplingUMesh> doIt(const MEDCouplingUMesh *m, const DataArrayDouble *points, double eps) const;
+    int getDimension() const;
+  };
+
+  class Voronizer2D : public Voronizer
+  {
+  public:
+    MCAuto<MEDCouplingUMesh> doIt(const MEDCouplingUMesh *m, const DataArrayDouble *points, double eps) const;
+    int getDimension() const;
+  };
+
+  class Voronizer3D : public Voronizer
+  {
+  public:
+    MCAuto<MEDCouplingUMesh> doIt(const MEDCouplingUMesh *m, const DataArrayDouble *points, double eps) const;
+    int getDimension() const;
+  };
 }
 
 #endif