18#ifndef itkBitwiseOpsFunctors_h
19#define itkBitwiseOpsFunctors_h
33template <
typename TInput1,
typename TInput2 = TInput1,
typename TOutput = TInput1>
34class ITK_TEMPLATE_EXPORT
AND
48 return static_cast<TOutput
>(A & B);
57template <
typename TInput1,
typename TInput2 = TInput1,
typename TOutput = TInput1>
58class ITK_TEMPLATE_EXPORT
OR
72 return static_cast<TOutput
>(A | B);
81template <
typename TInput1,
typename TInput2 = TInput1,
typename TOutput = TInput1>
82class ITK_TEMPLATE_EXPORT
XOR
96 return static_cast<TOutput
>(A ^ B);
105template <
class TInput,
class TOutput>
123 return static_cast<TOutput
>(~A);
TOutput operator()(const TInput1 &A, const TInput2 &B) const
bool operator==(const AND &) const
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(AND)
Performs the C++ unary bitwise NOT operator.
bool operator==(const BitwiseNot &) const
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(BitwiseNot)
TOutput operator()(const TInput &A) const
TOutput operator()(const TInput1 &A, const TInput2 &B) const
bool operator==(const OR &) const
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(OR)
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(XOR)
bool operator==(const XOR &) const
TOutput operator()(const TInput1 &A, const TInput2 &B) const
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....