-/* Copyright (c) 2004-2020. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2004-2022. The SimGrid Team. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
double StochasticDatedValue::draw(Distribution law, std::vector<double> params)
{
switch (law) {
- case Dist_Det:
+ case Distribution::DET:
return params[0];
- case Dist_Exp:
+ case Distribution::EXP:
return simgrid::xbt::random::exponential(params[0]);
- case Dist_Unif:
+ case Distribution::UNIF:
return simgrid::xbt::random::uniform_real(params[0], params[1]);
- case Dist_Norm:
+ case Distribution::NORM:
return simgrid::xbt::random::normal(params[0], params[1]);
default:
- xbt_assert(false, "Unimplemented distribution");
- return 0;
+ xbt_die("Unimplemented distribution");
}
}
-double StochasticDatedValue::get_value()
+
+double StochasticDatedValue::get_value() const
{
return draw(value_law, value_params);
}
-double StochasticDatedValue::get_date()
+
+double StochasticDatedValue::get_date() const
{
return draw(date_law, date_params);
}
-DatedValue StochasticDatedValue::get_datedvalue()
+
+DatedValue StochasticDatedValue::get_datedvalue() const
{
DatedValue event;
event.date_ = get_date();