LibreOffice Module sc (master) 1
Public Member Functions | Protected Attributes | List of all members
sc::opencl::DynamicKernelSlidingArgument< Base > Class Template Reference

Handling a Double Vector that is used as a sliding window input to either a sliding window average or sum-of-products Generate a sequential loop for reductions. More...

#include <opbase.hxx>

Inheritance diagram for sc::opencl::DynamicKernelSlidingArgument< Base >:
[legend]
Collaboration diagram for sc::opencl::DynamicKernelSlidingArgument< Base >:
[legend]

Public Member Functions

 DynamicKernelSlidingArgument (const ScCalcConfig &config, const std::string &s, const FormulaTreeNodeRef &ft, std::shared_ptr< SlidingFunctionBase > CodeGen, int index)
 
virtual bool NeedParallelReduction () const
 
virtual void GenSlidingWindowFunction (outputstream &)
 
std::string GenSlidingWindowDeclRef (bool nested=false) const
 
size_t GenReductionLoopHeader (outputstream &ss, bool &needBody)
 Controls how the elements in the DoubleVectorRef are traversed. More...
 
size_t GetArrayLength () const
 
size_t GetWindowSize () const
 
bool GetStartFixed () const
 
bool GetEndFixed () const
 

Protected Attributes

bool bIsStartFixed
 
bool bIsEndFixed
 
const formula::DoubleVectorRefTokenmpDVR
 
std::shared_ptr< SlidingFunctionBasempCodeGen
 

Detailed Description

template<class Base>
class sc::opencl::DynamicKernelSlidingArgument< Base >

Handling a Double Vector that is used as a sliding window input to either a sliding window average or sum-of-products Generate a sequential loop for reductions.

Definition at line 439 of file opbase.hxx.

Constructor & Destructor Documentation

◆ DynamicKernelSlidingArgument()

template<class Base >
sc::opencl::DynamicKernelSlidingArgument< Base >::DynamicKernelSlidingArgument ( const ScCalcConfig config,
const std::string &  s,
const FormulaTreeNodeRef ft,
std::shared_ptr< SlidingFunctionBase CodeGen,
int  index 
)

Member Function Documentation

◆ GenReductionLoopHeader()

template<class Base >
size_t sc::opencl::DynamicKernelSlidingArgument< Base >::GenReductionLoopHeader ( outputstream ss,
bool &  needBody 
)

Controls how the elements in the DoubleVectorRef are traversed.

Definition at line 997 of file formulagroupcl.cxx.

References count, mpCodeGen, and UNROLLING_FACTOR.

◆ GenSlidingWindowDeclRef()

template<class Base >
std::string sc::opencl::DynamicKernelSlidingArgument< Base >::GenSlidingWindowDeclRef ( bool  nested = false) const

Definition at line 973 of file formulagroupcl.cxx.

◆ GenSlidingWindowFunction()

template<class Base >
virtual void sc::opencl::DynamicKernelSlidingArgument< Base >::GenSlidingWindowFunction ( outputstream )
inlinevirtual

Definition at line 447 of file opbase.hxx.

◆ GetArrayLength()

template<class Base >
size_t sc::opencl::DynamicKernelSlidingArgument< Base >::GetArrayLength ( ) const
inline

◆ GetEndFixed()

template<class Base >
bool sc::opencl::DynamicKernelSlidingArgument< Base >::GetEndFixed ( ) const
inline

◆ GetStartFixed()

template<class Base >
bool sc::opencl::DynamicKernelSlidingArgument< Base >::GetStartFixed ( ) const
inline

◆ GetWindowSize()

template<class Base >
size_t sc::opencl::DynamicKernelSlidingArgument< Base >::GetWindowSize ( ) const
inline

◆ NeedParallelReduction()

template<class Base >
bool sc::opencl::DynamicKernelSlidingArgument< Base >::NeedParallelReduction
virtual

Definition at line 964 of file formulagroupcl.cxx.

References mpCodeGen.

Member Data Documentation

◆ bIsEndFixed

template<class Base >
bool sc::opencl::DynamicKernelSlidingArgument< Base >::bIsEndFixed
protected

◆ bIsStartFixed

template<class Base >
bool sc::opencl::DynamicKernelSlidingArgument< Base >::bIsStartFixed
protected

◆ mpCodeGen

template<class Base >
std::shared_ptr<SlidingFunctionBase> sc::opencl::DynamicKernelSlidingArgument< Base >::mpCodeGen
protected

Definition at line 465 of file opbase.hxx.

◆ mpDVR


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