# knowledge of the CeCILL-B license and that you accept its terms.
# ------------------------------------------------------------------------
*/
+#include <vtkPolyData.h>
+
+class MeshModel{
+
+public:
+ MeshModel(int id);
+ MeshModel(vtkPolyData* mesh, int id);
+ ~MeshModel();
+
+ void SetMeshBase(vtkPolyData* mesh);
+ void SetMeshMemoryMode(vtkPolyData* mesh);
+ void CopySetMeshBase(vtkPolyData* mesh);
+ void ResetMeshTemp();
+ void ResetMeshTemp_();
+ vtkPolyData* GetMeshBase();
+ vtkPolyData* GetMeshTemp();
+ int GetId();
+ std::string GetName();
+
+protected:
+
+private:
+ vtkPolyData *_meshBase;
+ vtkPolyData *_meshTemp;
+ int _meshId;
+ std::string _name;
+};
#ifndef _MESHMANAGERMODEL_H_
#define _MESHMANAGERMODEL_H_
// [classdescription]
//---------------------------------------------
-#include <vtkPolyData.h>
-
class MeshManagerModel
{
void SetMeshMemoryMode(vtkPolyData* mesh);
void CopySetMeshBase(vtkPolyData* mesh);
void ResetMeshTemp();
- void ResetMeshTemp_();
+ //void ResetMeshTemp_();
vtkPolyData* GetMeshBase();
vtkPolyData* GetMeshTemp();
- virtual void RefreshOutputs();
+
+ virtual void RefreshOutputs(bool signalBox);
+
+ MeshModel* GetMeshModel();
+ int GetNumberOfMeshes();
+
+ void AddMesh_(vtkPolyData* mesh);
+ void AddMesh(vtkPolyData* mesh);
+
+ void AddEmptyMesh_();
+ void AddEmptyMesh();
+
+ void AddMeshes(std::vector<vtkPolyData*> meshList);
+ void AddMeshes_(std::vector<vtkPolyData*> meshList);
+
+ void InsertMeshesAtCurrent_(std::vector<vtkPolyData*> meshList);
+ void InsertMeshesAtCurrent(std::vector<vtkPolyData*> meshList);
+
+ void SelectMesh(int i);
+ void SelectMeshByName(std::string meshName);
+ void DeleteMesh(int position);
+ void DeleteMeshByName(std::string meshName);
+ void DeleteCurrentMesh();
+ void DeleteAll();
+ void NextMesh();
+ void PreviousMesh();
+ std::vector<std::string> GetMeshNames();
//--Method template----------------------------
// void FunctionName(int& parameterA);
//Methods and attributes only visible by this class
//---------------------------------------------
private:
- vtkPolyData *_meshBase;
- vtkPolyData *_meshTemp;
+
+ std::vector<MeshModel*> _meshes;
+ int currentMesh;
+ int meshId;
};
//-end of _MESHMANAGERMODEL_H_------------------------------------------------------