seapodym-parallel
Fish dynamics models with parameter estimations
Loading...
Searching...
No Matches
TaskStepManager.h
1#include <mpi.h>
2#include <map>
3#include <set>
4#include <array>
5
6#ifndef TASK_DEPENDENCY_MANAGER
7#define TASK_DEPENDENCY_MANAGER
8
22
23// TaskId
24using dep_type = std::array<int, 2>;
25
26
28
29 private:
30
31 // Communicator
32 MPI_Comm comm;
33
34 // number of tasks
35 int numTasks;
36
37 // number of steps
38 std::map<int, int> numStepsMap;
39
40 // dependencies
41 std::map<int, std::set<dep_type> > deps;
42
43 public:
44
52 TaskStepManager(MPI_Comm comm, int numTasks,
53 const std::map<int, int>& numStepsMap,
54 const std::map<int, std::set<dep_type> >& dependencyMap);
55
60 std::set< std::array<int, 3> > run() const;
61
62};
63
64#endif // TASK_DEPENDENCY_MANAGER
TaskStepManager(MPI_Comm comm, int numTasks, const std::map< int, int > &numStepsMap, const std::map< int, std::set< dep_type > > &dependencyMap)
Definition TaskStepManager.cpp:10
std::set< std::array< int, 3 > > run() const
Definition TaskStepManager.cpp:21