UniSet  2.6.0
MBSlaveTest/TestProc.h
1 // -----------------------------------------------------------------------------
2 #ifndef TestProc_H_
3 #define TestProc_H_
4 // -----------------------------------------------------------------------------
5 #include <vector>
6 #include "Debug.h"
7 #include "TestProc_SK.h"
8 #include "modbus/ModbusTCPServerSlot.h"
9 // -----------------------------------------------------------------------------
10 class TestProc:
11  public TestProc_SK
12 {
13  public:
14  TestProc( uniset::ObjectId id, xmlNode* confnode = uniset::uniset_conf()->getNode("TestProc") );
15  virtual ~TestProc();
16 
17  protected:
18  TestProc();
19 
20  enum Timers
21  {
22  tmChange,
23  tmCheckWorking,
24  tmCheck,
25  tmLogControl
26  };
27 
28  virtual void step();
29  virtual void sensorInfo( const uniset::SensorMessage* sm );
30  virtual void timerInfo( const uniset::TimerMessage* tm );
31  virtual void sysCommand( const uniset::SystemMessage* sm );
32 
33  void test_depend();
34  void test_undefined_state();
35  void test_thresholds();
36  void test_loglevel();
37 
38  private:
39  bool state = { false };
40  bool undef = { false };
41 
42  std::vector<Debug::type> loglevels;
43  std::vector<Debug::type>::iterator lit;
44 
45  std::shared_ptr<uniset::ModbusTCPServerSlot> mbslave;
47  uniset::ModbusRTU::mbErrCode writeOutputSingleRegister( uniset::ModbusRTU::WriteSingleOutputMessage& query,
49 
50  std::shared_ptr< uniset::ThreadCreator<TestProc> > mbthr;
51  void mbThread();
52 };
53 // -----------------------------------------------------------------------------
54 #endif // TestProc_H_
55 // -----------------------------------------------------------------------------
Definition: ModbusTypes.h:1013
Definition: MessageType.h:166
Definition: MBSlaveTest/TestProc_SK.h:28
std::shared_ptr< Configuration > uniset_conf() noexcept
Definition: Configuration.cc:89
Definition: MessageType.h:122
Definition: MBSlaveTest/TestProc.h:10
Definition: MessageType.h:209
xmlNode * confnode
Definition: MBSlaveTest/TestProc_SK.h:243
long ObjectId
Definition: UniSetTypes_i.idl:30