]> Creatis software - creaImageIO.git/blob - bbtk_Transform3Ddicom_PKG/src/bbTransform3DdicomCreateComplementImage.h
#3326 bbtk_Transform3Ddicom_PKG
[creaImageIO.git] / bbtk_Transform3Ddicom_PKG / src / bbTransform3DdicomCreateComplementImage.h
1 #ifndef __bbTransform3DdicomCreateComplementImage_h_INCLUDED__
2 #define __bbTransform3DdicomCreateComplementImage_h_INCLUDED__
3 #include "bbTransform3Ddicom_EXPORT.h"
4 #include "bbtkAtomicBlackBox.h"
5 #include "iostream"
6
7 #include "vtkImageData.h"
8
9 #include "CreaImage.h"
10 #include "CreaImageComplement.h"
11
12
13 namespace bbTransform3Ddicom
14 {
15
16 class bbTransform3Ddicom_EXPORT CreateComplementImage
17  : 
18    public bbtk::AtomicBlackBox
19 {
20   BBTK_BLACK_BOX_INTERFACE(CreateComplementImage,bbtk::AtomicBlackBox);
21 //==================================================================
22
23 /*
24 /// User callback called in the box contructor
25 virtual void bbUserConstructor();
26 /// User callback called in the box copy constructor
27 virtual void bbUserCopyConstructor(bbtk::BlackBox::Pointer);
28 /// User callback called in the box destructor
29 virtual void bbUserDestructor();
30 */
31
32 //==================================================================
33
34   BBTK_DECLARE_INPUT(Image1, vtkImageData* );
35   BBTK_DECLARE_INPUT(Image2, vtkImageData* );
36   BBTK_DECLARE_INPUT(ExtOut,std::vector<double> );
37   BBTK_DECLARE_INPUT(SpcOut,std::vector<double> );
38   BBTK_DECLARE_INPUT(Spacing1,std::vector<double> );
39   BBTK_DECLARE_INPUT(Spacing2,std::vector<double> );
40   BBTK_DECLARE_INPUT(Position1,std::vector<double> );
41   BBTK_DECLARE_INPUT(Position2,std::vector<double> );
42   BBTK_DECLARE_INPUT(Orientation1Vec1,std::vector<double> );
43   BBTK_DECLARE_INPUT(Orientation1Vec2,std::vector<double> );
44   BBTK_DECLARE_INPUT(Orientation2Vec1,std::vector<double> );
45   BBTK_DECLARE_INPUT(Orientation2Vec2,std::vector<double> );
46   BBTK_DECLARE_OUTPUT(Out, vtkImageData* );
47   BBTK_DECLARE_OUTPUT(Out2, vtkImageData* );
48
49   BBTK_PROCESS(Process);
50   void Process();
51
52         CreaImage                       *creaimage1;
53         CreaImage                       *creaimage2;
54         CreaImageComplement *creaimagecomplement;
55         vtkImageData            *imageresult;
56         vtkImageData            *imageresult2;
57
58
59 };
60
61 BBTK_BEGIN_DESCRIBE_BLACK_BOX(CreateComplementImage,bbtk::AtomicBlackBox);
62 BBTK_NAME("CreateComplementImage");
63 BBTK_AUTHOR("InfoTeam");
64 BBTK_DESCRIPTION("_description_");
65 BBTK_CATEGORY("");
66
67 BBTK_INPUT(CreateComplementImage,Image1,"Input image 1", vtkImageData* ,"");
68 BBTK_INPUT(CreateComplementImage,Image2,"Input image 2", vtkImageData* ,"");
69 BBTK_INPUT(CreateComplementImage,ExtOut,"Extend output image", std::vector<double> ,"");
70 BBTK_INPUT(CreateComplementImage,SpcOut,"Spacing output image", std::vector<double> ,"");
71 BBTK_INPUT(CreateComplementImage,Spacing1,"Spacing image 1",std::vector<double>,"");
72 BBTK_INPUT(CreateComplementImage,Spacing2,"Spacing image 2",std::vector<double>,"");
73 BBTK_INPUT(CreateComplementImage,Position1,"Position image 1",std::vector<double>,"");
74 BBTK_INPUT(CreateComplementImage,Position2,"Position image 2",std::vector<double>,"");
75 BBTK_INPUT(CreateComplementImage,Orientation1Vec1,"Orientation image 1 with vec 1",std::vector<double>,"");
76 BBTK_INPUT(CreateComplementImage,Orientation1Vec2,"Orientation image 1 with vec 2",std::vector<double>,"");
77 BBTK_INPUT(CreateComplementImage,Orientation2Vec1,"Orientation image 2 with vec 1",std::vector<double>,"");
78 BBTK_INPUT(CreateComplementImage,Orientation2Vec2,"Orientation image 2 with vec 2",std::vector<double>,"");
79 BBTK_OUTPUT(CreateComplementImage,Out,"Output image",vtkImageData*,"");
80 BBTK_OUTPUT(CreateComplementImage,Out2,"Output image",vtkImageData*,"");
81
82
83 BBTK_END_DESCRIBE_BLACK_BOX(CreateComplementImage);
84 }
85 // EO namespace bbTransform3Ddicom
86
87 #endif // __bbTransform3DdicomCreateComplementImage_h_INCLUDED__
88