IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
logicalAnd.h
Go to the documentation of this file.
1 // logicalAnd.h:
3 // -----------------
4 //
14 
15 #ifndef __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_LOGICALAND_H__
16 #define __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_LOGICALAND_H__
17 
19 
24 
25 namespace ipsdk {
26 namespace simd {
27 
30 
32 template <eInstructionSet::domain instructionSet, class MaskPackT>
33 IPSDK_FORCEINLINE
34 MaskPackT
35 logicalAnd(const MaskPackT& in1,
36  const MaskPackT& in2)
37 {
38  return detail::BinaryMaskPackOp<instructionSet, typename MaskPackT::DataType,
39  detail::LogicalAndReg<instructionSet, typename MaskPackT::DataType> >::act(in1, in2);
40 }
41 
42 template <eInstructionSet::domain instructionSet, class MaskPackT>
43 IPSDK_FORCEINLINE
44 void
45 logicalAnd(const MaskPackT& in1,
46  const MaskPackT& in2,
47  MaskPackT& out)
48 {
49  detail::BinaryMaskPackOp<instructionSet, typename MaskPackT::DataType,
50  detail::LogicalAndReg<instructionSet, typename MaskPackT::DataType> >::act(in1, in2, out);
51 }
52 
55 
56 } // end of namespace simd
57 } // end of namespace ipsdk
58 
59 #endif // __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_LOGICALAND_H__
Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
defines template structures PromotedType<T1, T2> and PromotedType3<T1, T2, T3>; their attribute Type ...
Vector DataType
data type used for estimation
Definition: EstimationTypes.h:58
Definition of import/export macro for library.