CMS 3D CMS Logo

Macros
Simplify_begin.h File Reference

Go to the source code of this file.

Macros

#define ABS(A)   typename Abs<A>::type
 
#define ABS_S(A)   AbsStruct<A>
 
#define COMBINE(A, B, RES)
 
#define COS(A)   typename Cos<A>::type
 
#define COS2(A)   typename Cos2<A>::type
 
#define COS_RULE(TMPL, T, RES, COMB)
 
#define COS_S(A)   CosStruct<A>
 
#define DERIV(X, A)   typename Derivative<X, A>::type
 
#define DERIV_RULE(TMPL, T, RES, COMB)
 
#define DIFF(A, B)   typename Difference<A, B>::type
 
#define DIFF_RULE(TMPL, T1, T2, RES, COMB)
 
#define EXP(A)   typename Exp<A>::type
 
#define EXP_RULE(TMPL, T, RES, COMB)
 
#define EXP_S(A)   ExpStruct<A>
 
#define FRACT(N, M)   typename Fraction<N, M>::type
 
#define FRACT_S(N, M)   FractionStruct<N, M>
 
#define GET(A, RES)
 
#define LOG(A)   typename Log<A>::type
 
#define LOG_RULE(TMPL, T, RES, COMB)
 
#define LOG_S(A)   LogStruct<A>
 
#define MINUS(A)   typename Minus<A>::type
 
#define MINUS_RULE(TMPL, T, RES, COMB)
 
#define MINUS_S(A)   MinusStruct<A>
 
#define NUM(N)   Numerical<N>
 
#define POWER(A, B)   typename Power<A, B>::type
 
#define POWER_RULE(TMPL, T1, T2, RES, COMB)
 
#define POWER_S(A, B)   PowerStruct<A, B>
 
#define PRIMIT(X, A)   typename Primitive<A, X>::type
 
#define PRIMIT_RULE(TMPL, T, RES, COMB)
 
#define PROD(A, B)   typename Product<A, B>::type
 
#define PROD_RULE(TMPL, T1, T2, RES, COMB)
 
#define PROD_S(A, B)   ProductStruct<A, B>
 
#define RATIO(A, B)   typename Ratio<A, B>::type
 
#define RATIO_RULE(TMPL, T1, T2, RES, COMB)
 
#define RATIO_S(A, B)   RatioStruct<A, B>
 
#define SGN(A)   typename Sgn<A>::type
 
#define SGN_S(A)   SgnStruct<A>
 
#define SIN(A)   typename Sin<A>::type
 
#define SIN2(A)   typename Sin2<A>::type
 
#define SIN_RULE(TMPL, T, RES, COMB)
 
#define SIN_S(A)   SinStruct<A>
 
#define SQRT(A)   typename Sqrt<A>::type
 
#define SQRT_S(A)   SqrtStruct<A>
 
#define SQUARE(A)   typename Square<A>::type
 
#define SUM(A, B)   typename Sum<A, B>::type
 
#define SUM_RULE(TMPL, T1, T2, RES, COMB)
 
#define SUM_S(A, B)   SumStruct<A, B>
 
#define TAN(A)   typename Tan<A>::type
 
#define TAN_RULE(TMPL, T, RES, COMB)
 
#define TAN_S(A)   TanStruct<A>
 
#define TEMPL(X)   template <TYP##X>
 
#define TYP0
 
#define TYPN1   int n
 
#define TYPN1T1   int n, typename A
 
#define TYPN1T2   int n, typename A, typename B
 
#define TYPN2   int n, int m
 
#define TYPN2T1   int n, int m, typename A
 
#define TYPN2T2   int n, int m, typename A, typename B
 
#define TYPN3   int n, int m, int k
 
#define TYPN3T1   int n, int m, int k, typename A
 
#define TYPN4   int n, int m, int k, int l
 
#define TYPT1   typename A
 
#define TYPT2   typename A, typename B
 
#define TYPT3   typename A, typename B, typename C
 
#define TYPT4   typename A, typename B, typename C, typename D
 
#define TYPX   typename X
 
