diff options
author | Henning Baldersheim <balder@oath.com> | 2018-06-11 19:51:24 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@oath.com> | 2018-06-11 19:51:24 +0200 |
commit | 19a23105f3345e33fbb5fe1e105b68b7e195c4b2 (patch) | |
tree | 04947f6ca37fad8a31a1e9b763f62507e50017b8 /searchcore | |
parent | 3a9c74c225d4cee0a78ae86b264a241995419c14 (diff) |
Avoid cast
Diffstat (limited to 'searchcore')
-rw-r--r-- | searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.cpp | 31 | ||||
-rw-r--r-- | searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.h | 22 |
2 files changed, 28 insertions, 25 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.cpp b/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.cpp index 1cb30518f8e..3d9525f0471 100644 --- a/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.cpp @@ -9,10 +9,6 @@ using search::SequencedTaskExecutor; namespace proton { - SequencedTaskExecutor & cast(search::ISequencedTaskExecutor & executor) { - return static_cast<SequencedTaskExecutor &>(executor); - } - ExecutorThreadingService::ExecutorThreadingService(uint32_t threads, uint32_t stackSize, uint32_t taskLimit) : _masterExecutor(1, stackSize), @@ -66,9 +62,9 @@ ExecutorThreadingService::setTaskLimit(uint32_t taskLimit, uint32_t summaryTaskL { _indexExecutor.setTaskLimit(taskLimit); _summaryExecutor.setTaskLimit(summaryTaskLimit); - cast(*_indexFieldInverter).setTaskLimit(taskLimit); - cast(*_indexFieldWriter).setTaskLimit(taskLimit); - cast(*_attributeFieldWriter).setTaskLimit(taskLimit); + _indexFieldInverter->setTaskLimit(taskLimit); + _indexFieldWriter->setTaskLimit(taskLimit); + _attributeFieldWriter->setTaskLimit(taskLimit); } ExecutorThreadingServiceStats @@ -77,9 +73,24 @@ ExecutorThreadingService::getStats() return ExecutorThreadingServiceStats(_masterExecutor.getStats(), _indexExecutor.getStats(), _summaryExecutor.getStats(), - cast(*_indexFieldInverter).getStats(), - cast(*_indexFieldWriter).getStats(), - cast(*_attributeFieldWriter).getStats()); + _indexFieldInverter->getStats(), + _indexFieldWriter->getStats(), + _attributeFieldWriter->getStats()); +} + +search::ISequencedTaskExecutor & +ExecutorThreadingService::indexFieldInverter() { + return *_indexFieldInverter; +} + +search::ISequencedTaskExecutor & +ExecutorThreadingService::indexFieldWriter() { + return *_indexFieldWriter; +} + +search::ISequencedTaskExecutor & +ExecutorThreadingService::attributeFieldWriter() { + return *_attributeFieldWriter; } } // namespace proton diff --git a/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.h b/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.h index 68449a70470..240eefab2a7 100644 --- a/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.h +++ b/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.h @@ -6,6 +6,7 @@ #include <vespa/vespalib/util/blockingthreadstackexecutor.h> #include <vespa/vespalib/util/threadstackexecutor.h> +namespace search { class SequencedTaskExecutor; } namespace proton { class ExecutorThreadingServiceStats; @@ -23,9 +24,9 @@ private: ExecutorThreadService _masterService; ExecutorThreadService _indexService; ExecutorThreadService _summaryService; - std::unique_ptr<search::ISequencedTaskExecutor> _indexFieldInverter; - std::unique_ptr<search::ISequencedTaskExecutor> _indexFieldWriter; - std::unique_ptr<search::ISequencedTaskExecutor> _attributeFieldWriter; + std::unique_ptr<search::SequencedTaskExecutor> _indexFieldInverter; + std::unique_ptr<search::SequencedTaskExecutor> _indexFieldWriter; + std::unique_ptr<search::SequencedTaskExecutor> _attributeFieldWriter; public: /** @@ -73,18 +74,9 @@ public: return _summaryService; } - search::ISequencedTaskExecutor &indexFieldInverter() override { - return *_indexFieldInverter; - } - - search::ISequencedTaskExecutor &indexFieldWriter() override { - return *_indexFieldWriter; - } - - search::ISequencedTaskExecutor &attributeFieldWriter() override { - return *_attributeFieldWriter; - } - + search::ISequencedTaskExecutor &indexFieldInverter() override; + search::ISequencedTaskExecutor &indexFieldWriter() override; + search::ISequencedTaskExecutor &attributeFieldWriter() override; ExecutorThreadingServiceStats getStats(); }; |