LibreOffice Module sc (master) 1
|
#include <opbase.hxx>
Public Types | |
typedef DynamicKernelSlidingArgument< VectorRef > | NumericRange |
typedef DynamicKernelSlidingArgument< VectorRefStringsToZero > | NumericRangeStringsToZero |
typedef DynamicKernelSlidingArgument< DynamicKernelStringArgument > | StringRange |
typedef ParallelReductionVectorRef< VectorRef > | ParallelNumericRange |
Public Types inherited from sc::opencl::SlidingFunctionBase | |
typedef std::vector< DynamicKernelArgumentRef > | SubArguments |
Public Member Functions | |
Reduction (int nResultSize) | |
virtual bool | HandleNaNArgument (outputstream &, unsigned, SubArguments &) const |
virtual void | GenSlidingWindowFunction (outputstream &ss, const std::string &sSymName, SubArguments &vSubArguments) override |
virtual bool | isAverage () const |
virtual bool | isMinOrMax () const |
virtual bool | takeString () const override |
virtual bool | takeNumeric () const override |
virtual void | GenSlidingWindowFunction (outputstream &, const std::string &, SubArguments &)=0 |
Public Member Functions inherited from sc::opencl::OpBase | |
virtual std::string | GetBottom () |
virtual std::string | Gen2 (const std::string &, const std::string &) const |
virtual std::string | BinFuncName () const |
virtual void | BinInlineFun (std::set< std::string > &, std::set< std::string > &) |
virtual bool | takeString () const =0 |
virtual bool | takeNumeric () const =0 |
virtual bool | canHandleMultiVector () const |
virtual bool | ZeroReturnZero () |
virtual bool | forceStringsToZero () const |
virtual | ~OpBase () |
Private Attributes | |
int const | mnResultSize |
Additional Inherited Members | |
Static Public Member Functions inherited from sc::opencl::OpBase | |
static std::string | Gen (std::vector< std::string > &) |
Protected Types inherited from sc::opencl::SlidingFunctionBase | |
enum | EmptyArgType { EmptyIsZero , EmptyIsNan , SkipEmpty } |
enum | GenerateArgTypeType { DoNotGenerateArgType , GenerateArgType } |
Protected Member Functions inherited from sc::opencl::SlidingFunctionBase | |
void | GenerateFunctionDeclaration (const std::string &sSymName, SubArguments &vSubArguments, outputstream &ss) |
void | GenerateArg (const char *name, int arg, SubArguments &vSubArguments, outputstream &ss, EmptyArgType empty=EmptyIsZero, GenerateArgTypeType generateType=DoNotGenerateArgType) |
void | GenerateArg (int arg, SubArguments &vSubArguments, outputstream &ss, EmptyArgType empty=EmptyIsZero, GenerateArgTypeType generateType=DoNotGenerateArgType) |
void | GenerateArgWithDefault (const char *name, int arg, double def, SubArguments &vSubArguments, outputstream &ss, EmptyArgType empty=EmptyIsZero) |
void | GenerateRangeArg (int arg1, int arg2, SubArguments &vSubArguments, outputstream &ss, EmptyArgType empty, const char *code, const char *firstElementDiff=nullptr) |
Static Protected Member Functions inherited from sc::opencl::SlidingFunctionBase | |
static void | GenerateRangeArgs (int firstArg, int lastArg, SubArguments &vSubArguments, outputstream &ss, EmptyArgType empty, const char *code) |
static void | GenerateRangeArgs (SubArguments &vSubArguments, outputstream &ss, EmptyArgType empty, const char *code) |
static void | GenerateRangeArg (int arg, SubArguments &vSubArguments, outputstream &ss, EmptyArgType empty, const char *code) |
static void | GenerateRangeArgPair (int arg1, int arg2, SubArguments &vSubArguments, outputstream &ss, EmptyArgType empty, const char *code, const char *firstElementDiff=nullptr) |
static void | GenerateRangeArgElement (const char *name, int arg, const char *element, SubArguments &vSubArguments, outputstream &ss, EmptyArgType empty) |
static void | GenerateDoubleVectorLoopHeader (outputstream &ss, const formula::DoubleVectorRefToken *pDVR, const char *firstElementDiff) |
Definition at line 499 of file opbase.hxx.
Definition at line 505 of file opbase.hxx.
typedef DynamicKernelSlidingArgument<VectorRefStringsToZero> sc::opencl::Reduction::NumericRangeStringsToZero |
Definition at line 506 of file opbase.hxx.
Definition at line 508 of file opbase.hxx.
typedef DynamicKernelSlidingArgument<DynamicKernelStringArgument> sc::opencl::Reduction::StringRange |
Definition at line 507 of file opbase.hxx.
|
inlineexplicit |
Definition at line 503 of file opbase.hxx.
|
overridevirtual |
Implements sc::opencl::SlidingFunctionBase.
Definition at line 784 of file opbase.cxx.
References sc::opencl::OpBase::Gen2(), sc::opencl::SlidingFunctionBase::GenerateFunctionDeclaration(), get(), sc::opencl::OpBase::GetBottom(), formula::FormulaToken::GetType(), HandleNaNArgument(), i, isAverage(), isMinOrMax(), mnResultSize, ocPush, formula::svDoubleVectorRef, and sc::opencl::OpBase::ZeroReturnZero().
|
inlinevirtual |
Reimplemented in sc::opencl::OpDiv.
Definition at line 510 of file opbase.hxx.
Referenced by GenSlidingWindowFunction().
|
inlinevirtual |
Reimplemented in sc::opencl::OpAverage.
Definition at line 517 of file opbase.hxx.
Referenced by GenSlidingWindowFunction().
|
inlinevirtual |
Reimplemented in sc::opencl::OpMin, and sc::opencl::OpMax.
Definition at line 518 of file opbase.hxx.
Referenced by GenSlidingWindowFunction().
|
inlineoverridevirtual |
Implements sc::opencl::OpBase.
Definition at line 520 of file opbase.hxx.
|
inlineoverridevirtual |
Implements sc::opencl::OpBase.
Definition at line 519 of file opbase.hxx.
|
private |
Definition at line 501 of file opbase.hxx.
Referenced by GenSlidingWindowFunction().