#define TYPXN1   typename X, int n
 
#define TYPXN1T1   typename X, int n, typename A
 
#define TYPXN2   typename X, int n, int m
 
#define TYPXN2T1   typename X, int n, int m, typename A
 
#define TYPXT1   typename X, typename A
 
#define TYPXT2   typename X, typename A, typename B
 

Macro Definition Documentation

#define ABS (   A)    typename Abs<A>::type

Definition at line 67 of file Simplify_begin.h.

Referenced by funct::primitive().

#define ABS_S (   A)    AbsStruct<A>

Definition at line 49 of file Simplify_begin.h.

#define COMBINE (   A,
  B,
  RES 
)
Value:
inline static type combine(const A& _1, const B& _2) { return RES; } \
struct __useless_ignoreme
type
Definition: HCALResponse.h:21
static type combine(const A &_1, const B &_2)
Definition: Factorize.h:176
static const std::string B

Definition at line 70 of file Simplify_begin.h.

#define COS (   A)    typename Cos<A>::type

Definition at line 63 of file Simplify_begin.h.

Referenced by funct::primitive().

#define COS2 (   A)    typename Cos2<A>::type

Definition at line 65 of file Simplify_begin.h.

#define COS_RULE (   TMPL,
  T,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Cos<T> { \
typedef RES type; \
inline static type compose(const T& _) { return COMB; } \
}
type
Definition: HCALResponse.h:21
funct::Composition< A, B >::type compose(const A &a, const B &b)
Definition: Composition.h:24
long double T

Definition at line 137 of file Simplify_begin.h.

#define COS_S (   A)    CosStruct<A>

Definition at line 47 of file Simplify_begin.h.

Referenced by funct::primitive().

#define DERIV (   X,
 
)    typename Derivative<X, A>::type

Definition at line 156 of file Simplify_begin.h.

#define DERIV_RULE (   TMPL,
  T,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Derivative<X, T> { \
typedef RES type; \
inline static type get(const T& _) { return COMB; } \
}
type
Definition: HCALResponse.h:21
long double T

Definition at line 159 of file Simplify_begin.h.

#define DIFF (   A,
 
)    typename Difference<A, B>::type

Definition at line 53 of file Simplify_begin.h.

#define DIFF_RULE (   TMPL,
  T1,
  T2,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Difference<T1, T2> { \
typedef RES type; \
inline static type combine(const T1& _1, const T2& _2) { return COMB; } \
}
type
Definition: HCALResponse.h:21
static type combine(const A &_1, const B &_2)
Definition: Factorize.h:176

Definition at line 88 of file Simplify_begin.h.

#define EXP (   A)    typename Exp<A>::type

Definition at line 60 of file Simplify_begin.h.

Referenced by funct::primitive().

#define EXP_RULE (   TMPL,
  T,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Exp<T> { \
typedef RES type; \
inline static type compose(const T& _) { return COMB; } \
}
type
Definition: HCALResponse.h:21
funct::Composition< A, B >::type compose(const A &a, const B &b)
Definition: Composition.h:24
long double T

Definition at line 116 of file Simplify_begin.h.

#define EXP_S (   A)    ExpStruct<A>

Definition at line 44 of file Simplify_begin.h.

Referenced by funct::primitive().

#define FRACT (   N,
 
)    typename Fraction<N, M>::type

Definition at line 36 of file Simplify_begin.h.

Referenced by funct::primitive().

#define FRACT_S (   N,
 
)    FractionStruct<N, M>

Definition at line 42 of file Simplify_begin.h.

Referenced by funct::primitive().

#define GET (   A,
  RES 
)
Value:
inline static type get(const A& _) { return RES; } \
\
struct __useless_ignoreme
type
Definition: HCALResponse.h:21

Definition at line 151 of file Simplify_begin.h.

#define LOG (   A)    typename Log<A>::type
#define LOG_RULE (   TMPL,
  T,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Log<T> { \
typedef RES type; \
inline static type compose(const T& _) { return COMB; } \
}
type
Definition: HCALResponse.h:21
funct::Composition< A, B >::type compose(const A &a, const B &b)
Definition: Composition.h:24
long double T

