/* * TwoSignalActionLogger.hh * * Created on: 24 янв. 2022 г. * Author: sozonov */ #ifndef UMLIBRARY_APPLICATION_LOG_TWOSIGNALACTIONLOGGER_HH_ #define UMLIBRARY_APPLICATION_LOG_TWOSIGNALACTIONLOGGER_HH_ #include "../ISetupStep.hh" #include "../../systemic/IFunctor.hh" namespace application { namespace log { //! Утилита логгирования информации о паре сигналов. struct TwoSignalActionLogger : public ISetupStep { typedef systemic::IFunctor Action; systemic::ISignal * signal_f; systemic::ISignal * signal_s; bool input( Environment & env ); void build( Environment & env ); struct Links { Environment::SignalId first_signal; //!< Сигнал для записи в лог. Environment::SignalId second_signal; //!< Сигнал для записи в лог. Environment::Id signals_log; //!< Журнал менеджера сигналов. Environment::Id logging; //!< Действие записи в лог. }; const Links & links; TwoSignalActionLogger( const Links & links ); }; }} #endif /* UMLIBRARY_APPLICATION_LOG_TWOSIGNALACTIONLOGGER_HH_ */