18 #ifndef itkBitwiseOpsFunctors_h
19 #define itkBitwiseOpsFunctors_h
33 template <
typename TInput1,
typename TInput2 = TInput1,
typename TOutput = TInput1>
34 class ITK_TEMPLATE_EXPORT
AND
46 ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(
AND);
51 return static_cast<TOutput>(A & B);
60 template <
typename TInput1,
typename TInput2 = TInput1,
typename TOutput = TInput1>
61 class ITK_TEMPLATE_EXPORT
OR
73 ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(
OR);
78 return static_cast<TOutput>(A | B);
87 template <
typename TInput1,
typename TInput2 = TInput1,
typename TOutput = TInput1>
88 class ITK_TEMPLATE_EXPORT
XOR
100 ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(
XOR);
105 return static_cast<TOutput>(A ^ B);
114 template <
class TInput,
class TOutput>
132 return static_cast<TOutput>(~A);