18 #ifndef itkLogicOpsFunctors_h
19 #define itkLogicOpsFunctors_h
58 template<
typename TInput1,
typename TInput2=TInput1,
typename TOutput=TInput1 >
78 return !(*
this != other);
92 return(m_ForegroundValue);
96 return(m_BackgroundValue);
114 template<
typename TInput1,
typename TInput2=TInput1,
typename TOutput=TInput1 >
131 return !(*
this != other);
133 inline TOutput
operator()(
const TInput1 & A,
const TInput2 & B)
const
137 return this->m_ForegroundValue;
139 return this->m_BackgroundValue;
152 template<
typename TInput1,
typename TInput2=TInput1,
typename TOutput=TInput1 >
166 return !(*
this != other);
168 inline TOutput
operator()(
const TInput1 & A,
const TInput2 & B)
const
172 return this->m_ForegroundValue;
174 return this->m_BackgroundValue;
188 template<
typename TInput1,
typename TInput2=TInput1,
typename TOutput=TInput1 >
202 return !(*
this != other);
204 inline TOutput
operator()(
const TInput1 & A,
const TInput2 & B)
const
208 return this->m_ForegroundValue;
210 return this->m_BackgroundValue;
224 template<
typename TInput1,
typename TInput2=TInput1,
typename TOutput=TInput1 >
237 return !(*
this != other);
239 inline TOutput
operator()(
const TInput1 & A,
const TInput2 & B)
const
243 return this->m_ForegroundValue;
245 return this->m_BackgroundValue;
258 template<
typename TInput1,
typename TInput2=TInput1,
typename TOutput=TInput1 >
272 return !(*
this != other);
274 inline TOutput
operator()(
const TInput1 & A,
const TInput2 & B)
const
278 return this->m_ForegroundValue;
280 return this->m_BackgroundValue;
294 template<
typename TInput1,
typename TInput2=TInput1,
typename TOutput=TInput1 >
307 return !(*
this != other);
309 inline TOutput
operator()(
const TInput1 & A,
const TInput2 & B)
const
313 return this->m_ForegroundValue;
315 return this->m_BackgroundValue;
326 template<
typename TInput,
typename TOutput = TInput >
340 return !( *
this != other );
347 return this->m_ForegroundValue;
349 return this->m_BackgroundValue;
358 template<
typename TInput1,
typename TInput2,
typename TInput3,
typename TOutput >
372 return !( *
this != other );
377 const TInput3 & C)
const
381 return static_cast<TOutput
>( B );
385 return static_cast<TOutput
>( C );
TOutput m_ForegroundValue
bool operator!=(const Self &) const
bool operator==(const Self &other) const
bool operator!=(const Self &) const
void SetBackgroundValue(const TOutput &BG)
bool operator!=(const Self &) const
bool operator==(const Self &other) const
bool ExactlyEquals(const TInput1 &x1, const TInput2 &x2)
Return the result of an exact comparison between two scalar values of potetially different types...
Functor for != operation on images and constants.
bool operator!=(const Self &) const
Return argument 2 if argument 1 is false, and argument 3 otherwise.
TOutput operator()(const TInput1 &A, const TInput2 &B) const
TOutput operator()(const TInput1 &A, const TInput2 &B) const
TOutput operator()(const TInput1 &A, const TInput2 &B) const
TOutput m_BackgroundValue
TOutput operator()(const TInput &A) const
bool operator!=(const TernaryOperator &) const
Functor for == operation on images and constants.
bool operator!=(const Self &) const
TOutput GetBackgroundValue() const
bool NotExactlyEquals(const TInput1 &x1, const TInput2 &x2)
Functor for > operation on images and constants.
Functor for >= operation on images and constants.
bool operator!=(const Self &) const
bool operator==(const TernaryOperator &other) const
Functor for < operation on images and constants.
bool operator==(const Self &other) const
Unary logical NOT functor.
void SetForegroundValue(const TOutput &FG)
TOutput operator()(const TInput1 &A, const TInput2 &B) const
Base class for some logic functors. Provides the Foreground and background setting methods...
TOutput operator()(const TInput1 &A, const TInput2 &B) const
TOutput operator()(const TInput1 &A, const TInput2 &B) const
bool operator==(const Self &other) const
bool operator==(const Self &other) const
bool operator==(const Self &other) const
Functor for <= operation on images and constants.
bool operator==(const NOT &other) const
bool operator!=(const NOT &) const
bool operator==(const Self &other) const
TOutput GetForegroundValue() const
bool operator!=(const Self &) const
TOutput operator()(const TInput1 &A, const TInput2 &B, const TInput3 &C) const