salsa  0.3.0
TaskExecutor.hh
1 #pragma once
2 
3 #include <TaskState.hh>
4 
5 namespace Salsa {
14 class TaskExecutor : public Object {
15 public:
16  TaskExecutor();
17  virtual ~TaskExecutor();
18 
20  // TODO
21  virtual bool run(std::string, std::string) = 0;
23  virtual bool handlePipe(std::vector<std::string> &) = 0;
24  virtual void * pipe() const;
25 
26  // TODO annotate task states
27  void taskState(TaskState * pTS);
28  TaskState * taskState() const;
29 
30 protected:
31  TaskState * mpTaskState = nullptr;
32 };
33 } // namespace Salsa
virtual bool run(std::string, std::string)=0
Run task.
Base salsa TaskState class
Definition: TaskState.hh:16
virtual bool handlePipe(std::vector< std::string > &)=0
Handle pipe.
TaskState * mpTaskState
Task state.
Definition: TaskExecutor.hh:31
Definition: Actor.cc:2
virtual ~TaskExecutor()
Definition: TaskExecutor.cc:9
TaskState * taskState() const
Definition: TaskExecutor.cc:30
Base TaskExecutor class
Definition: TaskExecutor.hh:14
virtual void * pipe() const
Definition: TaskExecutor.cc:15
Base Salsa Object class
Definition: Object.hh:15