Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
AbstractWatchcallNTMessage.hpp
Go to the documentation of this file.
1
2#ifndef IV_SRC_COMMS_WATCHCALLNT_MESSAGES_ABSTRACTWATCHCALLNTMESSAGE_HPP_
3#define IV_SRC_COMMS_WATCHCALLNT_MESSAGES_ABSTRACTWATCHCALLNTMESSAGE_HPP_
4
7#include "core/types.hpp"
10#include <memory>
11
13{
15{
17 ~AbstractWatchcallNTMessage() override = default;
18 [[nodiscard]] std::vector<std::byte> serialize() const override;
19 [[nodiscard]] bool deserialize(const std::vector<std::byte> &data) override;
20
23
24protected:
25 virtual void serializeSpecific(std::shared_ptr<iv::streams::OutputStreamMemory> &stream) const = 0;
26 virtual void deserializeSpecific(std::shared_ptr<iv::streams::InputStreamMemory> &stream) = 0;
27};
28}// namespace iv::comms::watchcallNT
29
30#endif//IV_SRC_COMMS_WATCHCALLNT_MESSAGES_ABSTRACTWATCHCALLNTMESSAGE_HPP_
Definition IMessageComm.hpp:11
Definition enums.hpp:5
eWatchcallNTMessageType
Definition enums.hpp:7
std::string stationId
Definition types.hpp:75
Definition AbstractWatchcallNTMessage.hpp:15
iv::comms::watchcallNT::eWatchcallNTMessageType type
Definition AbstractWatchcallNTMessage.hpp:21
AbstractWatchcallNTMessage(const iv::comms::watchcallNT::eWatchcallNTMessageType _type)
Definition AbstractWatchcallNTMessage.hpp:16
iv::types::stationId nodeStationId
Definition AbstractWatchcallNTMessage.hpp:22
virtual void deserializeSpecific(std::shared_ptr< iv::streams::InputStreamMemory > &stream)=0
virtual void serializeSpecific(std::shared_ptr< iv::streams::OutputStreamMemory > &stream) const =0
std::vector< std::byte > serialize() const override
Definition AbstractWatchcallNTMessage.cpp:8
bool deserialize(const std::vector< std::byte > &data) override
Definition AbstractWatchcallNTMessage.cpp:30