logic: improved indexer parallelization

* added task that injects into PersistentStorage parallel to indexer tasks.
* added Blackboard for Task classes
This commit is contained in:
malte_langkabel
2016-09-12 11:52:14 +02:00
parent 1335f9512a
commit f06dd6abc5
42 changed files with 517 additions and 252 deletions
+7 -6
View File
@@ -6,23 +6,24 @@
#include "utility/scheduling/Task.h"
class Storage;
class StorageProvider;
class TaskInjectStorage
: public Task
{
public:
TaskInjectStorage(
std::shared_ptr<Storage> source,
std::shared_ptr<StorageProvider> storageProvider,
std::shared_ptr<Storage> target
);
private:
virtual void doEnter();
virtual TaskState doUpdate();
virtual void doExit();
virtual void doReset();
virtual void doEnter(std::shared_ptr<Blackboard> blackboard);
virtual TaskState doUpdate(std::shared_ptr<Blackboard> blackboard);
virtual void doExit(std::shared_ptr<Blackboard> blackboard);
virtual void doReset(std::shared_ptr<Blackboard> blackboard);
std::shared_ptr<Storage> m_source;
std::shared_ptr<StorageProvider> m_storageProvider;
std::shared_ptr<Storage> m_target;
};