]> Creatis software - bbtk.git/blob - packages/itkvtk/src/bbitkvtkitkImage2vtkImageData.h
*** empty log message ***
[bbtk.git] / packages / itkvtk / src / bbitkvtkitkImage2vtkImageData.h
1 /*=========================================================================
2                                                                                 
3   Program:   bbtk
4   Module:    $RCSfile: bbitkvtkitkImage2vtkImageData.h,v $
5   Language:  C++
6   Date:      $Date: 2008/05/09 10:39:46 $
7   Version:   $Revision: 1.4 $
8                                                                                 
9   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
10   l'Image). All rights reserved. See Doc/License.txt or
11   http://www.creatis.insa-lyon.fr/Public/bbtk/License.html for details.
12                                                                                 
13      This software is distributed WITHOUT ANY WARRANTY; without even
14      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15      PURPOSE.  See the above copyright notices for more information.
16                                                                                 
17 =========================================================================*//**
18 /**
19  * \file 
20  * \brief class itkImage2vtkImageData : converts a generic itkImage to a vtkImageData
21  */
22 /**
23  * \class itkImage2vtkImageData 
24  * \brief converts a generic itkImage to a vtkImageData
25  */
26 #ifdef _USE_ITK_
27 #ifdef _USE_VTK_
28
29 #ifndef __bbitkvtkitkImage2vtkImageData_h__
30 #define __bbitkvtkitkImage2vtkImageData_h__
31
32 #include "bbtkAtomicBlackBox.h"
33 #include "bbitkImage.h"
34 #include "vtkImageData.h"
35
36 namespace bbitkvtk
37 {
38
39   class itkImage2vtkImageData : public bbtk::AtomicBlackBox  
40   {
41     
42     BBTK_BLACK_BOX_INTERFACE(itkImage2vtkImageData,
43                              bbtk::AtomicBlackBox);
44
45     BBTK_DECLARE_INPUT(In,bbitk::anyImagePointer);
46     BBTK_DECLARE_OUTPUT(Out,vtkImageData*);
47     BBTK_PROCESS(Convert);
48     void Convert();
49     void bbUserConstructor();
50     void bbUserCopyConstructor();
51     void bbUserDestructor();
52   private:
53     // Convert method template on type of the itk image 
54     // embedded in the input itkImage*
55     template<class T> void Convert();
56
57  
58   }; 
59   
60
61   //=================================================================
62   // AtomicBlackBox description
63   BBTK_BEGIN_DESCRIBE_BLACK_BOX(itkImage2vtkImageData,bbtk::AtomicBlackBox);
64   BBTK_NAME("itkImage2vtkImageData");
65   BBTK_AUTHOR("laurent.guigues@creatis.insa-lyon.fr");
66   BBTK_DESCRIPTION("Converts a generic itkImage to a vtkImageData");
67   BBTK_DEFAULT_ADAPTOR();
68   BBTK_INPUT(itkImage2vtkImageData,In,
69              "Input itkImage",bbitk::anyImagePointer,"");
70   BBTK_OUTPUT(itkImage2vtkImageData,Out,
71               "Output vtkImageData",
72               vtkImageData*,"");
73   BBTK_END_DESCRIBE_BLACK_BOX(itkImage2vtkImageData);
74   //=================================================================
75    
76
77 }
78 //namespace bbitkvtk
79 #endif
80 // _USE_VTK_
81 #endif
82 // _USE_ITK_
83
84 #endif