IpbusMock  1.0.0
Library which integrates IPbus use in Phoenix
Loading...
Searching...
No Matches
uaMessage.h
Go to the documentation of this file.
1#pragma once
2#include <memory>
3#include <string>
4#include <vector>
5
6#include "data_all.h"
7#include "phoenix_data_stream.h"
8
10class UaMessage {
11public:
13
14 std::string connectionId;
15 std::string nodeId;
16 uint32_t sizeValue; // Size of the value vector, used for readBlock
17 std::unique_ptr<std::vector<uint32_t>> value;
18 DataStreamMsg dataStreamMsg;
19
21 this->sizeValue = 1;
22 this->value = std::make_unique<std::vector<uint32_t>>();
23 }
24
25 UaMessage(const std::string connectionId, const std::string nodeId)
27 this->sizeValue = 1;
28 this->value = std::make_unique<std::vector<uint32_t>>();
29 }
30
31 UaMessage(const std::string connectionId, const std::string nodeId,
32 uint32_t sizeValue)
34 this->sizeValue = sizeValue;
35 this->value = std::make_unique<std::vector<uint32_t>>();
36 }
37
38 UaMessage(const std::string &connectionId, const std::string &nodeId,
39 const std::vector<uint32_t> *value)
41 this->sizeValue = value->size();
42 this->value = std::make_unique<std::vector<uint32_t>>(*value);
43 }
44
45 size_t size() const { return data_size(*this); }
46
47private:
48};
49
50#include "uaMessage_impl.h"
UaMessage(const std::string connectionId, const std::string nodeId, uint32_t sizeValue)
Definition uaMessage.h:31
UaMessage(const std::string &connectionId, const std::string &nodeId, const std::vector< uint32_t > *value)
Definition uaMessage.h:38
DataStreamMsg dataStreamMsg
Definition uaMessage.h:18
size_t size() const
Definition uaMessage.h:45
std::string nodeId
Definition uaMessage.h:15
std::string connectionId
Constructor.
Definition uaMessage.h:14
std::unique_ptr< std::vector< uint32_t > > value
Definition uaMessage.h:17
uint32_t sizeValue
Definition uaMessage.h:16
UaMessage(const std::string connectionId, const std::string nodeId)
Definition uaMessage.h:25