1 /* Copyright (c) 2014. The SimGrid Team.
2 * All rights reserved. */
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. */
9 #include "src/surf/cpu_interface.hpp"
10 #include "src/surf/network_interface.hpp"
11 #include "src/surf/maxmin_private.hpp"
13 typedef xbt_dynar_t NetworkLinkDynar;
14 typedef ActionList *ActionArrayPtr;
20 CpuModel *getCpuModel();
21 void setCpuModel(CpuModel *cpuModel);
23 void setCpu(char *name, Cpu *cpu);
25 NetworkLinkDynar getRoute(char *srcName, char *dstName);
30 std::cout << "Plugin::~Plugin()" << std:: endl;
33 void activateCpuCreatedCallback();
34 virtual void cpuCreatedCallback(Cpu *cpu) {}
36 void activateCpuDestructedCallback();
37 virtual void cpuDestructedCallback(Cpu *cpu) {}
39 void activateCpuStateChangedCallback();
40 virtual void cpuStateChangedCallback(Cpu *cpu, e_surf_resource_state_t, e_surf_resource_state_t) {}
42 void activateCpuActionStateChangedCallback();
43 virtual void cpuActionStateChangedCallback(CpuAction *action, e_surf_action_state_t, e_surf_action_state_t) {}
46 void activateNetworkLinkCreatedCallback();
47 virtual void networkLinkCreatedCallback(NetworkLink *link) {}
49 void activateNetworkLinkDestructedCallback();
50 virtual void networkLinkDestructedCallback(NetworkLink *link) {}
52 void activateNetworkLinkStateChangedCallback();
53 virtual void networkLinkStateChangedCallback(NetworkLink *link, e_surf_resource_state_t, e_surf_resource_state_t) {}
55 void activateNetworkActionStateChangedCallback();
56 virtual void networkActionStateChangedCallback(NetworkAction *action, e_surf_action_state_t old, e_surf_action_state_t cur) {}
58 void activateNetworkCommunicateCallback();
59 virtual void networkCommunicateCallback(NetworkAction *action, RoutingEdge *src, RoutingEdge *dst, double size, double rate) {}