summaryrefslogtreecommitdiff
path: root/sc/source/core/data/document.cxx
diff options
context:
space:
mode:
authorTor Lillqvist <tml@collabora.com>2017-08-16 12:21:53 +0300
committerDennis Francis <dennis.francis@collabora.co.uk>2017-11-21 16:09:40 +0530
commit99a36cb35c92e3e6b4ff2db257df221cb74c9eae (patch)
tree5d06a7a170b883702dd3f481d62fe36462dc6291 /sc/source/core/data/document.cxx
parenta60ffa6985dec32cc73032a7774f58694a6ee9a7 (diff)
First steps for Calc parallelism
For now, formula group calculations are done in parallel threads when 1) OpenCL is not used, and 2) the environment variable CPU_THREADED_CALCULATION is set. This commit is a surely broken first step and does not actually work that well at all. Change-Id: Ia7e5019703ba89bff0695faef0f7504765061149
Diffstat (limited to 'sc/source/core/data/document.cxx')
-rw-r--r--sc/source/core/data/document.cxx9
1 files changed, 9 insertions, 0 deletions
diff --git a/sc/source/core/data/document.cxx b/sc/source/core/data/document.cxx
index 2f9791dc696e..a2f98bb17c7e 100644
--- a/sc/source/core/data/document.cxx
+++ b/sc/source/core/data/document.cxx
@@ -1808,6 +1808,15 @@ void ScDocument::UnlockAdjustHeight()
--nAdjustHeightLock;
}
+bool ScDocument::HandleRefArrayForParallelism( const ScAddress& rPos, SCROW nLength )
+{
+ SCTAB nTab = rPos.Tab();
+ if (!TableExists(nTab))
+ return false;
+
+ return maTabs[nTab]->HandleRefArrayForParallelism(rPos.Col(), rPos.Row(), rPos.Row()+nLength-1);
+}
+
bool ScDocument::CanFitBlock( const ScRange& rOld, const ScRange& rNew )
{
if ( rOld == rNew )