X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ad2642665c0d0a2f8ea35066864e565b8541fff2..ace6ec5d4b81b85275732c9ba244d358ddc30107:/src/instr/instr_paje_events.hpp diff --git a/src/instr/instr_paje_events.hpp b/src/instr/instr_paje_events.hpp index 17aab29eaa..ed12cd6236 100644 --- a/src/instr/instr_paje_events.hpp +++ b/src/instr/instr_paje_events.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2010-2021. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2010-2023. 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. */ @@ -12,8 +12,7 @@ #include #include -namespace simgrid { -namespace instr { +namespace simgrid::instr { class EntityValue; class TIData; @@ -46,10 +45,13 @@ inline std::ostream& operator<<(std::ostream& os, PajeEventType event) class PajeEvent { Container* container_; Type* type_; -public: static xbt::signal on_creation; static xbt::signal on_destruction; +public: + static void on_creation_cb(const std::function& cb) { on_creation.connect(cb); } + static void on_destruction_cb(const std::function& cb) { on_destruction.connect(cb); } + double timestamp_; PajeEventType eventType_; std::stringstream stream_; @@ -83,8 +85,10 @@ class StateEvent : public PajeEvent { #endif std::unique_ptr extra_; -public: static xbt::signal on_destruction; + +public: + static void on_destruction_cb(const std::function& cb) { on_destruction.connect(cb); } StateEvent(Container* container, Type* type, PajeEventType event_type, EntityValue* value, TIData* extra); ~StateEvent() override { on_destruction(*this); } bool has_extra() const { return extra_ != nullptr; } @@ -120,6 +124,5 @@ public: } void print() override; }; -} // namespace instr -} // namespace simgrid +} // namespace simgrid::instr #endif