00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __itkBSplineUpsampleImageFilter_h
00022 #define __itkBSplineUpsampleImageFilter_h
00023
00024
00025 #include "itkBSplineResampleImageFilterBase.h"
00026 #include "itkBSplineL2ResampleImageFilterBase.h"
00027 #include "itkBSplineCenteredResampleImageFilterBase.h"
00028 #include "itkBSplineCenteredL2ResampleImageFilterBase.h"
00029
00030 namespace itk
00031 {
00076
00077 template <class TInputImage, class TOutputImage, class ResamplerType = BSplineResampleImageFilterBase<TInputImage, TOutputImage> >
00078 class ITK_EXPORT BSplineUpsampleImageFilter :
00079 public ResamplerType
00080 {
00081 public:
00083 typedef BSplineUpsampleImageFilter Self;
00084 typedef ResamplerType Superclass;
00085 typedef SmartPointer<Self> Pointer;
00086 typedef SmartPointer<const Self> ConstPointer;
00087
00089 itkTypeMacro(BSplineUpsampleImageFilter, ReamplerType);
00090
00091
00093 itkNewMacro( Self );
00094
00096 typedef typename Superclass::InputImageType InputImageType;
00097
00099 typedef typename Superclass::InputImagePointer InputImagePointer;
00100
00102 typedef typename Superclass::OutputImageIterator OutputImageIterator;
00103
00105 typedef typename Superclass::OutputImagePointer OutputImagePointer;
00106
00109 void GenerateOutputInformation();
00110
00112 void GenerateInputRequestedRegion();
00113
00114 protected:
00115
00116 void GenerateData();
00117 void EnlargeOutputRequestedRegion( DataObject *output );
00118
00119 BSplineUpsampleImageFilter();
00120 virtual ~BSplineUpsampleImageFilter() {};
00121 void PrintSelf(std::ostream& os, Indent indent) const;
00122
00123 private:
00124 BSplineUpsampleImageFilter( const Self& );
00125 void operator=( const Self& );
00126
00127 };
00128
00129 }
00130
00131 #ifndef ITK_MANUAL_INSTANTIATION
00132 #include "itkBSplineUpsampleImageFilter.txx"
00133 #endif
00134
00135 #endif