fs = new std::ifstream(filename, std::ifstream::in);
xbt_assert(fs->is_open(), "Cannot read replay file '%s'", filename);
}
+ ReplayReader(const ReplayReader&) = delete;
~ReplayReader()
{
delete fs;
} else {
// Else, I have to store it for the relevant colleague
std::queue<ReplayAction*>* otherqueue = nullptr;
- try {
- otherqueue = action_queues.at(evtname);
- } catch (std::out_of_range& unfound) { // Damn. Create the queue of that guy
+ auto act = action_queues.find(evtname);
+ if (act != action_queues.end()) {
+ otherqueue = act->second;
+ } else { // Damn. Create the queue of that guy
otherqueue = new std::queue<ReplayAction*>();
action_queues.insert({evtname, otherqueue});
}
*/
void xbt_replay_action_register(const char* action_name, action_fun function)
{
- simgrid::xbt::action_funs.insert({std::string(action_name), function});
+ simgrid::xbt::action_funs[std::string(action_name)] = function;
}
/**