IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
SinReg.h
Go to the documentation of this file.
1 // SinReg.h:
3 // -------------------
4 //
14 
15 #ifndef __IPSDKUTIL_INSTRUCTIONSET_ARITHMETIC_DETAIL_STD_SINREG_H__
16 #define __IPSDKUTIL_INSTRUCTIONSET_ARITHMETIC_DETAIL_STD_SINREG_H__
17 
20 #include <cmath>
21 
22 namespace ipsdk {
23 namespace simd {
24 namespace detail {
25 
28 
30 template <>
32 {
33  static IPSDK_FORCEINLINE
34  ipReal32
35  act(const ipReal32& in)
36  {
37  return std::sin(in);
38  }
39 
40  static IPSDK_FORCEINLINE
41  void
42  act(const ipReal32& in, ipReal32& out)
43  {
44  out = std::sin(in);
45  }
46 };
47 
50 
51 } // end of namespace detail
52 } // end of namespace simd
53 } // end of namespace ipsdk
54 
55 #endif // __IPSDKUTIL_INSTRUCTIONSET_ARITHMETIC_DETAIL_STD_SINREG_H__
Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
eInstructionSet
Enumerate for processor instruction set description.
Definition: InstructionSetTypes.h:31
Definition of import/export macro for library.
template structure which is specialized to implement the computation of sine on a scalar or a registe...
Definition: SinReg.h:40
compiler optimisations only
Definition: InstructionSetTypes.h:34
float ipReal32
Base types definition.
Definition: BaseTypes.h:56