12#include <config_feature_opencl.h>
19#if HAVE_FEATURE_OPENCL
24#include <unordered_map>
84 typedef std::unordered_map<ColKey, ColArray, ColKey::Hash>
ColArraysType;
136#if HAVE_FEATURE_OPENCL
137 static void fillOpenCLInfo(std::vector<OpenCLPlatformInfo>& rPlatforms);
138 static bool switchOpenCLDevice(std::u16string_view rDeviceId,
bool bAutoSelect,
bool bForceEvaluation =
false);
140 static void enableOpenCL_UnitTestsOnly();
141 static void disableOpenCL_UnitTestsOnly();
Matrix data type that can store values of mixed types.
Custom allocator for STL container to ensure that the base address of allocated storage is aligned to...
bool switchOpenCLDevice(std::u16string_view aDevice, bool bAutoSelect, bool bForceEvaluation, OUString &rOutSelectedDeviceVersionIDString)
const std::vector< OpenCLPlatformInfo > & fillOpenCLInfo()
void getOpenCLDeviceInfo(size_t &rDeviceId, size_t &rPlatformId)
CAUTION! The following defines must be in the same namespace as the respective type.
Configuration options for formula interpreter.
StrArrayType * mpStrArray
NumArrayType * mpNumArray
ColArray(NumArrayType *pNumArray, StrArrayType *pStrArray)
size_t operator()(const ColKey &rKey) const
ColKey(SCTAB nTab, SCCOL nCol)
bool operator==(const ColKey &r) const
const FormulaGroupContext & operator=(const FormulaGroupContext &)=delete
std::vector< rtl_uString * > StrArrayType
std::vector< double, DoubleAllocType > NumArrayType
std::unordered_map< ColKey, ColArray, ColKey::Hash > ColArraysType
StrArrayStoreType m_StrArrays
manage life cycle of numeric arrays.
void ensureNumArray(ColArray &rColArray, size_t nArrayLen)
AlignedAllocator< double, 256 > DoubleAllocType
void discardCachedColArray(SCTAB nTab, SCCOL nCol)
ColArray * setCachedColArray(SCTAB nTab, SCCOL nCol, NumArrayType *pNumArray, StrArrayType *pStrArray)
ColArray * getCachedColArray(SCTAB nTab, SCCOL nCol, size_t nSize)
keep track of longest array for each column.
std::vector< std::unique_ptr< NumArrayType > > NumArrayStoreType
NumArrayStoreType m_NumArrays
FormulaGroupContext(const FormulaGroupContext &)=delete
std::vector< std::unique_ptr< StrArrayType > > StrArrayStoreType
ColArraysType maColArrays
manage life cycle of string arrays.
void ensureStrArray(ColArray &rColArray, size_t nArrayLen)
FormulaGroupEntry(ScFormulaCell **pCells, size_t nRow, size_t nLength)
::boost::intrusive_ptr< ScFormulaCellGroup > ScFormulaCellGroupRef
::boost::intrusive_ptr< ScMatrix > ScMatrixRef