X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/400da29670150f252dc2b3878c230f2e1b4a0cef..5c979a2a19b47295bc467cfda3c6541f60b6fe13:/src/surf/network_interface.cpp?ds=sidebyside diff --git a/src/surf/network_interface.cpp b/src/surf/network_interface.cpp index b4708a0d5e..236a8ac44d 100644 --- a/src/surf/network_interface.cpp +++ b/src/surf/network_interface.cpp @@ -97,10 +97,10 @@ void Link::linksExit() { simgrid::surf::signal Link::onCreation; simgrid::surf::signal Link::onDestruction; -simgrid::surf::signal Link::onStateChange; +simgrid::surf::signal Link::onStateChange; // signature: wasOn, currentlyOn simgrid::surf::signal networkActionStateChangedCallbacks; -simgrid::surf::signal networkCommunicateCallbacks; +simgrid::surf::signal networkCommunicateCallbacks; } } @@ -114,7 +114,7 @@ void netlink_parse_init(sg_platf_link_cbarg_t link){ link->bandwidth_trace, link->latency, link->latency_trace, - link->state, + link->initiallyOn, link->state_trace, link->policy, link->properties); xbt_free(link_id); link_id = bprintf("%s_DOWN", link->id); @@ -123,7 +123,7 @@ void netlink_parse_init(sg_platf_link_cbarg_t link){ link->bandwidth_trace, link->latency, link->latency_trace, - link->state, + link->initiallyOn, link->state_trace, link->policy, link->properties); xbt_free(link_id); } else { @@ -132,7 +132,7 @@ void netlink_parse_init(sg_platf_link_cbarg_t link){ link->bandwidth_trace, link->latency, link->latency_trace, - link->state, + link->initiallyOn, link->state_trace, link->policy, link->properties); } } @@ -255,10 +255,17 @@ int Link::sharingPolicy() return lmm_constraint_sharing_policy(getConstraint()); } -void Link::setState(e_surf_resource_state_t state){ - e_surf_resource_state_t old = Resource::getState(); - Resource::setState(state); - onStateChange(this, old, state); +void Link::turnOn(){ + if (isOff()) { + Resource::turnOn(); + onStateChange(this, 0, 1); + } +} +void Link::turnOff(){ + if (isOn()) { + Resource::turnOff(); + onStateChange(this, 1, 0); + } } /**********