22 #ifndef MessageType_H_
23 #define MessageType_H_
28 #include "UniSetTypes.h"
29 #include "IOController_i.hh"
43 TheLastFieldOfTypeOfMessage
46 int type = { Unused };
55 Priority priority = { Medium };
59 struct timespec tm = { 0, 0 };
70 explicit Message(
int dummy_init ) noexcept {}
77 std::memcpy(&tmsg.data, &msg,
sizeof(msg));
78 tmsg.consumer = msg.consumer;
79 return std::move(tmsg);
83 std::ostream& operator<<( std::ostream& os,
const Message::TypeOfMessage& t );
101 inline bool operator < (
const VoidMessage& msg )
const
103 if( priority != msg.priority )
104 return priority < msg.priority;
106 if( tm.tv_sec != msg.tm.tv_sec )
107 return tm.tv_sec >= msg.tm.tv_sec;
109 return tm.tv_nsec >= msg.tm.tv_nsec;
114 return transport(*
this);
128 bool undefined = {
false };
131 struct timespec sm_tv = { 0, 0 };
133 UniversalIO::IOType sensor_type = { UniversalIO::DI };
140 SensorMessage( SensorMessage&& m) noexcept = default;
141 SensorMessage& operator=(SensorMessage&& m) noexcept = default;
142 SensorMessage( const SensorMessage& ) noexcept = default;
143 SensorMessage& operator=( const SensorMessage& ) noexcept = default;
145 SensorMessage() noexcept;
147 Priority priority = Message::Medium,
155 explicit SensorMessage(
int dummy ) noexcept;
157 SensorMessage(const VoidMessage* msg) noexcept;
158 inline TransportMessage transport_msg() const noexcept
160 return transport(*
this);
198 return transport(*
this);
223 return transport(*
this);
238 return transport(*
this);
244 const double& in_sensor_value,
245 const timespec& in_sensor_time,
246 const timespec& in_confirm_time,
247 Priority in_priority = Message::Medium) noexcept;
256 struct timespec sensor_time;
257 struct timespec confirm_time;
274 #endif // MessageType_H_
Definition: MessageType.h:173
bool threshold
Definition: MessageType.h:137
Базовый интерфейс для создания координаторов ввода/вывода
Definition: IOController_i.idl:33
Definition: MessageType.h:176
Definition: CallbackTimer.h:29
long ThresholdId
Definition: UniSetTypes_i.idl:31
Definition: UniSetTypes_i.idl:88
Definition: MessageType.h:166
Definition: MessageType.h:177
Definition: MessageType.h:232
Definition: MessageType.h:182
const ObjectId DefaultObjectId
Definition: UniSetTypes.h:56
Definition: MessageType.h:174
const ThresholdId DefaultThresholdId
Definition: UniSetTypes.h:57
long TimerId
Definition: UniSetTypes_i.idl:32
Definition: MessageType.h:122
Definition: UniSetTypes_i.idl:44
Definition: MessageType.h:86
uniset::TimerId id
Definition: MessageType.h:226
Definition: MessageType.h:175
Definition: IOController_i.idl:78
Command
Definition: MessageType.h:169
ByteOfMessage RawDataOfTransportMessage[SizeOfTransportMessage]
Definition: UniSetTypes_i.idl:36
Definition: MessageType.h:209
Definition: MessageType.h:183
octet ByteOfMessage
Definition: UniSetTypes_i.idl:35
Definition: MessageType.h:33
bool forward
Definition: MessageType.h:266
long ObjectId
Definition: UniSetTypes_i.idl:30