24#include <document.hxx>
37 , pInterpreter(nullptr)
38 , mpFormatter(pFormatter)
108 size_t nOldSize =
maPool.size();
109 maPool.resize(nNumThreads);
110 for (
size_t nIdx = 0; nIdx < nNumThreads; ++nIdx)
112 if (nIdx >= nOldSize)
115 maPool[nIdx]->SetDocAndFormatter(rDoc, pFormatter);
123 assert(nThreadIdx <
maPool.size());
124 return maPool[nThreadIdx].get();
140 maPool[nCurrIdx]->SetDocAndFormatter(rDoc, pFormatter);
156 for (
size_t nIdx = 0; nIdx <
maPool.size(); ++nIdx)
171 rPtr->ClearLookupCache(pDoc);
173 rPtr->ClearLookupCache(pDoc);
182 rPool.
Init(nNumThreads, rDoc, pFormatter);
202 , nContextIdx(rPool.mnNextFree)
bool IsThreadedGroupCalcInProgress() const
SC_DLLPUBLIC SvNumberFormatter * GetFormatTable() const
ScInterpreterContextPool & rPool
ScInterpreterContext * GetInterpreterContext() const
ScInterpreterContextGetterGuard(const ScDocument &rDoc, SvNumberFormatter *pFormatter)
~ScInterpreterContextGetterGuard()
void Init(size_t nNumThreads, const ScDocument &rDoc, SvNumberFormatter *pFormatter)
static ScInterpreterContextPool aNonThreadedInterpreterPool
static ScInterpreterContextPool aThreadedInterpreterPool
std::vector< std::unique_ptr< ScInterpreterContext > > maPool
ScInterpreterContext * GetInterpreterContext() const
static void ClearLookupCaches(const ScDocument *pDoc)
ScInterpreterContext * GetInterpreterContextForThreadIdx(size_t nThreadIdx) const
ScInterpreterContext * GetInterpreterContextForThreadIdx(size_t nThreadIdx) const
ScInterpreterContextPool & rPool
~ScThreadedInterpreterContextGetterGuard()
ScThreadedInterpreterContextGetterGuard(size_t nNumThreads, const ScDocument &rDoc, SvNumberFormatter *pFormatter)
if(aStr !=aBuf) UpdateName_Impl(m_xFollowLb.get()
ScInterpreterContext()=delete
void SetDocAndFormatter(const ScDocument &rDoc, SvNumberFormatter *pFormatter)
std::unique_ptr< ScLookupCacheMap > mxScLookupCache
void ClearLookupCache(const ScDocument *pDoc)
std::vector< formula::FormulaToken * > maTokens
SvNumFormatType GetNumberFormatType(sal_uInt32 nFIndex) const
std::vector< sal_uInt8 > maConditions
std::vector< DelayedSetNumberFormat > maDelayedSetNumberFormat
NFIndexAndFmtType maNFTypeCache
SvNumberFormatter * mpFormatter