IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
ShiftRightPack.h
Go to the documentation of this file.
1 // ShiftRightPack.h:
3 // -------------------
4 //
14 
15 #ifndef __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_DETAIL_STD_SHIFTRIGHTPACK_H__
16 #define __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_DETAIL_STD_SHIFTRIGHTPACK_H__
17 
21 
22 namespace ipsdk {
23 namespace simd {
24 namespace detail {
25 
28 
29 template <typename T>
31 {
32  static IPSDK_FORCEINLINE
35  ipUInt8 nbBits)
36  {
37  return BasePack<ePackType::ePT_Scalar, T>(in._val >> nbBits);
38  }
39 
40  static IPSDK_FORCEINLINE
41  void
43  ipUInt8 nbBits,
45  {
46  out = BasePack<ePackType::ePT_Scalar, T>(in._val >> nbBits);
47  }
48 };
49 
52 
53 } // end of namespace detail
54 } // end of namespace simd
55 } // end of namespace ipsdk
56 
57 #endif // __IPSDKUTIL_INSTRUCTIONSET_LOGICAL_DETAIL_STD_SHIFTRIGHTPACK_H__
Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
BasePack class; defines a set of scalars (for instruction set "standard") or registers (for all other...
uint8_t ipUInt8
Base types definition.
Definition: BaseTypes.h:49
eInstructionSet
Enumerate for processor instruction set description.
Definition: InstructionSetTypes.h:31
Definition of import/export macro for library.
compiler optimisations only
Definition: InstructionSetTypes.h:34
Definition: ShiftRightPack.h:30