Definition at line 123 of file Simplify_begin.h.

#define LOG_S (   A)    LogStruct<A>

Definition at line 45 of file Simplify_begin.h.

Referenced by funct::primitive().

#define MINUS (   A)    typename Minus<A>::type

Definition at line 54 of file Simplify_begin.h.

Referenced by funct::primitive().

#define MINUS_RULE (   TMPL,
  T,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Minus<T> { \
typedef RES type; \
inline static type operate(const T& _) { return COMB; } \
}
type
Definition: HCALResponse.h:21
long double T

Definition at line 74 of file Simplify_begin.h.

#define MINUS_S (   A)    MinusStruct<A>

Definition at line 38 of file Simplify_begin.h.

#define NUM (   N)    Numerical<N>

Definition at line 35 of file Simplify_begin.h.

#define POWER (   A,
 
)    typename Power<A, B>::type

Definition at line 57 of file Simplify_begin.h.

#define POWER_RULE (   TMPL,
  T1,
  T2,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Power<T1, T2> { \
typedef RES type; \
inline static type combine(const T1& _1, const T2& _2) { return COMB; } \
}
type
Definition: HCALResponse.h:21
static type combine(const A &_1, const B &_2)
Definition: Factorize.h:176

Definition at line 109 of file Simplify_begin.h.

#define POWER_S (   A,
 
)    PowerStruct<A, B>

Definition at line 41 of file Simplify_begin.h.

#define PRIMIT (   X,
 
)    typename Primitive<A, X>::type

Definition at line 157 of file Simplify_begin.h.

#define PRIMIT_RULE (   TMPL,
  T,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Primitive<T, X> { \
typedef RES type; \
inline static type get(const T& _) { return COMB; } \
}
type
Definition: HCALResponse.h:21
long double T

Definition at line 166 of file Simplify_begin.h.

#define PROD (   A,
 
)    typename Product<A, B>::type
#define PROD_RULE (   TMPL,
  T1,
  T2,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Product<T1, T2> { \
typedef RES type; \
inline static type combine(const T1& _1, const T2& _2) { return COMB; } \
}
type
Definition: HCALResponse.h:21
static type combine(const A &_1, const B &_2)
Definition: Factorize.h:176

Definition at line 95 of file Simplify_begin.h.

#define PROD_S (   A,
 
)    ProductStruct<A, B>

Definition at line 39 of file Simplify_begin.h.

#define RATIO (   A,
 
)    typename Ratio<A, B>::type

Definition at line 56 of file Simplify_begin.h.

Referenced by Comparator::Draw(), funct::get(), and funct::primitive().

#define RATIO_RULE (   TMPL,
  T1,
  T2,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Ratio<T1, T2> { \
typedef RES type; \
inline static type combine(const T1& _1, const T2& _2) { return COMB; } \
}
type
Definition: HCALResponse.h:21
static type combine(const A &_1, const B &_2)
Definition: Factorize.h:176

Definition at line 102 of file Simplify_begin.h.

#define RATIO_S (   A,
 
)    RatioStruct<A, B>

Definition at line 40 of file Simplify_begin.h.

Referenced by funct::primitive().

#define SGN (   A)    typename Sgn<A>::type
#define SGN_S (   A)    SgnStruct<A>

Definition at line 50 of file Simplify_begin.h.

Referenced by funct::primitive().

#define SIN (   A)    typename Sin<A>::type

Definition at line 62 of file Simplify_begin.h.

Referenced by funct::primitive().

#define SIN2 (   A)    typename Sin2<A>::type

Definition at line 64 of file Simplify_begin.h.

#define SIN_RULE (   TMPL,
  T,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Sin<T> { \
typedef RES type; \
inline static type compose(const T& _) { return COMB; } \
}
type
Definition: HCALResponse.h:21
funct::Composition< A, B >::type compose(const A &a, const B &b)
Definition: Composition.h:24
long double T

Definition at line 130 of file Simplify_begin.h.

#define SIN_S (   A)    SinStruct<A>

