18 #ifndef __itkJoinImageFilter_h
19 #define __itkJoinImageFilter_h
47 template<
typename TPixel1,
typename TPixel2 >
82 return !( *
this != other );
107 template<
unsigned int VDimension >
127 JoinType & out,
unsigned int idx,
const TPixel1 & A)
const
129 for (
unsigned int i = 0; i <
Dimension1; i++, idx++ )
138 JoinType & out,
unsigned int idx,
const TPixel1 & A)
const
153 JoinType & out,
unsigned int idx,
const TPixel2 & B)
const
155 for (
unsigned int i = 0; i <
Dimension2; i++, idx++ )
164 JoinType & out,
unsigned int idx,
const TPixel2 & B)
const
171 template<
typename TImage1,
typename TImage2 >
208 template<
typename TInputImage1,
typename TInputImage2 >
213 Functor::MakeJoin< TInputImage1,
214 TInputImage2 >::ImageType,
216 Functor::MakeJoin< TInputImage1,
217 TInputImage2 >::FunctorType >
222 TInputImage1::ImageDimension);
247 #ifdef ITK_USE_CONCEPT_CHECKING
static const unsigned int JoinDimension
void SecondCopier(CopierDispatch< 1 >, JoinType &out, unsigned int idx, const TPixel2 &B) const
JoinTraits< ValueType1, ValueType2 >::ValueType JoinValueType
JoinFunctor< typename TImage1::PixelType, typename TImage2::PixelType > FunctorType
Light weight base class for most itk classes.
TPixelType::ValueType ValueType
virtual ~JoinImageFilter()
JoinType operator()(const TPixel1 &A, const TPixel2 &B) const
Vector< JoinValueType, itkGetStaticConstMacro(JoinDimension) > JoinType
void FirstCopier(JoinType &out, unsigned int idx, const TPixel1 &A) const
BinaryFunctorImageFilter< TInputImage1, TInputImage2, OutputImageType, FunctorType > Superclass
bool operator!=(const JoinFunctor &) const
bool operator==(const JoinFunctor &other) const
PixelTraits< TPixel1 >::ValueType ValueType1
static const unsigned int OutputImageDimension
Traits for a pixel that define the dimension and component type.
static const unsigned int Dimension2
Join two images, resulting in an image where each pixel has the components of the first image followe...
Functor::MakeJoin< TInputImage1, TInputImage2 >::ImageType OutputImageType
A templated class holding a n-Dimensional vector.
void SecondCopier(CopierDispatchBase, JoinType &out, unsigned int idx, const TPixel2 &B) const
void SecondCopier(JoinType &out, unsigned int idx, const TPixel2 &B) const
FunctorType::JoinType OutputImagePixelType
PixelTraits< TPixel2 >::ValueType ValueType2
void operator=(const Self &)
Image< typename FunctorType::JoinType, TImage1::ImageDimension > ImageType
void FirstCopier(CopierDispatch< 1 >, JoinType &out, unsigned int idx, const TPixel1 &A) const
Join the components of two pixel types into a single pixel type.
SmartPointer< const Self > ConstPointer
SmartPointer< Self > Pointer
#define itkConceptMacro(name, concept)
static const unsigned int Dimension1
Functor::MakeJoin< TInputImage1, TInputImage2 >::FunctorType FunctorType
void FirstCopier(CopierDispatchBase, JoinType &out, unsigned int idx, const TPixel1 &A) const
Templated n-dimensional image class.
Implements pixel-wise generic operation of two images, or of an image and a constant.