/** @brief Callback signal fired when the state of a NetworkAction changes
* Signature: `void(NetworkAction *action, e_surf_action_state_t old, e_surf_action_state_t current)` */
-XBT_PUBLIC_DATA(simgrid::surf::signal<void(simgrid::surf::NetworkAction*, e_surf_action_state_t, e_surf_action_state_t)>) networkActionStateChangedCallbacks;
+XBT_PUBLIC_DATA(simgrid::xbt::signal<void(simgrid::surf::NetworkAction*, e_surf_action_state_t, e_surf_action_state_t)>) networkActionStateChangedCallbacks;
/** @brief Callback signal fired when a NetworkAction is created (when a communication starts)
* Signature: `void(NetworkAction *action, RoutingEdge *src, RoutingEdge *dst, double size, double rate)` */
-XBT_PUBLIC_DATA(simgrid::surf::signal<void(simgrid::surf::NetworkAction*, simgrid::surf::NetCard *src, simgrid::surf::NetCard *dst, double size, double rate)>) networkCommunicateCallbacks;
+XBT_PUBLIC_DATA(simgrid::xbt::signal<void(simgrid::surf::NetworkAction*, simgrid::surf::NetCard *src, simgrid::surf::NetCard *dst, double size, double rate)>) networkCommunicateCallbacks;
}
}
*********/
XBT_PUBLIC(void) netlink_parse_init(sg_platf_link_cbarg_t link);
-XBT_PUBLIC(void) net_add_traces();
-
/*********
* Model *
*********/
* @param bw_trace The trace associated to the Link bandwidth
* @param lat_initial The initial latency of the Link in seconds
* @param lat_trace The trace associated to the Link latency
- * @param state_initial The initial Link (state)[e_surf_resource_state_t]
+ * @param initiallyOn The initial Link (state)[e_surf_resource_state_t]
* @param state_trace The trace associated to the Link (state)[e_surf_resource_state_t]
* @param policy The sharing policy of the Link
* @param properties Dictionary of properties associated to this Resource
* @param name The name of the Link
* @param props Dictionary of properties associated to this Link
* @param constraint The lmm constraint associated to this Cpu if it is part of a LMM component
- * @param history [TODO]
+ * @param fes Future Event Set in which our events must be registered
* @param state_trace [TODO]
*/
Link(simgrid::surf::NetworkModel *model, const char *name, xbt_dict_t props,
lmm_constraint_t constraint,
- tmgr_history_t history,
+ sg_future_evt_set_t fes,
tmgr_trace_t state_trace);
/* Link destruction logic */
public:
/** @brief Callback signal fired when a new Link is created.
* Signature: void(Link*) */
- static simgrid::surf::signal<void(simgrid::surf::Link*)> onCreation;
+ static simgrid::xbt::signal<void(simgrid::surf::Link*)> onCreation;
/** @brief Callback signal fired when a Link is destroyed.
* Signature: void(Link*) */
- static simgrid::surf::signal<void(simgrid::surf::Link*)> onDestruction;
+ static simgrid::xbt::signal<void(simgrid::surf::Link*)> onDestruction;
/** @brief Callback signal fired when the state of a Link changes
* Signature: `void(LinkAction *action, int previouslyOn, int currentlyOn)` */
- static simgrid::surf::signal<void(simgrid::surf::Link*, int, int)> onStateChange;
+ static simgrid::xbt::signal<void(simgrid::surf::Link*, int, int)> onStateChange;
/** @brief Get the bandwidth in bytes per second of current Link */
/** @brief Update the latency in seconds of current Link */
virtual void updateLatency(double value, double date=surf_get_clock())=0;
- /** @brief The sharing policy is a @{link #e_surf_link_sharing_policy_t} (0: FATPIPE, 1: SHARED, 2: FULLDUPLEX) */
+ /** @brief The sharing policy is a @{link e_surf_link_sharing_policy_t::EType} (0: FATPIPE, 1: SHARED, 2: FULLDUPLEX) */
virtual int sharingPolicy();
/** @brief Check if the Link is used */
- bool isUsed();
+ bool isUsed() override;
void turnOn() override;
void turnOff() override;
/* Using this object with the public part of
model does not make sense */
double m_latCurrent = 0;
- tmgr_trace_event_t p_latEvent = NULL;
+ tmgr_trace_iterator_t p_latEvent = NULL;
/* LMM */
- tmgr_trace_event_t p_stateEvent = NULL;
+ tmgr_trace_iterator_t p_stateEvent = NULL;
s_surf_metric_t p_speed;
/* User data */
static boost::unordered_map<std::string, Link *> *links;
public:
static Link *byName(const char* name);
- static int linksAmount();
+ static int linksCount();
static Link **linksList();
static void linksExit();
};