IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Namespaces | Macros
polynomial.h File Reference

polynomial function; returns the result of the application of a polynomial on x More...

#include <IPSDKUtil/IPSDKUtilExports.h>
#include <IPSDKUtil/InstructionSet/Arithmetic/detail/PolynomPack.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_POLYNOMIAL_FUNCTION(N)
 returns the result of polynomial application on input value x More...
 

Detailed Description

polynomial function; returns the result of the application of a polynomial on x

Author
H. Delestre
Date
2017/03/31

Macro Definition Documentation

◆ DEFINE_POLYNOMIAL_FUNCTION

#define DEFINE_POLYNOMIAL_FUNCTION (   N)
Value:
template < \
eInstructionSet::domain instructionSet, \
eInstructionSet::domain instructionSetFma, \
class PackT \
> \
IPSDK_FORCEINLINE \
PackT \
BOOST_PP_CAT(polynomial, N)(const PackT& in, BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(N), const typename PackT::DataType& c)) \
{ \
typedef typename PackT::DataType T; \
return detail::PolynomPack<instructionSet, instructionSetFma, N, T>::act(in, BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(N), c)); \
} \
\
template < \
eInstructionSet::domain instructionSet, \
eInstructionSet::domain instructionSetFma, \
class PackT> \
IPSDK_FORCEINLINE \
void \
BOOST_PP_CAT(polynomial, N)(const PackT& in1, BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(N), const typename PackT::DataType& c), PackT& out) \
{ \
typedef typename PackT::DataType T; \
detail::PolynomPack<instructionSet, instructionSetFma, N, T>::act(in1, BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(N), c), out); \
}
Vector DataType
data type used for estimation
Definition: EstimationTypes.h:58

returns the result of polynomial application on input value x