38class ReservoirCouplingSpawnSlaves {
40 using MessageTag = ReservoirCoupling::MessageTag;
42 ReservoirCouplingSpawnSlaves(
44 const ReservoirCoupling::CouplingInfo &rescoup
50 void createMasterGroupNameOrder_();
51 void createMasterGroupToSlaveNameMap_();
52 std::pair<std::vector<char>, std::size_t>
53 getMasterGroupNamesForSlave_(
const std::string &slave_name)
const;
54 std::vector<char *> getSlaveArgv_(
55 const std::filesystem::path &data_file,
56 const std::string &slave_name,
57 std::string &log_filename)
const;
58 void prepareTimeStepping_();
59 void receiveActivationDateFromSlaves_();
60 void receiveSimulationStartDateFromSlaves_();
61 void sendMasterGroupNamesToSlaves_();
62 void sendSlaveNamesToSlaves_();
63 void spawnSlaveProcesses_();
66 const ReservoirCoupling::CouplingInfo &rescoup_;
67 const Parallel::Communication &comm_;