MotorControlModuleSDFM_TMS3.../Projects/EFC_Application/UMLibrary/systemic/SignalLogger.hh

43 lines
994 B
C++

/*
* SignalLogger.hh
*
* Created on: 31 ìàð. 2021 ã.
* Author: titov
*/
#ifndef UMLIBRARY_SYSTEMIC_SIGNALLOGGER_HH_
#define UMLIBRARY_SYSTEMIC_SIGNALLOGGER_HH_
#include "SignalManager.hh"
#include "../logging/ILoggable.hh"
namespace systemic {
//!Ëîãèðóåò îøèáêè äîñòóïà ê ðåñóðñàì - ñèãíàëàì.
class SignalLogger : public SignalManager, public logging::ILoggable {
virtual Record & search( Id id ) const;
//!Îøèáêà äîñòóïà.
struct ErrorMessage {
Id signal; //!<Èäåíòèôèêàòîð çàïðîñà.
};
//!Îøèáêà ðàçìåùåíèÿ.
struct CriticalMessage {
Id signal; //!<Èäåíòèôèêàòîð çàïðîñà.
};
public:
SignalLogger( Record * recods, std::size_t size, std::pmr::memory_resource*, NotificationInterface & herald = getDefault() );
virtual bool add( Id id, InterfaceType * interface, InterfaceOverrideType * override = nullptr, volatile const Type * value = nullptr ) override;
};
}
#endif /* UMLIBRARY_SYSTEMIC_SIGNALLOGGER_HH_ */