Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __itkVTKImageToImageFilter_h
00018 #define __itkVTKImageToImageFilter_h
00019
00020 #include "itkVTKImageImport.h"
00021 #include "vtkImageExport.h"
00022 #include "vtkImageData.h"
00023
00024 #ifndef vtkFloatingPointType
00025 #define vtkFloatingPointType float
00026 #endif
00027
00028 namespace itk
00029 {
00030
00043 template <class TOutputImage >
00044 class ITK_EXPORT VTKImageToImageFilter : public ProcessObject
00045 {
00046 public:
00048 typedef VTKImageToImageFilter Self;
00049 typedef ProcessObject Superclass;
00050 typedef SmartPointer<Self> Pointer;
00051 typedef SmartPointer<const Self> ConstPointer;
00052
00054 itkNewMacro(Self);
00055
00057 itkTypeMacro(VTKImageToImageFilter, ProcessObject);
00058
00060 typedef TOutputImage OutputImageType;
00061 typedef typename OutputImageType::ConstPointer OutputImagePointer;
00062 typedef VTKImageImport< OutputImageType > ImporterFilterType;
00063 typedef typename ImporterFilterType::Pointer ImporterFilterPointer;
00064
00067 const OutputImageType * GetOutput() const;
00068
00070 void SetInput( vtkImageData * );
00071
00075 vtkImageExport * GetExporter() const;
00076
00080 ImporterFilterType * GetImporter() const;
00081
00083 void Update();
00084
00085 protected:
00086 VTKImageToImageFilter();
00087 virtual ~VTKImageToImageFilter();
00088
00089 private:
00090 VTKImageToImageFilter(const Self&);
00091 void operator=(const Self&);
00092
00093 ImporterFilterPointer m_Importer;
00094 vtkImageExport * m_Exporter;
00095
00096 };
00097
00098 }
00099
00100 #ifndef ITK_MANUAL_INSTANTIATION
00101 #include "itkVTKImageToImageFilter.txx"
00102 #endif
00103
00104 #endif
00105
00106
00107