Event* schedule(FutureEvtSet* fes, resource::Resource* resource);
DatedValue next(Event* event);
+ const std::vector<DatedValue>& get_event_list() const { return event_list; }
+ const std::vector<StochasticDatedValue>& get_stochastic_event_list() const { return stochastic_event_list; }
+
static Profile* from_file(const std::string& path);
static Profile* from_string(const std::string& name, const std::string& input, double periodicity);
- // private:
+
+private:
std::vector<DatedValue> event_list;
std::vector<StochasticDatedValue> stochastic_event_list;
-private:
FutureEvtSet* fes_ = nullptr;
bool stochastic = false;
bool stochasticloop = false;
simgrid::kernel::profile::Profile* trace = simgrid::kernel::profile::Profile::from_string("TheName", str, 0);
XBT_VERB("---------------------------------------------------------");
XBT_VERB("data>>\n%s<<data\n", str);
- for (auto const& evt : trace->event_list)
+ for (auto const& evt : trace->get_event_list())
XBT_VERB("event: d:%lg v:%lg", evt.date_, evt.value_);
MockedResource daResource;
static std::vector<simgrid::kernel::profile::StochasticDatedValue> trace2selist(const char* str)
{
const simgrid::kernel::profile::Profile* trace = simgrid::kernel::profile::Profile::from_string("TheName", str, 0);
- std::vector<simgrid::kernel::profile::StochasticDatedValue> stocevlist = trace->stochastic_event_list;
+ std::vector<simgrid::kernel::profile::StochasticDatedValue> stocevlist = trace->get_stochastic_event_list();
tmgr_finalize();
return stocevlist;
}
{
double integral = 0;
double time = 0;
- unsigned nb_points = profile->event_list.size() + 1;
+ unsigned nb_points = profile->get_event_list().size() + 1;
time_points_.reserve(nb_points);
integral_.reserve(nb_points);
- for (auto const& val : profile->event_list) {
+ for (auto const& val : profile->get_event_list()) {
time_points_.push_back(time);
integral_.push_back(integral);
time += val.date_;
{
double reduced_a = a - floor(a / last_time_) * last_time_;
int point = CpuTiProfile::binary_search(profile_->time_points_, reduced_a);
- kernel::profile::DatedValue val = speed_profile_->event_list.at(point);
+ kernel::profile::DatedValue val = speed_profile_->get_event_list().at(point);
return val.value_;
}
}
/* only one point available, fixed trace */
- if (speed_profile->event_list.size() == 1) {
- value_ = speed_profile->event_list.front().value_;
+ if (speed_profile->get_event_list().size() == 1) {
+ value_ = speed_profile->get_event_list().front().value_;
return;
}
type_ = Type::DYNAMIC;
/* count the total time of trace file */
- for (auto const& val : speed_profile->event_list)
+ for (auto const& val : speed_profile->get_event_list())
total_time += val.date_;
profile_ = std::make_unique<CpuTiProfile>(speed_profile);
speed_integrated_trace_ = new CpuTiTmgr(profile, speed_.scale);
/* add a fake trace event if periodicity == 0 */
- if (profile && profile->event_list.size() > 1) {
- kernel::profile::DatedValue val = profile->event_list.back();
+ if (profile && profile->get_event_list().size() > 1) {
+ kernel::profile::DatedValue val = profile->get_event_list().back();
if (val.date_ < 1e-12) {
auto* prof = new kernel::profile::Profile();
speed_.event = prof->schedule(&profile::future_evt_set, this);