Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
actually kill models' names
[simgrid.git] / src / bindings / java / surf_swig.hpp
index 39eb67d..eaea508 100644 (file)
@@ -1,18 +1,28 @@
+/* Copyright (c) 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. */
+
 #include <cstdio>
 #include <iostream>
 #include "src/surf/cpu_interface.hpp"
 #include "src/surf/network_interface.hpp"
 #include "src/surf/maxmin_private.hpp"
 
+typedef xbt_dynar_t LinkDynar;
+typedef ActionList *ActionArrayPtr;
+
 double getClock();
 
-#ifdef __cplusplus
-extern "C" {
-#endif
 void clean();
-#ifdef __cplusplus
-}
-#endif
+
+CpuModel *getCpuModel();
+void setCpuModel(CpuModel *cpuModel);
+
+void setCpu(char *name, Cpu *cpu);
+
+LinkDynar getRoute(char *srcName, char *dstName);
 
 class Plugin {
 public:
@@ -27,24 +37,24 @@ public:
  virtual void cpuDestructedCallback(Cpu *cpu) {}
 
  void activateCpuStateChangedCallback();
- virtual void cpuStateChangedCallback(Cpu *cpu) {}
+ virtual void cpuStateChangedCallback(Cpu *cpu, e_surf_resource_state_t, e_surf_resource_state_t) {}
 
  void activateCpuActionStateChangedCallback();
- virtual void cpuActionStateChangedCallback(CpuAction *action) {}
+ virtual void cpuActionStateChangedCallback(CpuAction *action, e_surf_action_state_t, e_surf_action_state_t) {}
 
 
- void activateNetworkLinkCreatedCallback();
- virtual void networkLinkCreatedCallback(NetworkLink *link) {}
+ void activateLinkCreatedCallback();
+ virtual void networkLinkCreatedCallback(Link *link) {}
 
- void activateNetworkLinkDestructedCallback();
- virtual void networkLinkDestructedCallback(NetworkLink *link) {}
+ void activateLinkDestructedCallback();
+ virtual void networkLinkDestructedCallback(Link *link) {}
 
- void activateNetworkLinkStateChangedCallback();
- virtual void networkLinkStateChangedCallback(NetworkLink *link) {}
+ void activateLinkStateChangedCallback();
+ virtual void networkLinkStateChangedCallback(Link *link, e_surf_resource_state_t, e_surf_resource_state_t) {}
 
  void activateNetworkActionStateChangedCallback();
- virtual void networkActionStateChangedCallback(NetworkAction *action) {}
+ virtual void networkActionStateChangedCallback(NetworkAction *action, e_surf_action_state_t old, e_surf_action_state_t cur) {}
 
+ void activateNetworkCommunicateCallback();
+ virtual void networkCommunicateCallback(NetworkAction *action, RoutingEdge *src, RoutingEdge *dst, double size, double rate) {}
 };
-
-