/* @file RealizationCallback.hpp */ #pragma once #include "xo/reactor/Sink.hpp" #include "xo/indentlog/print/pair.hpp" //#include "time/Time.hpp" #include namespace xo { namespace process { /* callback for consuming stochastic process realizations */ template class RealizationCallback : public reactor::Sink1> { public: using utc_nanos = xo::time::utc_nanos; public: /* notification with process event (std::pair) * see StochasticProcess::event_type */ virtual void notify_ev(std::pair const & ev) override; /* CallbackSet invokes these on add/remove events */ virtual void notify_add_callback() override {} virtual void notify_remove_callback() override {} }; /*RealizationCallback*/ } /*namespace process*/ } /*namespace xo*/ /* end RealizationCallback.hpp */