Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Channel: the S4U name of msg_mailbox_t
[simgrid.git] / src / surf / gtnets / gtnets_interface.h
index 261d790..0b8ff38 100644 (file)
@@ -1,25 +1,35 @@
-// Interface for GTNetS.
-// Kayo Fujiwara 1/8/2007
+/* Copyright (c) 2007-2010, 2013-2014. The SimGrid Team.
+ * All rights reserved.                                                     */
+
+/* This program is free software; you can redistribute it and/or modify it
+ * under the terms of the license (GNU LGPL) which comes with this package. */
 
+// Interface for GTNetS.
 #ifndef _GTNETS_INTERFACE_H
 #define _GTNETS_INTERFACE_H
 
-#ifdef __cplusplus
-extern "C" {
-#endif
-  
-  int gtnets_initialize();
-  int gtnets_add_link(int id, double bandwidth, double latency);
-  int gtnets_add_route(int src, int dst, int* links, int nlink);
-  int gtnets_create_flow(int src, int dst, long datasize, void* metadata);
-  double gtnets_get_time_to_next_flow_completion();
-  int gtnets_run_until_next_flow_completion(void*** metadata, int* number_of_flows);
-  int gtnets_run(double delta);
-
-#ifdef __cplusplus
-}
-#endif
+#include "xbt/misc.h"           /* SG_{BEGIN,END}_DECL() */
 
-#endif
+SG_BEGIN_DECL()
+
+int gtnets_initialize(int wsize);
+int gtnets_add_link(int id, double bandwidth, double latency);
+int gtnets_add_route(int src, int dst, int *links, int nlink);
+int gtnets_add_router(int id);
+int gtnets_add_onehop_route(int src, int dst, int link);
+int gtnets_create_flow(int src, int dst, long datasize, void *metadata);
+double gtnets_get_time_to_next_flow_completion();
+double gtnets_run_until_next_flow_completion(void ***metadata,
+                                             int *number_of_flows);
+double gtnets_get_flow_rx(void *metadata);
+
+void gtnets_print_topology(void);
 
+int gtnets_run(double delta);
+int gtnets_finalize();
+void gtnets_set_jitter(double);
+void gtnets_set_jitter_seed(int);
 
+SG_END_DECL()
+
+#endif