]> Creatis software - clitk.git/blob - common/clitkImageToImageGenericFilter.cxx
Initial revision
[clitk.git] / common / clitkImageToImageGenericFilter.cxx
1 #include "clitkImageToImageGenericFilter.h"
2 #include "clitkImageCommon.h"
3
4 //--------------------------------------------------------------------
5 clitk::ImageToImageGenericFilter::ImageToImageGenericFilter() :
6     mIOVerbose(false)
7 {}
8 //--------------------------------------------------------------------
9
10 //--------------------------------------------------------------------
11 void clitk::ImageToImageGenericFilter::SetInputFilenames(const std::vector<std::string> & filenames) {
12   mInputFilenames.resize(filenames.size());
13   std::copy(filenames.begin(), filenames.end(), mInputFilenames.begin());
14 }
15
16 void clitk::ImageToImageGenericFilter::SetInputFilename(const std::string & filename) {
17   std::vector<std::string> f;
18   f.push_back(filename);
19   SetInputFilenames(f);
20 }
21
22 void clitk::ImageToImageGenericFilter::AddInputFilename(const std::string & filename) {
23   mInputFilenames.push_back(filename);
24 }
25 //--------------------------------------------------------------------
26
27 //--------------------------------------------------------------------
28 void clitk::ImageToImageGenericFilter::SetOutputFilename(const std::string & filename) {
29   mOutputFilenames.clear();
30   mOutputFilenames.push_back(filename);
31 }
32 void clitk::ImageToImageGenericFilter::AddOutputFilename(const std::string & filename)
33 {
34   mOutputFilenames.push_back(filename);
35 }
36 void clitk::ImageToImageGenericFilter::SetOutputFilenames(const std::vector<std::string> & filenames)
37 {
38     std::copy(filenames.begin(), filenames.end(), mOutputFilenames.begin());
39 }
40 std::string clitk::ImageToImageGenericFilter::GetOutputFilename()
41 {
42     assert(mOutputFilenames.size() == 1);
43     return mOutputFilenames.front();
44 }
45 //--------------------------------------------------------------------
46 void clitk::ImageToImageGenericFilter::GetInputImageDimensionAndPixelType(unsigned int& dim,\
47         std::string& pixeltype,unsigned int& components)
48 {
49     if (mInputFilenames.size())
50     {
51         int comp_temp,dim_temp; //clitkCommonImage takes ints
52         ReadImageDimensionAndPixelType(mInputFilenames[0], dim_temp, pixeltype,comp_temp);
53         components=comp_temp; dim=dim_temp;
54     }
55     else if (mInputVVImages.size())
56     {
57         pixeltype=mInputVVImages[0]->GetScalarTypeAsString();
58         dim=mInputVVImages[0]->GetNumberOfDimensions();
59         components=mInputVVImages[0]->GetNumberOfScalarComponents();
60     }
61     else
62         assert(false); //No input image, shouldn't happen
63 }
64 vvImage::Pointer clitk::ImageToImageGenericFilter::GetOutputVVImage ()
65 {
66     assert(mOutputVVImages.size());
67     return mOutputVVImages[0];
68 }
69
70 std::vector<vvImage::Pointer> clitk::ImageToImageGenericFilter::GetOutputVVImages()
71 {
72     return mOutputVVImages;
73 }
74
75 void clitk::ImageToImageGenericFilter::SetInputVVImage (vvImage::Pointer input)
76 {
77     mInputVVImages.clear();
78     mInputVVImages.push_back(input);
79 }
80
81 void clitk::ImageToImageGenericFilter::AddInputVVImage (vvImage::Pointer input)
82 {
83     mInputVVImages.push_back(input);
84 }
85
86 void clitk::ImageToImageGenericFilter::SetInputVVImages (std::vector<vvImage::Pointer> input)
87 {
88     mInputVVImages=input;
89 }
90