Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'depencencies' of https://framagit.org/simgrid/simgrid into depencencies
[simgrid.git] / src / smpi / include / smpi_host.hpp
1 /* Copyright (c) 2017-2020. The SimGrid Team. All rights reserved.          */
2
3 /* This program is free software; you can redistribute it and/or modify it
4  * under the terms of the license (GNU LGPL) which comes with this package. */
5
6 #ifndef SMPI_HOST_HPP_
7 #define SMPI_HOST_HPP_
8
9 #include "smpi_utils.hpp"
10
11 #include "simgrid/s4u/Host.hpp"
12 #include <string>
13 #include <vector>
14 #include <xbt/Extendable.hpp>
15
16 namespace simgrid {
17 namespace smpi {
18
19 class Host {
20   std::vector<s_smpi_factor_t> orecv_parsed_values;
21   std::vector<s_smpi_factor_t> osend_parsed_values;
22   std::vector<s_smpi_factor_t> oisend_parsed_values;
23   s4u::Host* host = nullptr;
24
25 public:
26   static xbt::Extension<s4u::Host, smpi::Host> EXTENSION_ID;
27
28   explicit Host(s4u::Host* ptr);
29   ~Host() = default;
30
31   double orecv(size_t size);
32   double osend(size_t size);
33   double oisend(size_t size);
34 };
35
36 }
37 }
38 #endif