IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
isLess.h
Go to the documentation of this file.
1 // isLess.h:
3 // -----------------
4 //
14 
15 #ifndef __IPSDKUTIL_INSTRUCTIONSET_COMPARISON_ISLESS_H__
16 #define __IPSDKUTIL_INSTRUCTIONSET_COMPARISON_ISLESS_H__
17 
27 
28 namespace ipsdk {
29 namespace simd {
30 
33 
36 template <eInstructionSet::domain instructionSet, class PackT>
37 IPSDK_FORCEINLINE
39 isLess(const PackT& in1, const PackT& in2)
40 {
41  typedef typename PackT::DataType T;
42  return detail::BinaryPackOpRetMask<instructionSet, T,
43  detail::IsLessReg<instructionSet, T> >::act(in1, in2);
44 }
45 
46 template <eInstructionSet::domain instructionSet, class PackT>
47 IPSDK_FORCEINLINE
48 void
49 isLess(const PackT& in1, const PackT& in2, typename Pack2MaskPackType<PackT>::Type& out)
50 {
51  typedef typename PackT::DataType T;
52  detail::BinaryPackOpRetMask<instructionSet, T,
53  detail::IsLessReg<instructionSet, T> >::act(in1, in2, out);
54 }
55 
58 
59 } // end of namespace simd
60 } // end of namespace ipsdk
61 
62 #endif // __IPSDKUTIL_INSTRUCTIONSET_COMPARISON_ISLESS_H__
Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Definition: BinaryPackOpRetMask.h:31
Definition: Pack2MaskPackType.h:35
defines template structures PromotedType<T1, T2> and PromotedType3<T1, T2, T3>; their attribute Type ...
Predefined types associated to instruction set management.
Vector DataType
data type used for estimation
Definition: EstimationTypes.h:58
Definition of import/export macro for library.
IPSDK_FORCEINLINE ipsdk::simd::Pack2MaskPackType< PackT >::Type isLess(const PackT &in1, const PackT &in2)
isLess function; vectorized comparison ("is less than" test) of data contained in 2 Register structur...
Definition: isLess.h:39
Definition: IsLessRegDecl.h:30