IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Namespaces | Macros
PolynomPack.h File Reference
#include <IPSDKUtil/IPSDKUtilExports.h>
#include <IPSDKUtil/InstructionSet/BasePack.h>
#include <IPSDKUtil/InstructionSet/Arithmetic/detail/PolynomReg.h>
#include <IPSDKUtil/Tools/ForceInline.h>

Go to the source code of this file.

Namespaces

 ipsdk
 Main namespace for IPSDK library.
 
 ipsdk::simd
 Namespace agregating IPSDK SIMD routines and classes.
 

Macros

#define DEFINE_POLYNOMPACK_STD(N)
 

Detailed Description

Author
H. Delestre
Date
2017/03/31

Macro Definition Documentation

◆ DEFINE_POLYNOMPACK_STD

#define DEFINE_POLYNOMPACK_STD (   N)
Value:
template <typename T> \
struct PolynomPack<eInstructionSet::eIS_Standard, eInstructionSet::eIS_Standard, N, T> \
{ \
static IPSDK_FORCEINLINE \
BasePack<ePackType::ePT_Scalar, T> \
act(const BasePack<ePackType::ePT_Scalar, T>& in, \
BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(N), const T& c)) \
{ \
BasePack<ePackType::ePT_Scalar, T> out; \
act(in, BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(N), c), out); \
return out; \
} \
\
static IPSDK_FORCEINLINE \
void \
act(const BasePack<ePackType::ePT_Scalar, T>& in, \
BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(N), const T& c), \
BasePack<ePackType::ePT_Scalar, T>& out) \
{ \
PolynomReg<eInstructionSet::eIS_Standard, eInstructionSet::eIS_Standard, N, T>::act(in._val, BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(N), c), out._val); \
} \
};