49template<
typename Functor,
int NbParam_>
56template<
typename Functor,
int NbParam_>
66 typedef typename If< NbParam_ <= Functor::NbParam_
68 ,
Void>::Result::Type Type;
73{
typedef typename Functor::param1_type
Type;};
75{
typedef typename Functor::param2_type
Type;};
77{
typedef typename Functor::param3_type
Type;};
79{
typedef typename Functor::param4_type
Type;};
83template<
typename Functor>
111template<
class Type1,
class Type2 = Type1>
125template<
class Type1,
class Type2 = Type1>
139template<
class Type1,
class Type2 = Type1>
153template<
class Type1,
class Type2 = Type1>
167template<
class Type1,
class Type2 = Type1>
181template<
class Type1,
class Type2 = Type1>
196template<
class Type1,
class Type2 = Type1>
209template<
class Type1,
class Type2 = Type1>
222template<
class Type1,
class Type2 = Type1>
235template<
class Type1,
class Type2 = Type1>
248template<
class Type1,
class Type2 = Type1>
261template<
class Type1,
class Type2 = Type1>
275template<
class Type1,
class Type2 = Type1>
289template<
class Type1,
class Type2 = Type1>
302template<
class Type1,
class Type2 = Type1>
315template<
class Type1,
class Type2 = Type1>
328template<
class Type1,
class Type2 = Type1>
341template<
class Type1,
class Type2 = Type1>
409template<
typename Type>
426template<
typename Type>
443template<
typename Type>
460template<
typename Type>
477template<
typename Type>
494template<
typename Type>
511template<
typename Type>
528template<
typename Type>
545template<
typename Type>
562template<
typename Type>
596template<
typename Type,
bool IsInt>
599template<
typename Type>
611template<
typename Type>
628template<
typename Type>
640template<
typename Type>
657template<
typename Type>
674template<
typename Type>
691template<
typename Type>
708template<
typename Type>
725template<
typename Type>
742template<
typename Type>
759template<
typename Type>
810template<
typename Type>
821 {
return (std::abs(a)>
tol_) ? Type(1)/a: Type(0);}
930template<
typename Type>
947template<
typename Type>
959template<
typename Type>
972template<
typename Type>
984template<
typename Type,
typename OtherType>
#define _T(x)
Let x unmodified.
The MultidimRegression class allows to regress a multidimensional output variable among a multivariat...
char Char
STK fundamental type of a Char.
The namespace STK is the main domain space of the Statistical ToolKit project.
Template functor which compute the absolute value of a number.
hidden::RemoveConst< Type >::Type param1_type
result_type operator()(param1_type const &a) const
Template functor which compute the arc cosine of a number.
hidden::RemoveConst< Type >::Type param1_type
result_type operator()(param1_type const &a) const
Arithmetic properties of STK fundamental types.
static bool isFinite(Type const &x)
static bool isInfinite(Type const &x)
static bool isNA(Type const &x)
Template functor which compute the arc sine of a number.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the bitwise and of two numbers.
result_type operator()(param1_type a, param2_type b) const
hidden::RemoveConst< Type1 >::Type const & param1_type
hidden::Promote< Type1, Type2 >::result_type result_type
hidden::RemoveConst< Type2 >::Type const & param2_type
Template functor to compute the bitwise and with a fixed value.
result_type operator()(param1_type const &a) const
BitwiseAndWithOp(Type const &value)
hidden::RemoveConst< Type >::Type param1_type
BitwiseAndWithOp(BitwiseAndWithOp const &value)
Template functor which compute the bitwise or of two numbers.
hidden::Promote< Type1, Type2 >::result_type result_type
hidden::RemoveConst< Type1 >::Type const & param1_type
result_type operator()(param1_type a, param2_type b) const
hidden::RemoveConst< Type2 >::Type const & param2_type
Template functor to compute the bitwise or with a fixed value.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
BitwiseOrWithOp(Type const &value)
BitwiseOrWithOp(BitwiseOrWithOp const &value)
Template functor which compute the bitwise xor of two numbers.
result_type operator()(param1_type a, param2_type b) const
hidden::RemoveConst< Type1 >::Type const & param1_type
hidden::RemoveConst< Type2 >::Type const & param2_type
hidden::Promote< Type1, Type2 >::result_type result_type
Template functor to compute the bitwise xor with a fixed value.
result_type operator()(param1_type const &a) const
BitwiseXorWithOp(BitwiseXorWithOp const &value)
BitwiseXorWithOp(Type const &value)
hidden::RemoveConst< Type >::Type param1_type
Template functor which cast a type to another type.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the cosine of a number.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the cube of a number.
hidden::RemoveConst< Type >::Type param1_type
result_type operator()(param1_type const &a) const
Template functor which compute the difference of two numbers.
hidden::RemoveConst< Type2 >::Type const & param2_type
hidden::Promote< Type1, Type2 >::result_type result_type
result_type operator()(param1_type a, param2_type b) const
hidden::RemoveConst< Type1 >::Type const & param1_type
Template functor to add a number to a fixed value.
DifferenceWithOp(DifferenceWithOp const &value)
DifferenceWithOp(Type value)
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the division of two numbers.
hidden::RemoveConst< Type1 >::Type const & param1_type
result_type operator()(param1_type a, param2_type b) const
hidden::RemoveConst< Type2 >::Type const & param2_type
hidden::Promote< Type1, Type2 >::result_type result_type
hidden::RemoveConst< Type >::Type param1_type
DivisionWithBaseOp(const DivisionWithBaseOp &value)
DivisionWithBaseOp(param1_type const &value)
DivisionWithBaseOp(param1_type value)
Type const operator()(param1_type a) const
DivisionWithBaseOp(DivisionWithBaseOp const &value)
hidden::RemoveConst< Type >::Type param1_type
base class for DivisionWithOp functors
Template functor to divide a number by a fixed value.
DivisionWithOp(param1_type const &value)
hidden::RemoveConst< Type >::Type param1_type
Template functor testing if a number is equal to an other number.
hidden::RemoveConst< Type1 >::Type param1_type
result_type operator()(param1_type const &value1, param2_type value2) const
hidden::RemoveConst< Type2 >::Type const & param2_type
Template functor to test if a number is equal to a fixed value.
result_type operator()(param1_type const &a) const
EqualWithOp(EqualWithOp const &value)
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the exponential of a number.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor testing if a number is greater or equal than an other number.
hidden::RemoveConst< Type1 >::Type param1_type
result_type operator()(param1_type const &value1, param2_type value2) const
hidden::RemoveConst< Type2 >::Type const & param2_type
Template functor to test if a number is greater or equal than a fixed value.
GeqThanOp(GeqThanOp const &value)
hidden::RemoveConst< Type >::Type param1_type
result_type operator()(param1_type const &a) const
Template functor testing if a number is greater than an other number.
hidden::RemoveConst< Type2 >::Type const & param2_type
result_type operator()(param1_type const &value1, param2_type value2) const
hidden::RemoveConst< Type1 >::Type param1_type
Template functor to test if a number is greater than a fixed value.
GreaterThanOp(GreaterThanOp const &value)
GreaterThanOp(Type value)
hidden::RemoveConst< Type >::Type param1_type
result_type operator()(param1_type const &a) const
Template functor which compute the inverse of a number.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor testing if a number is a finite value.
result_type operator()(param1_type const &value) const
hidden::RemoveConst< Type >::Type param1_type
Template functor testing if a number is an infinite value.
hidden::RemoveConst< Type >::Type param1_type
result_type operator()(param1_type const &value1) const
Template functor testing if a number is a NA value.
result_type operator()(param1_type const &value) const
hidden::RemoveConst< Type >::Type param1_type
Template functor testing if a number is less or equal than an other number.
hidden::RemoveConst< Type1 >::Type param1_type
result_type operator()(param1_type const &value1, param2_type value2) const
hidden::RemoveConst< Type2 >::Type const & param2_type
Template functor to test if a number is less or equal than a fixed value.
hidden::RemoveConst< Type >::Type param1_type
LeqThanOp(LeqThanOp const &value)
result_type operator()(param1_type const &a) const
Template functor testing if a number is less than an other number.
result_type operator()(param1_type const &value1, param2_type value2) const
hidden::RemoveConst< Type1 >::Type param1_type
hidden::RemoveConst< Type2 >::Type const & param2_type
Template functor to test if a number is less than a fixed value.
LessThanOp(LessThanOp const &value)
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the logarithm of a number.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the logical and of two numbers.
hidden::RemoveConst< Type2 >::Type const & param2_type
hidden::RemoveConst< Type1 >::Type const & param1_type
result_type operator()(param1_type a, param2_type b) const
Template functor computing logical and with a fixed value.
LogicalAndWithOp(Type value)
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
LogicalAndWithOp(LogicalAndWithOp const &value)
Template functor which compute the logical or of two numbers.
hidden::RemoveConst< Type1 >::Type const & param1_type
hidden::RemoveConst< Type2 >::Type const & param2_type
result_type operator()(param1_type a, param2_type b) const
Template functor computing logical and with a fixed value.
hidden::RemoveConst< Type >::Type param1_type
LogicalOrWithOp(Type value)
LogicalOrWithOp(LogicalOrWithOp const &value)
result_type operator()(param1_type const &a) const
Template functor which compute the maximum of two numbers.
hidden::RemoveConst< Type1 >::Type param1_type
hidden::RemoveConst< Type2 >::Type const & param2_type
result_type operator()(param1_type const &value1, param2_type value2) const
hidden::Promote< Type1, Type2 >::result_type result_type
Template functor to compute the minimum with a fixed value.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
MaxWithOp(MaxWithOp const &value)
MaxWithOp(Type const &value)
Template functor which compute the minimum of two numbers.
result_type operator()(param1_type const &value1, param2_type value2) const
hidden::Promote< Type1, Type2 >::result_type result_type
hidden::RemoveConst< Type1 >::Type param1_type
hidden::RemoveConst< Type2 >::Type const & param2_type
Template functor to compute the minimum between a fixed value.
hidden::RemoveConst< Type >::Type param1_type
MinWithOp(Type const &value)
result_type operator()(param1_type const &a) const
MinWithOp(MinWithOp const &value)
Template functor which compute the modulo of two numbers.
hidden::RemoveConst< Type1 >::Type const & param1_type
hidden::RemoveConst< Type2 >::Type const & param2_type
result_type operator()(param1_type a, param2_type b) const
hidden::Promote< Type1, Type2 >::result_type result_type
Template functor to compute the minimum with a fixed value.
ModuloWithOp(Type const &value)
result_type operator()(param1_type const &a) const
ModuloWithOp(ModuloWithOp const &value)
hidden::RemoveConst< Type >::Type param1_type
Template functor giving the not value.
hidden::RemoveConst< Type >::Type param1_type
result_type operator()(param1_type const &value) const
Template functor testing if a number is not equal to an other number.
hidden::RemoveConst< Type1 >::Type param1_type
hidden::RemoveConst< Type2 >::Type const & param2_type
result_type operator()(param1_type const &value1, param2_type value2) const
Template functor to test if a number is different than a fixed value.
NotEqualWithOp(Type value)
NotEqualWithOp(NotEqualWithOp const &value)
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the opposite of a number.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor to raise a number to a power.
PowOp(PowOp const &value)
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the product of two numbers.
hidden::RemoveConst< Type2 >::Type const & param2_type
hidden::RemoveConst< Type1 >::Type const & param1_type
hidden::Promote< Type1, Type2 >::result_type result_type
result_type operator()(param1_type a, param2_type b) const
ProductWithOp(ProductWithOp const &value)
ProductWithOp(bool value)
Template functor computing the product of a number by a fixed value.
ProductWithOp(ProductWithOp const &value)
ProductWithOp(Type value)
hidden::RemoveConst< Type >::Type param1_type
result_type operator()(param1_type const &a) const
Template functor which compute safely the inverse of a number.
hidden::RemoveConst< Type >::Type param1_type
SafeInverseOp(SafeInverseOp const &value)
result_type operator()(param1_type const &a) const
SafeInverseOp(Type const &tol=Arithmetic< Type >::epsilon())
Template functor which return a default value if the value is NA.
SafeOp(Type const value=Type())
SafeOp(SafeOp const &value)
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the sine of a number.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the square root of a number.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor which compute the square of a number.
result_type operator()(param1_type const &a) const
hidden::RemoveConst< Type >::Type param1_type
Template functor to subtract a number to a fixed value.
result_type operator()(param1_type const &a) const
SubstractToOp(SubstractToOp const &value)
hidden::RemoveConst< Type >::Type param1_type
SubstractToOp(Type value)
Template functor which compute the sum of two numbers.
hidden::Promote< Type1, Type2 >::result_type result_type
result_type operator()(param1_type a, param2_type b) const
hidden::RemoveConst< Type1 >::Type const & param1_type
hidden::RemoveConst< Type2 >::Type const & param2_type
Template functor to add a number to a fixed value.
hidden::RemoveConst< Type >::Type param1_type
SumWithOp(SumWithOp const &value)
result_type operator()(param1_type const &a) const
Template functor which compute the tan of a number.
hidden::RemoveConst< Type >::Type param1_type
result_type operator()(param1_type const &a) const
Template functor testing if a Char is an end of line.
result_type operator()(Char c)
produce the Nth parameter type of Functor.
produce the return type of the Functor.
Functor::result_type result_type
Functor::param1_type Type
Functor::param2_type Type
Functor::param3_type Type
Functor::param4_type Type