XBT_PUBLIC sg_link_t sg_link_by_name(const char* name);
XBT_PUBLIC int sg_link_is_shared(const_sg_link_t link);
XBT_PUBLIC double sg_link_bandwidth(const_sg_link_t link);
+XBT_PUBLIC void sg_link_bandwidth_set(sg_link_t link, double value);
XBT_PUBLIC double sg_link_latency(const_sg_link_t link);
+XBT_PUBLIC void sg_link_latency_set(sg_link_t link, double value);
XBT_PUBLIC void* sg_link_data(const_sg_link_t link);
XBT_PUBLIC void sg_link_data_set(sg_link_t link, void* data);
XBT_PUBLIC int sg_link_count();
/** @brief Get the bandwidth in bytes per second of current Link */
double get_bandwidth() const;
+ void set_bandwidth(double value);
/** @brief Get the latency in seconds of current Link */
double get_latency() const;
+ void set_latency(double value);
/** @brief Describes how the link is shared between flows */
SharingPolicy get_sharing_policy() const;
return this->pimpl_->get_latency();
}
+void Link::set_latency(double value)
+{
+ kernel::actor::simcall([this, value] { pimpl_->set_latency(value); });
+}
+
double Link::get_bandwidth() const
{
return this->pimpl_->get_bandwidth();
}
+void Link::set_bandwidth(double value)
+{
+ kernel::actor::simcall([this, value] { pimpl_->set_bandwidth(value); });
+}
+
Link::SharingPolicy Link::get_sharing_policy() const
{
return this->pimpl_->get_sharing_policy();
{
return link->get_bandwidth();
}
+
+void sg_link_bandwidth_set(sg_link_t link, double value)
+{
+ return link->set_bandwidth(value);
+}
+
double sg_link_latency(const_sg_link_t link)
{
return link->get_latency();
}
+void sg_link_latency_set(sg_link_t link, double value)
+{
+ return link->set_latency(value);
+}
void* sg_link_data(const_sg_link_t link)
{
return link->get_data();