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;
18 CpuModel *getCpuModel();
19 void setCpuModel(CpuModel *cpuModel);
21 void setCpu(char *name, Cpu *cpu);
24 NetworkLinkDynar getRoute(char *srcName, char *dstName);
29 std::cout << "Plugin::~Plugin()" << std:: endl;
32 void activateCpuCreatedCallback();
33 virtual void cpuCreatedCallback(Cpu *cpu) {}
35 void activateCpuDestructedCallback();
36 virtual void cpuDestructedCallback(Cpu *cpu) {}
38 void activateCpuStateChangedCallback();
39 virtual void cpuStateChangedCallback(Cpu *cpu, e_surf_resource_state_t, e_surf_resource_state_t) {}
41 void activateCpuActionStateChangedCallback();
42 virtual void cpuActionStateChangedCallback(CpuAction *action, e_surf_action_state_t, e_surf_action_state_t) {}
45 void activateNetworkLinkCreatedCallback();
46 virtual void networkLinkCreatedCallback(NetworkLink *link) {}
48 void activateNetworkLinkDestructedCallback();
49 virtual void networkLinkDestructedCallback(NetworkLink *link) {}
51 void activateNetworkLinkStateChangedCallback();
52 virtual void networkLinkStateChangedCallback(NetworkLink *link, e_surf_resource_state_t, e_surf_resource_state_t) {}
54 void activateNetworkActionStateChangedCallback();
55 virtual void networkActionStateChangedCallback(NetworkAction *action, e_surf_action_state_t old, e_surf_action_state_t cur) {}
57 void activateNetworkCommunicateCallback();
58 virtual void networkCommunicateCallback(NetworkAction *action, RoutingEdge *src, RoutingEdge *dst, double size, double rate) {}