Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
yet another attempt to handle MPI special values in fortran
[simgrid.git] / include / smpi / forward.hpp
1 /* Copyright (c) 2016-2019. 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 SIMGRID_SMPI_FORWARD_HPP
7 #define SIMGRID_SMPI_FORWARD_HPP
8
9
10 #ifdef __cplusplus
11
12 #include <boost/intrusive_ptr.hpp>
13 namespace simgrid {
14 namespace smpi {
15
16 class Coll;
17 class Colls;
18 class Comm;
19 class Datatype;
20 class Group;
21 class Info;
22 class Keyval;
23 class Op;
24 class ActorExt;
25 class Request;
26 class Status;
27 class Topo;
28 class Topo_Cart;
29 class Topo_Graph;
30 class Topo_Dist_Graph;
31 class Win;
32
33 }
34 }
35
36 typedef simgrid::smpi::Comm SMPI_Comm;
37 typedef simgrid::smpi::Datatype SMPI_Datatype;
38 typedef simgrid::smpi::Group SMPI_Group;
39 typedef simgrid::smpi::Info SMPI_Info;
40 typedef simgrid::smpi::Op SMPI_Op;
41 typedef simgrid::smpi::Request SMPI_Request;
42 typedef simgrid::smpi::Topo SMPI_Topology;
43 typedef simgrid::smpi::Topo_Cart SMPI_Cart_topology;
44 typedef simgrid::smpi::Topo_Dist_Graph SMPI_Dist_Graph_topology;
45 typedef simgrid::smpi::Topo_Graph SMPI_Graph_topology;
46 typedef simgrid::smpi::Win SMPI_Win;
47
48 #else
49
50 typedef struct SMPI_Comm SMPI_Comm;
51 typedef struct SMPI_Datatype SMPI_Datatype;
52 typedef struct SMPI_Group SMPI_Group;
53 typedef struct SMPI_Info SMPI_Info;
54 typedef struct SMPI_Op SMPI_Op;
55 typedef struct SMPI_Request SMPI_Request;
56 typedef struct SMPI_Topology SMPI_Topology;
57 typedef struct SMPI_Win SMPI_Win;
58
59 #endif
60
61 #endif