18 #ifndef __itkCompose2DCovariantVectorImageFilter_h
19 #define __itkCompose2DCovariantVectorImageFilter_h
20 #if !defined( ITK_LEGACY_REMOVE )
29 template<
class TInput >
30 class Compose2DCovariantVector
33 typedef CovariantVector< TInput, 2 > OutputType;
34 Compose2DCovariantVector() {}
35 ~Compose2DCovariantVector() {}
36 bool operator!=(
const Compose2DCovariantVector &)
const
41 bool operator==(
const Compose2DCovariantVector & other)
const
43 return !( *
this != other );
46 inline OutputType operator()(
const TInput & s1,
47 const TInput & s2)
const
70 template<
typename TInputImage,
71 typename TOutputImage =
72 Image< CovariantVector< typename TInputImage::PixelType, 2 >,
73 TInputImage::ImageDimension > >
74 class ITK_EXPORT Compose2DCovariantVectorImageFilter:
76 BinaryFunctorImageFilter< TInputImage, TInputImage,
78 Functor::Compose2DCovariantVector< typename TInputImage::PixelType > >
82 typedef Compose2DCovariantVectorImageFilter Self;
83 typedef BinaryFunctorImageFilter<
84 TInputImage, TInputImage,
86 Functor::Compose2DCovariantVector< typename TInputImage::PixelType > > Superclass;
88 typedef SmartPointer< Self > Pointer;
89 typedef SmartPointer< const Self > ConstPointer;
91 typedef typename Superclass::OutputImageType OutputImageType;
97 itkTypeMacro(Compose2DCovariantVectorImageFilter,
98 BinaryFunctorImageFilter);
100 #ifdef ITK_USE_CONCEPT_CHECKING
103 ( Concept::HasNumericTraits< typename TInputImage::PixelType > ) );
109 Compose2DCovariantVectorImageFilter() {}
110 virtual ~Compose2DCovariantVectorImageFilter() {}
113 Compose2DCovariantVectorImageFilter(
const Self &);
114 void operator=(
const Self &);
118 #endif //#if !defined( ITK_LEGACY_REMOVE )