]> Creatis software - creaVtk.git/blob - bbtk_creaVtk_PKG/src/bbcreaVtkMeshManager.h
#3504 Mesh Manager handle multiple meshes
[creaVtk.git] / bbtk_creaVtk_PKG / src / bbcreaVtkMeshManager.h
1 //===== 
2 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
3 //===== 
4 #ifndef __bbcreaVtkMeshManager_h_INCLUDED__
5 #define __bbcreaVtkMeshManager_h_INCLUDED__
6
7 #include "bbcreaVtk_EXPORT.h"
8 #include "bbtkAtomicBlackBox.h"
9 #include "iostream"
10 #include <vtkPolyData.h>
11 #include <MeshManagerModel.h>
12
13 namespace bbcreaVtk
14 {
15
16 class MeshManagerModel_Box;
17
18 class bbcreaVtk_EXPORT MeshManager
19  : 
20    public bbtk::AtomicBlackBox
21 {
22   BBTK_BLACK_BOX_INTERFACE(MeshManager,bbtk::AtomicBlackBox);
23 //===== 
24 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
25 //===== 
26   BBTK_DECLARE_INPUT(Mesh,vtkPolyData*);
27   BBTK_DECLARE_INPUT(MeshVector, std::vector<vtkPolyData*>);
28   BBTK_DECLARE_OUTPUT(MeshBase,vtkPolyData*);
29   BBTK_DECLARE_OUTPUT(MeshTemp,vtkPolyData*);
30   BBTK_DECLARE_OUTPUT(MeshNames,std::vector<std::string>);
31   BBTK_DECLARE_OUTPUT(MeshManagerModel,MeshManagerModel*);
32   BBTK_PROCESS(Process);
33   void Process();
34     
35   MeshManagerModel_Box *meshManagerModel_Box;
36 //===== 
37 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
38 //===== 
39 };
40
41 class MeshManagerModel_Box : public MeshManagerModel
42 {
43 public :
44     MeshManagerModel_Box(MeshManager *box);
45     ~MeshManagerModel_Box();
46     virtual void RefreshOutputs(bool signalBox);
47 protected:
48 private:
49     MeshManager *mBox;
50 };
51
52
53
54 BBTK_BEGIN_DESCRIBE_BLACK_BOX(MeshManager,bbtk::AtomicBlackBox);
55   BBTK_NAME("MeshManager");
56   BBTK_AUTHOR("InfoDev");
57   BBTK_DESCRIPTION("No Description.");
58   BBTK_CATEGORY("empty");
59
60   BBTK_INPUT(MeshManager,Mesh,"Mesh",vtkPolyData*,"");
61   BBTK_INPUT(MeshManager,MeshVector,"Vector of Meshes",std::vector<vtkPolyData*>,"");
62   BBTK_OUTPUT(MeshManager,MeshBase,"Mesh Base",vtkPolyData*,"");
63   BBTK_OUTPUT(MeshManager,MeshTemp,"Mesh Temp",vtkPolyData*,"");
64   BBTK_OUTPUT(MeshManager,MeshNames,"Mesh Names",std::vector<std::string>,"");
65   BBTK_OUTPUT(MeshManager,MeshManagerModel,"Mesh manager model",MeshManagerModel*,"");
66
67 BBTK_END_DESCRIBE_BLACK_BOX(MeshManager);
68 //===== 
69 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
70 //===== 
71 }
72 // EO namespace bbcreaVtk
73
74 #endif // __bbcreaVtkMeshManager_h_INCLUDED__
75