Inherited by ltl::MArray< TDAT, 2 >, and ltl::MArray< TDAT, NDIM >.
Base class for all operands in expression templates. Both nodes and leafs of expressions inherit from this type.
This class uses the Curiously Recurring Template Pattern (CRTP) to implement "compile-time polymorphism" by taking the derived type as a template parameter and providing a method derived()
to cast itself to the derived type.
The rank of the expression operand is made explicit through the second template parameter N_Dims
to allow strict type checking on the rank in functions that accept ExprBase
objects as parameters (e.g. make sure that parameters have the same rank, or some predetermined rank).
ltl::ExprBase< Derived_T, N_Dims >::ExprBase | ( | ) | [inline] |
ltl::ExprBase< Derived_T, N_Dims >::ExprBase | ( | const ExprBase< Derived_T, N_Dims > & | ) | [inline] |
Derived_T& ltl::ExprBase< Derived_T, N_Dims >::derived | ( | ) | [inline] |
Referenced by ltl::allof(), ltl::anyof(), ltl::average(), ltl::biweight_mean(), ltl::convolve(), ltl::count(), ltl::histogram(), ltl::kappa_average_median(), ltl::kappa_median_average(), ltl::kappa_sigma_average(), ltl::kappa_sigma_median(), ltl::max(), ltl::median_exact(), ltl::min(), ltl::noneof(), ltl::cast< To_Type >::operator()(), ltl::product(), ltl::robust_sigma(), ltl::sum(), and ltl::variance().
const Derived_T& ltl::ExprBase< Derived_T, N_Dims >::derived | ( | ) | const [inline] |