24 #ifndef VISIONCPP_INCLUDE_FRAMEWORK_EXPR_TREE_NEIGHBOUR_OPS_REDUCTION_HPP_
25 #define VISIONCPP_INCLUDE_FRAMEWORK_EXPR_TREE_NEIGHBOUR_OPS_REDUCTION_HPP_
40 template <
typename DownSmplOP,
typename RHS,
size_t Cols,
size_t Rows,
41 size_t LfType,
size_t LVL>
47 1, RHS::CThread / Cols>::Value;
51 1, RHS::RThread / Rows>::Value;
54 using OutType =
typename DownSmplOP::OutType;
57 static constexpr
size_t Level = LVL;
61 static constexpr
size_t LeafType = Type::LeafType;
64 RHS::SubExpressionEvaluationNeeded;
68 template <
typename TmpRHS>
100 template <
bool ForcedToExec,
size_t LC,
size_t LR,
size_t LCT,
size_t LRT,
123 template <
typename OP,
size_t Cols,
size_t Rows,
size_t LeafType,
typename RHS>
126 Cols, Rows, LeafType, 1 + RHS::Level> {
128 Cols, Rows, LeafType, 1 + RHS::Level>(rhs);
132 template <
typename OP,
size_t Cols,
size_t Rows,
size_t LeafType,
typename RHS>
135 Cols, Rows, LeafType, 1 + RHS::Level> {
137 Cols, Rows, LeafType, 1 + RHS::Level>(rhs);
static constexpr size_t Unary
constexpr static size_t GlobalNeighbourOP
auto execute_expr(NestedExpr nestedExpr, const DeviceT &dev) -> decltype(internal::IfExprExecNeeded< Conds, ParentConds, internal::expr_category::Unary, Expr, DeviceT >::template execute_expr< LC, LR, LCT, LRT >(nestedExpr, dev))
template deduction for IfExprExecNeeded when the expression category is unary
auto neighbour_operation(RHS rhs) -> internal::RDCN< internal::LocalUnaryOp< OP, typename RHS::OutType >, RHS, Cols, Rows, LeafType, 1+RHS::Level >
template deduction function for RDCN when it is used for NeighbourOP.
auto global_operation(RHS rhs) -> internal::RDCN< internal::GlobalUnaryOp< OP, typename RHS::OutType >, RHS, Cols, Rows, LeafType, 1+RHS::Level >
template deduction function for RDCN when it is used for GlobalNeighbourOP.
The definition is in RDCN file.
auto sub_expression_evaluation(const DeviceT &dev) -> decltype(execute_expr< DownSmplOP::Operation_type==ops_category::GlobalNeighbourOP, ForcedToExec, ExprExchange< RHS >, LC, LR, LCT, LRT >(rhs.template sub_expression_evaluation< DownSmplOP::Operation_type==ops_category::GlobalNeighbourOP, LC, LR, LCT, LRT >(dev), dev))
sub_expression_evaluation
bool subexpr_execution_reseter
static constexpr size_t CThread
static constexpr bool SubExpressionEvaluationNeeded
static constexpr size_t Operation_type
static constexpr size_t RThread
typename OutputMemory< OutType, LfType, Cols, Rows, LVL >::Type Type
static constexpr bool has_out
static constexpr size_t Level
static constexpr size_t ND_Category
static constexpr size_t LeafType
typename DownSmplOP::OutType OutType
static constexpr size_t LR_Ratio
static constexpr size_t LC_Ratio
Definition of VisionMemory.