Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
vtkITKImageToImageFilterUSUL.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Copyright Brigham and Women's Hospital (BWH) All Rights Reserved.
4
5 See COPYRIGHT.txt
6 or http://www.slicer.org/copyright/copyright.txt for details.
7
8 Program: vtkITK
9 Module: $HeadURL$
10 Date: $Date$
11 Version: $Revision$
12
13==========================================================================*/
14
15#ifndef __vtkITKImageToImageFilterUSUL_h
16#define __vtkITKImageToImageFilterUSUL_h
17
18#include "vtkImageAlgorithm.h"
20#include "itkImageToImageFilter.h"
21#include "itkVTKImageExport.h"
22#include "itkVTKImageImport.h"
23#include "vtkITKUtility.h"
24
25
27{
28public:
30 static vtkITKImageToImageFilterUSUL* New() { return 0; };
31 void PrintSelf(ostream& os, vtkIndent indent)
32 {
33 Superclass::PrintSelf ( os, indent );
34 os << m_Filter;
35 };
36
37protected:
38
40 typedef itk::Image<unsigned short, 3> InputImageType;
41 typedef itk::Image<unsigned long, 3> OutputImageType;
42
43 typedef itk::VTKImageImport<InputImageType> ImageImportType;
44 typedef itk::VTKImageExport<OutputImageType> ImageExportType;
45 ImageImportType::Pointer itkImporter;
46 ImageExportType::Pointer itkExporter;
47
48 typedef itk::ImageToImageFilter<InputImageType,OutputImageType> FilterType;
49 FilterType::Pointer m_Filter;
50
52 {
54 m_Filter = filter;
55 this->itkImporter = ImageImportType::New();
56 this->itkExporter = ImageExportType::New();
57 ConnectPipelines(this->vtkExporter, this->itkImporter);
58 ConnectPipelines(this->itkExporter, this->vtkImporter);
59 this->LinkITKProgressToVTKProgress ( m_Filter );
61 m_Filter->SetInput ( this->itkImporter->GetOutput() );
62 this->itkExporter->SetInput ( m_Filter->GetOutput() );
63 this->vtkCast->SetOutputScalarTypeToUnsignedShort();
64 };
65
69
70private:
72 void operator=(const vtkITKImageToImageFilterUSUL&);
73};
74
75#endif
itk::Image< unsigned long, 3 > OutputImageType
itk::Image< unsigned short, 3 > InputImageType
To/from ITK.
itk::VTKImageExport< OutputImageType > ImageExportType
void PrintSelf(ostream &os, vtkIndent indent)
static vtkITKImageToImageFilterUSUL * New()
itk::VTKImageImport< InputImageType > ImageImportType
itk::ImageToImageFilter< InputImageType, OutputImageType > FilterType
void LinkITKProgressToVTKProgress(itk::ProcessObject *process)
BTX.
void PrintSelf(ostream &os, vtkIndent indent) override
void ConnectPipelines(ITK_Exporter exporter, VTK_Importer *importer)