VisionCpp  0.0.1
Static Public Member Functions | Static Public Attributes | List of all members
visioncpp::internal::LocalOutput< PointOp, IsRoot, LC, LR, Expr > Struct Template Reference

LocalOutput:Local output is used for neighbour operation in order to create a local memory for the output of non-terminal nodes in the expression tree when the NeighbourOP is used. More...

#include <local_output.hpp>

Collaboration diagram for visioncpp::internal::LocalOutput< PointOp, IsRoot, LC, LR, Expr >:

Static Public Member Functions

static decltype(tools::tuple::make_tuple()) getTuple (cl::sycl::handler &cgh)
 getTuple function is used to create and wrap local memory into a tuple More...
 

Static Public Attributes

static constexpr size_t Out_LC = LC
 
static constexpr size_t Out_LR = LR
 

Detailed Description

template<bool PointOp, size_t IsRoot, size_t LC, size_t LR, typename Expr>
struct visioncpp::internal::LocalOutput< PointOp, IsRoot, LC, LR, Expr >

LocalOutput:Local output is used for neighbour operation in order to create a local memory for the output of non-terminal nodes in the expression tree when the NeighbourOP is used.

LocalOutput accessor.

The local output does nothing when the operation type is point operation. If it is called when the whole expression tree is point op or global op no local memory will be created. When the combination of point op and NeighbourOP is used we consider the expression tree as a NeighbourOP expression tree and generate a set of local memory. template parameters:

Template Parameters
PointOpdetermines whether or not the overall expression tree is pointOp
IsRootdetermines whether or not a node is a root node.
LCdetermines the column size of the local memory
LRdetermines the row size of the local memory
Exprdetermines the type of the expression

Definition at line 66 of file local_output.hpp.

Member Function Documentation

◆ getTuple()

template<bool PointOp, size_t IsRoot, size_t LC, size_t LR, typename Expr >
static decltype(tools::tuple::make_tuple()) visioncpp::internal::LocalOutput< PointOp, IsRoot, LC, LR, Expr >::getTuple ( cl::sycl::handler &  cgh)
inlinestatic

getTuple function is used to create and wrap local memory into a tuple

Parameters
cgh: sycl command group handler.

Definition at line 72 of file local_output.hpp.

References visioncpp::internal::tools::tuple::make_tuple().

Referenced by visioncpp::internal::LocalOutput< false, IsRoot, LC, LR, ParallelCopy< LHSExpr, RHSExpr, Cols, Rows, OffsetColIn, OffsetRowIn, OffsetColOut, OffsetRowOut, LeafType, LVL > >::getTuple(), visioncpp::internal::LocalOutput< false, IsRoot, LC, LR, Assign< LHSExpr, RHSExpr, Cols, Rows, LeafType, LVL > >::getTuple(), visioncpp::internal::LocalOutput< false, IsRoot, LC, LR, StnNoFilt< OP, Halo_T, Halo_L, Halo_B, Halo_R, RHSExpr, Cols, Rows, LeafType, LVL > >::getTuple(), visioncpp::internal::LocalOutput< false, IsRoot, LC, LR, RUnOP< OP, RHSExpr, Cols, Rows, LeafType, LVL > >::getTuple(), visioncpp::internal::LocalOutput< false, IsRoot, LC, LR, RDCN< OP, RHSExpr, Cols, Rows, LeafType, LVL > >::getTuple(), visioncpp::internal::LocalOutput< false, IsRoot, LC, LR, StnFilt< OP, Halo_T, Halo_L, Halo_B, Halo_R, LHSExpr, RHSExpr, Cols, Rows, LeafType, LVL > >::getTuple(), and visioncpp::internal::LocalOutput< false, IsRoot, LC, LR, RBiOP< OP, LHSExpr, RHSExpr, Cols, Rows, LeafType, LVL > >::getTuple().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ Out_LC

template<bool PointOp, size_t IsRoot, size_t LC, size_t LR, typename Expr >
constexpr size_t visioncpp::internal::LocalOutput< PointOp, IsRoot, LC, LR, Expr >::Out_LC = LC
staticconstexpr

◆ Out_LR

template<bool PointOp, size_t IsRoot, size_t LC, size_t LR, typename Expr >
constexpr size_t visioncpp::internal::LocalOutput< PointOp, IsRoot, LC, LR, Expr >::Out_LR = LR
staticconstexpr

The documentation for this struct was generated from the following files: