Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
2d0e95ed6c43214966c4a3881208d076471499e2
[simgrid.git] / include / surf / surf_routing.h
1 /* Copyright (c) 2004, 2005, 2006, 2007, 2008, 2009, 2010. The SimGrid Team.
2  * All rights reserved.                                                     */
3
4 /* This program is free software; you can redistribute it and/or modify it
5  * under the terms of the license (GNU LGPL) which comes with this package. */
6
7 #ifndef _SURF_SURF_ROUTING_H
8 #define _SURF_SURF_ROUTING_H
9
10 #include "xbt/lib.h"
11 #include "simgrid/platf_interface.h"
12
13 extern xbt_lib_t host_lib;
14 extern int ROUTING_HOST_LEVEL; //Routing level
15 extern int  SURF_CPU_LEVEL;    //Surf cpu level
16 extern int SURF_WKS_LEVEL;    //Surf workstation level
17 extern int SIMIX_HOST_LEVEL;  //Simix level
18 extern int  MSG_HOST_LEVEL;    //Msg level
19 extern int  SD_HOST_LEVEL;    //Simdag level
20 extern int  COORD_HOST_LEVEL;  //Coordinates level
21 extern int NS3_HOST_LEVEL;    //host node for ns3
22
23 extern xbt_lib_t link_lib;
24 extern int SD_LINK_LEVEL;    //Simdag level
25 extern int SURF_LINK_LEVEL;  //Surf level
26 extern int NS3_LINK_LEVEL;    //link for ns3
27
28 extern xbt_lib_t as_router_lib;
29 extern int ROUTING_ASR_LEVEL;  //Routing level
30 extern int COORD_ASR_LEVEL;  //Coordinates level
31 extern int NS3_ASR_LEVEL;    //host node for ns3
32 extern int ROUTING_PROP_ASR_LEVEL; //Properties for AS and router
33
34 extern xbt_lib_t storage_lib;
35 extern int ROUTING_STORAGE_LEVEL;        //Routing storage level
36 extern int ROUTING_STORAGE_HOST_LEVEL;
37 extern int SURF_STORAGE_LEVEL;
38
39 extern xbt_lib_t storage_type_lib;
40 extern int ROUTING_STORAGE_TYPE_LEVEL;   //Routing storage_type level
41
42 /* The callbacks to register for the routing to work */
43 void routing_AS_begin(sg_platf_AS_cbarg_t AS);
44 void routing_AS_end(sg_platf_AS_cbarg_t AS);
45
46 void routing_cluster_add_backbone(void* bb);
47
48 #endif                          /* _SURF_SURF_H */