1 #ifndef __clitkZeroVFGenericFilter_txx
2 #define __clitkZeroVFGenericFilter_txx
3 #include "clitkZeroVFGenericFilter.h"
9 template<unsigned int Dimension>
10 void ZeroVFGenericFilter::UpdateWithDim(std::string PixelType)
12 if (PixelType=="double")
14 UpdateWithDimAndPixelType<Dimension, double>();
18 UpdateWithDimAndPixelType<Dimension, float>();
23 template<unsigned int Dimension, class PixelType>
24 void ZeroVFGenericFilter::UpdateWithDimAndPixelType()
26 //Define the image type
27 typedef itk::Vector<PixelType, Dimension> DisplacementType;
28 typedef itk::Image<DisplacementType, Dimension> ImageType;
31 typedef itk::ImageFileReader<ImageType> ImageReaderType;
32 typename ImageReaderType::Pointer reader= ImageReaderType::New();
33 reader->SetFileName(m_InputName);
34 reader->Update(); // not very efficient :-p
35 typename ImageType::Pointer image =reader->GetOutput();
36 DisplacementType zero;
38 image->FillBuffer(zero);
41 typedef itk::ImageFileWriter<ImageType> WriterType;
42 typename WriterType::Pointer writer = WriterType::New();
43 writer->SetFileName(m_OutputName);
44 writer->SetInput(image);