13 #ifndef LostTestProc_SK_H_
14 #define LostTestProc_SK_H_
18 #include <unordered_map>
20 #include "UniSetObject.h"
23 #include "DebugStream.h"
24 #include "LogServer.h"
25 #include "LogAgregator.h"
46 inline std::shared_ptr<DebugStream> log() noexcept {
return mylog; }
47 inline std::shared_ptr<uniset::LogAgregator> logAgregator() noexcept {
return loga; }
49 void init_dlog( std::shared_ptr<DebugStream> d ) noexcept;
53 #define myinfo if( log()->debugging(Debug::INFO) ) log()->info()
56 #define mywarn if( log()->debugging(Debug::WARN) ) log()->warn()
59 #define mycrit if( log()->debugging(Debug::CRIT) ) log()->crit()
62 #define mylog1 if( log()->debugging(Debug::LEVEL1) ) log()->level1()
65 #define mylog2 if( log()->debugging(Debug::LEVEL2) ) log()->level2()
68 #define mylog3 if( log()->debugging(Debug::LEVEL3) ) log()->level3()
71 #define mylog4 if( log()->debugging(Debug::LEVEL4) ) log()->level4()
74 #define mylog5 if( log()->debugging(Debug::LEVEL5) ) log()->level5()
77 #define mylog6 if( log()->debugging(Debug::LEVEL6) ) log()->level6()
80 #define mylog7 if( log()->debugging(Debug::LEVEL7) ) log()->level7()
83 #define mylog8 if( log()->debugging(Debug::LEVEL8) ) log()->level8()
86 #define mylog9 if( log()->debugging(Debug::LEVEL9) ) log()->level9()
89 #define mylogany log()->any()
92 #define vmonit( var ) vmon.add( #var, var )
128 std::string help() const noexcept;
131 #ifndef DISABLE_REST_API
133 virtual Poco::JSON::Object::Ptr httpGet(
const Poco::URI::QueryParameters& p )
override;
134 virtual Poco::JSON::Object::Ptr httpRequest(
const std::string& req,
const Poco::URI::QueryParameters& p )
override;
135 virtual Poco::JSON::Object::Ptr httpHelp(
const Poco::URI::QueryParameters& p )
override;
161 virtual void callback() noexcept override;
163 virtual
void sysCommand( const
uniset::SystemMessage* sm )
override {}
164 virtual void askSensors( UniversalIO::UIOCommand cmd ) {}
169 virtual std::string getMonitInfo()
const {
return ""; }
170 virtual std::string getTypeOfMessage(
int t )
const {
return uniset::strTypeOfMessage(t); }
172 #ifndef DISABLE_REST_API
173 virtual void httpGetUserData( Poco::JSON::Object::Ptr& jdata ){}
174 virtual Poco::JSON::Object::Ptr httpDumpIO();
175 virtual Poco::JSON::Object::Ptr httpRequestLog(
const Poco::URI::QueryParameters& p );
179 virtual void step(){}
181 void preAskSensors( UniversalIO::UIOCommand cmd );
184 virtual void testMode(
bool state );
185 void updateOutputs(
bool force );
198 const std::string argprefix;
213 std::atomic_bool activated = {
false };
214 std::atomic_bool cancelled = {
false };
222 std::shared_ptr<uniset::LogAgregator> loga;
223 std::shared_ptr<DebugStream> mylog;
224 std::shared_ptr<uniset::LogServer> logserv;
225 std::string logserv_host = {
""};
226 int logserv_port = {0};
246 void updatePreviousValues() noexcept;
247 void preSensorInfo( const
uniset::SensorMessage* sm );
248 void preTimerInfo( const
uniset::TimerMessage* tm );
258 return std::hash<long>()(
key);
262 std::unordered_map<const uniset::ObjectId,size_t, StatHashFn> smStat;
263 size_t processingMessageCatchCount = { 0 };
265 std::unordered_map<long,size_t> msgTypeStat;
267 std::string ostate = {
"" };
274 #endif // LostTestProc_SK_H_
const int checkTime
Definition: LostTestProc_SK.h:150
uniset::ObjectId smTestID
Definition: LostTestProc_SK.h:199
bool forceOut
Definition: LostTestProc_SK.h:220
const std::string getProp(const std::string &name)
Definition: LostTestProc_SK.h:210
const ObjectId DefaultObjectId
Definition: UniSetTypes.h:69
int sleep_msec
Definition: LostTestProc_SK.h:195
uniset::timeout_t smReadyTimeout
Definition: LostTestProc_SK.h:212
virtual void processingMessage(const uniset::VoidMessage *msg) override
Definition: MessageType.h:126
uniset::PassiveTimer ptStartUpTimeout
Definition: LostTestProc_SK.h:216
std::shared_ptr< Configuration > uniset_conf() noexcept
Definition: Configuration.cc:91
Definition: CommonEventLoop.h:14
Definition: MessageType.h:213
KeyType key(const uniset::ObjectId id, const uniset::ObjectId node)
Definition: UniSetTypes.cc:718
std::string dumpVars()
Definition: LostTestProc_SK.h:126
uniset::timeout_t activateTimeout
Definition: LostTestProc_SK.h:215
Definition: IOController_i.idl:57
Definition: LostTestProc_SK.h:28
std::string pretty_str(int namewidth=NameWidth, int colnum=ColCount) const
Definition: VMonitor.cc:186
virtual bool activateObject() override
Активизация объекта (переопределяется для необходимых действий после активизации)
Definition: UniSetObject.h:73
virtual bool deactivateObject() override
Деактивация объекта (переопределяется для необходимых действий при завершении работы)
xmlNode * confnode
Definition: LostTestProc_SK.h:206
Definition: UniSetTypes_i.idl:64
Пассивный таймер
Definition: PassiveTimer.h:92
long maxHeartBeat
Definition: LostTestProc_SK.h:204
std::string msgstr(uniset::ObjectId id, bool showLinkName=true) const
Definition: VMonitor.h:116
int askPause
Definition: LostTestProc_SK.h:217
uniset::ObjectId idHeartBeat
Definition: LostTestProc_SK.h:203
std::string strval(uniset::ObjectId id, bool showLinkName=true) const
int getIntProp(const std::string &name)
Definition: LostTestProc_SK.h:208
long ObjectId
Definition: UniSetTypes_i.idl:30
virtual void callback() noexcept override
std::string str(uniset::ObjectId id, bool showLinkName=true) const
Definition: MessageType.h:170