24 #ifndef VISIONCPP_INCLUDE_FRAMEWORK_EXPR_TREE_POINT_OPS_RESIZABLE_UNARY_HPP_
25 #define VISIONCPP_INCLUDE_FRAMEWORK_EXPR_TREE_POINT_OPS_RESIZABLE_UNARY_HPP_
39 template <
typename UN_OP,
typename RHS,
size_t Cols,
size_t Rows,
size_t LfType,
48 static constexpr
size_t Level = LVL;
52 static constexpr
size_t LeafType = Type::LeafType;
60 template <
typename TmpRHS>
93 template <
bool ForcedToExec,
size_t LC,
size_t LR,
size_t LCT,
size_t LRT,
98 rhs.template sub_expression_evaluation<Unary_Conds, LC, LR, LCT, LRT>(
101 return execute_expr<Unary_Conds, ForcedToExec, ExprExchange<RHS>, LC, LR,
103 rhs.template sub_expression_evaluation<Unary_Conds, LC, LR, LCT, LRT>(
112 template <
typename OP,
size_t Cols,
size_t Rows,
size_t LeafType,
typename RHS>
113 internal::RUnOP<internal::PixelUnaryOp<OP, typename RHS::OutType>, RHS, Cols,
114 Rows, LeafType, 1 + RHS::Level>
117 Cols, Rows, LeafType, 1 + RHS::Level>(rhs);
123 template <
typename OP,
typename RHS>
126 RHS::Type::Cols, RHS::Type::Rows, RHS::Type::LeafType,
129 RHS::Type::Cols, RHS::Type::Rows, RHS::Type::LeafType,
130 1 + RHS::Level>(rhs);
135 template <
typename OP,
size_t Cols,
size_t Rows,
size_t LeafType,
size_t Sc,
136 typename ElementTp,
typename Scalar>
137 internal::RUnOP<internal::PixelUnaryOp<OP, ElementTp>,
138 internal::VisionMemory<
true, Sc, LeafType, Scalar, 1, 1,
140 Cols, Rows, LeafType, 1>
142 true, Sc, LeafType, Scalar, 1, 1, ElementTp, 1,
scope::Global, 0> rhs) {
147 Cols, Rows, LeafType, 1>(rhs);
static constexpr size_t Unary
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
static constexpr size_t Const
static constexpr ScopeType Global
internal::RUnOP< internal::PixelUnaryOp< OP, ElementTp >, internal::VisionMemory< true, Sc, LeafType, Scalar, 1, 1, ElementTp, 1, scope::Global, 0 >, Cols, Rows, LeafType, 1 > broadcast_value(internal::VisionMemory< true, Sc, LeafType, Scalar, 1, 1, ElementTp, 1, scope::Global, 0 > rhs)
template deduction for RUnOP when it is used to broadcast one const value to all the channels of its ...
auto point_operation(LHS lhs, RHS rhs) -> internal::RBiOP< internal::PixelBinaryOp< OP, typename LHS::OutType, typename RHS::OutType >, LHS, RHS, internal::InheritTypeBinary< LHS, RHS >::Type::Cols, internal::InheritTypeBinary< LHS, RHS >::Type::Rows, internal::InheritTypeBinary< LHS, RHS >::Type::LeafType, 1+internal::tools::StaticIf<(LHS::Level > RHS::Level), LHS, RHS >::Type::Level >
template deduction for RBiOP struct where the Column, Row, and memory_type of the output has been aut...
This class is used to encapsulate the unary point operation functor and the types of each operand in ...
The definition is in RUnOP file.
static constexpr size_t CThread
static constexpr bool Unary_Conds
auto sub_expression_evaluation(const DeviceT &dev) -> decltype(execute_expr< Unary_Conds, ForcedToExec, ExprExchange< RHS >, LC, LR, LCT, LRT >(rhs.template sub_expression_evaluation< Unary_Conds, LC, LR, LCT, LRT >(dev), dev))
sub_expression_evaluation
static constexpr size_t Level
typename OutputMemory< OutType, LfType, Cols, Rows, LVL >::Type Type
bool subexpr_execution_reseter
static constexpr size_t RThread
static constexpr size_t ND_Category
static constexpr size_t Operation_type
static constexpr size_t LeafType
static constexpr bool SubExpressionEvaluationNeeded
typename UN_OP::OutType OutType
static constexpr bool has_out
Definition of VisionMemory.