Definition at line 46 of file Simplify_begin.h.

Referenced by funct::primitive().

#define SQRT (   A)    typename Sqrt<A>::type

Definition at line 59 of file Simplify_begin.h.

#define SQRT_S (   A)    SqrtStruct<A>

Definition at line 43 of file Simplify_begin.h.

Referenced by funct::primitive().

#define SQUARE (   A)    typename Square<A>::type

Definition at line 58 of file Simplify_begin.h.

#define SUM (   A,
 
)    typename Sum<A, B>::type
#define SUM_RULE (   TMPL,
  T1,
  T2,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Sum<T1, T2> { \
typedef RES type; \
inline static type combine(const T1& _1, const T2& _2) { return COMB; } \
}
type
Definition: HCALResponse.h:21
static type combine(const A &_1, const B &_2)
Definition: Factorize.h:176

Definition at line 81 of file Simplify_begin.h.

#define SUM_S (   A,
 
)    SumStruct<A, B>

Definition at line 37 of file Simplify_begin.h.

Referenced by funct::primitive().

#define TAN (   A)    typename Tan<A>::type

Definition at line 66 of file Simplify_begin.h.

Referenced by funct::primitive().

#define TAN_RULE (   TMPL,
  T,
  RES,
  COMB 
)
Value:
template <TMPL> \
struct Tan<T> { \
typedef RES type; \
inline static type compose(const T& _) { return COMB; } \
}
type
Definition: HCALResponse.h:21
funct::Composition< A, B >::type compose(const A &a, const B &b)
Definition: Composition.h:24
long double T

Definition at line 144 of file Simplify_begin.h.

#define TAN_S (   A)    TanStruct<A>

Definition at line 48 of file Simplify_begin.h.

Referenced by funct::primitive().

#define TEMPL (   X)    template <TYP##X>

Definition at line 33 of file Simplify_begin.h.

#define TYP0

Definition at line 4 of file Simplify_begin.h.

#define TYPN1   int n

Definition at line 11 of file Simplify_begin.h.

#define TYPN1T1   int n, typename A

Definition at line 16 of file Simplify_begin.h.

#define TYPN1T2   int n, typename A, typename B

Definition at line 17 of file Simplify_begin.h.

#define TYPN2   int n, int m

Definition at line 12 of file Simplify_begin.h.

#define TYPN2T1   int n, int m, typename A

Definition at line 18 of file Simplify_begin.h.

#define TYPN2T2   int n, int m, typename A, typename B

Definition at line 19 of file Simplify_begin.h.

#define TYPN3   int n, int m, int k

Definition at line 13 of file Simplify_begin.h.

#define TYPN3T1   int n, int m, int k, typename A

Definition at line 20 of file Simplify_begin.h.

#define TYPN4   int n, int m, int k, int l

Definition at line 14 of file Simplify_begin.h.

#define TYPT1   typename A

Definition at line 6 of file Simplify_begin.h.

#define TYPT2   typename A, typename B

Definition at line 7 of file Simplify_begin.h.

#define TYPT3   typename A, typename B, typename C

Definition at line 8 of file Simplify_begin.h.

#define TYPT4   typename A, typename B, typename C, typename D

Definition at line 9 of file Simplify_begin.h.

#define TYPX   typename X

Definition at line 22 of file Simplify_begin.h.

Referenced by funct::primitive().

#define TYPXN1   typename X, int n

Definition at line 27 of file Simplify_begin.h.

Referenced by funct::primitive().

#define TYPXN1T1   typename X, int n, typename A

Definition at line 30 of file Simplify_begin.h.

#define TYPXN2   typename X, int n, int m

Definition at line 28 of file Simplify_begin.h.

Referenced by funct::primitive().

#define TYPXN2T1   typename X, int n, int m, typename A

Definition at line 31 of file Simplify_begin.h.

#define TYPXT1   typename X, typename A

Definition at line 24 of file Simplify_begin.h.

Referenced by funct::primitive().

#define TYPXT2   typename X, typename A, typename B

Definition at line 25 of file Simplify_begin.h.

Referenced by funct::primitive().