00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date$ 00006 Version: $Revision$ 00007 00008 Copyright (c) German Cancer Research Center, Division of Medical and 00009 Biological Informatics. All rights reserved. 00010 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 00018 00019 #ifndef IMAGETOIMAGEFILTER_H_HEADER_INCLUDED_C1E5E869 00020 #define IMAGETOIMAGEFILTER_H_HEADER_INCLUDED_C1E5E869 00021 00022 #include "mitkCommon.h" 00023 #include "mitkImageSource.h" 00024 00025 namespace mitk { 00026 00027 //##Documentation 00028 //## @brief Superclass of all classes having one or more Images as input and 00029 //## generating Images as output 00030 //## @ingroup Process 00031 class MITK_CORE_EXPORT ImageToImageFilter : public ImageSource 00032 { 00033 public: 00034 mitkClassMacro(ImageToImageFilter,ImageSource); 00035 00037 itkNewMacro(Self); 00038 00040 typedef Superclass::OutputImageRegionType OutputImageRegionType; 00041 00043 typedef mitk::Image InputImageType; 00044 typedef InputImageType::Pointer InputImagePointer; 00045 typedef InputImageType::ConstPointer InputImageConstPointer; 00046 typedef SlicedData::RegionType InputImageRegionType; 00047 00049 virtual void SetInput( const InputImageType *image); 00050 virtual void SetInput( unsigned int, const InputImageType * image); 00051 const InputImageType * GetInput(void); 00052 const InputImageType * GetInput(unsigned int idx); 00053 00054 00055 protected: 00056 ImageToImageFilter(); 00057 virtual ~ImageToImageFilter(); 00058 00059 virtual void PrintSelf(std::ostream& os, itk::Indent indent) const; 00060 00075 virtual void GenerateInputRequestedRegion(); 00076 00077 private: 00078 void operator=(const Self&); //purposely not implemented 00079 }; 00080 00081 } // namespace mitk 00082 00083 00084 00085 #endif /* IMAGETOIMAGEFILTER_H_HEADER_INCLUDED_C1E5E869 */