IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
shiftLeft.h
Go to the documentation of this file.
1 // shiftLeft.h:
3 // -----------------
4 //
14 
15 #ifndef __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_SHIFTLEFT_H__
16 #define __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_SHIFTLEFT_H__
17 
21 
22 namespace ipsdk {
23 namespace simd {
24 
27 
29 
30 template <eInstructionSet::domain instructionSet,
31  class PackT>
32 IPSDK_FORCEINLINE
33 PackT
34 shiftLeft(const PackT& in, ipUInt8 nbBits)
35 {
36  typedef typename PackT::DataType T;
38 }
39 
40 template <eInstructionSet::domain instructionSet,
41  class PackT>
42 IPSDK_FORCEINLINE
43 void
44 shiftLeft(const PackT& in, ipUInt8 nbBits, PackT& out)
45 {
46  typedef typename PackT::DataType T;
47  detail::ShiftLeftPack<instructionSet, T>::act(in, nbBits, out);
48 }
49 
50 /*
51 template <eInstructionSet::domain instructionSet, PackT>
52 IPSDK_FORCEINLINE
53 PackT
54 operator>>(const PackT& in, ipUInt8 nbBits)
55 {
56  typedef typename PackT::DataType T;
57  shiftLeft<instructionSet, T>(in, nbBits, out);
58  return out;
59 }*/
60 
63 
64 } // end of namespace simd
65 } // end of namespace ipsdk
66 
67 #endif // __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_SHIFTLEFT_H__
Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
IPSDK_FORCEINLINE PackT shiftLeft(const PackT &in, ipUInt8 nbBits)
shiftLeft function
Definition: shiftLeft.h:34
uint8_t ipUInt8
Base types definition.
Definition: BaseTypes.h:49
Vector DataType
data type used for estimation
Definition: EstimationTypes.h:58
Definition of import/export macro for library.
Definition: ShiftLeftPack.h:30