Class for storing data required for delayed unary operations, such as the operand (e.g. the matrix to which the operation is to be applied) and the unary operator (e.g. inverse). The operand is stored as a reference (which can be optimised away), while the operator is "stored" through the template definition (op_type). The operands can be 'Mat', 'Row', 'Col', 'Op', and 'Glue'. Note that as 'Glue' can be one of the operands, more than one matrix can be stored. More...
#include <Op_proto.hpp>
Public Types | |
typedef T1::elem_type | elem_type |
typedef get_pod_type < elem_type >::pod_type | pod_type |
Public Member Functions | |
Op (const T1 &in_m) | |
Op (const T1 &in_m, const elem_type in_aux) | |
Op (const T1 &in_m, const u32 in_aux_u32_a, const u32 in_aux_u32_b) | |
Op (const T1 &in_m, const elem_type in_aux, const u32 in_aux_u32_a, const u32 in_aux_u32_b) | |
Op (const u32 in_aux_u32_a, const u32 in_aux_u32_b, const char junk) | |
~Op () | |
Public Attributes | |
const T1 & | m |
storage of reference to the operand (e.g. a matrix) | |
const elem_type | aux |
storage of auxiliary data, user defined format | |
const u32 | aux_u32_a |
storage of auxiliary data, u32 format | |
const u32 | aux_u32_b |
storage of auxiliary data, u32 format |
Class for storing data required for delayed unary operations, such as the operand (e.g. the matrix to which the operation is to be applied) and the unary operator (e.g. inverse). The operand is stored as a reference (which can be optimised away), while the operator is "stored" through the template definition (op_type). The operands can be 'Mat', 'Row', 'Col', 'Op', and 'Glue'. Note that as 'Glue' can be one of the operands, more than one matrix can be stored.
For example, we could have: Op< Glue< Mat, Mat, glue_times >, op_trans >
Definition at line 32 of file Op_proto.hpp.
Definition at line 36 of file Op_proto.hpp.
typedef get_pod_type<elem_type>::pod_type Op< T1, op_type >::pod_type |
Definition at line 37 of file Op_proto.hpp.
storage of reference to the operand (e.g. a matrix)
Definition at line 48 of file Op_proto.hpp.
Referenced by accu(), op_atanh::apply(), op_tanh::apply(), op_atan::apply(), op_tan::apply(), op_asinh::apply(), op_sinh::apply(), op_asin::apply(), op_sin::apply(), op_acosh::apply(), op_cosh::apply(), op_acos::apply(), op_cos::apply(), op_trans::apply(), op_sum::apply(), op_sort::apply(), op_shuffle::apply(), op_scalar_div_post::apply(), op_scalar_div_pre::apply(), op_scalar_times::apply(), op_scalar_minus_post::apply(), op_scalar_minus_pre::apply(), op_scalar_plus::apply(), op_reshape::apply(), op_repmat::apply(), op_prod::apply(), op_pinv::apply(), op_neg::apply(), op_conj::apply(), op_pow_s32::apply(), op_pow::apply(), op_square::apply(), op_sqrt::apply(), op_trunc_exp::apply(), op_exp::apply(), op_log10::apply(), op_trunc_log::apply(), op_log::apply(), op_min::apply(), op_median::apply(), op_mean::apply(), op_max::apply(), op_inv::apply(), op_htrans::apply(), op_eps::apply(), op_diagmat_vec::apply(), op_diagmat::apply(), op_cov::apply(), op_cor::apply(), glue_times_diag::apply(), glue_schur_diag::apply(), glue_plus_diag::apply(), glue_minus_diag::apply(), glue_plus::apply_inplace(), glue_minus::apply_inplace(), conj(), det(), htrans(), inv(), max(), mean(), min(), operator*(), operator+(), prod(), sum(), trace(), and trans().
storage of auxiliary data, user defined format
Definition at line 49 of file Op_proto.hpp.
Referenced by op_scalar_div_post::apply(), op_scalar_div_pre::apply(), op_scalar_times::apply(), op_scalar_minus_post::apply(), op_scalar_minus_pre::apply(), op_scalar_plus::apply(), op_reshape::apply(), op_pinv::apply(), op_pow::apply(), glue_plus::apply_inplace(), glue_minus::apply_inplace(), operator*(), operator+(), and trace().
storage of auxiliary data, u32 format
Definition at line 50 of file Op_proto.hpp.
Referenced by op_zeros::apply(), op_sum::apply(), op_sort::apply(), op_shuffle::apply(), op_reshape::apply(), op_repmat::apply(), op_randn::apply(), op_rand::apply(), op_prod::apply(), op_ones_full::apply(), op_pow_s32::apply(), op_min::apply(), op_median::apply(), op_mean::apply(), op_max::apply(), op_cov::apply(), op_cor::apply(), operator*(), and operator/().
storage of auxiliary data, u32 format
Definition at line 51 of file Op_proto.hpp.
Referenced by op_zeros::apply(), op_sort::apply(), op_reshape::apply(), op_repmat::apply(), op_randn::apply(), op_rand::apply(), op_ones_full::apply(), op_pow_s32::apply(), operator*(), and operator/().