Vector BLF
Loading...
Searching...
No Matches
DistributedObjectMember.h
1// SPDX-FileCopyrightText: 2013-2021 Tobias Lorenz <tobias.lorenz@gmx.net>
2//
3// SPDX-License-Identifier: GPL-3.0-or-later
4
5#pragma once
6
7#include <Vector/BLF/platform.h>
8
9#include <vector>
10
11#include <Vector/BLF/AbstractFile.h>
12#include <Vector/BLF/ObjectHeader.h>
13
14#include <Vector/BLF/vector_blf_export.h>
15
16namespace Vector {
17namespace BLF {
18
20struct VECTOR_BLF_EXPORT DistributedObjectMember final : ObjectHeader {
21 DistributedObjectMember();
22
23 void read(AbstractFile & is) override;
24 void write(AbstractFile & os) override;
25 uint32_t calculateObjectSize() const override;
26
38
51
52 /* static */
53
56
59
61 uint32_t pathLength;
62
64 uint32_t dataLength;
65
66 /* dynamic */
67
69 std::string path;
70
72 std::vector<uint8_t> data;
73};
74
75}
76}
Definition AbstractFile.h:19
void read(AbstractFile &is) override
Definition DistributedObjectMember.cpp:14
uint32_t memberType
type of the distributed object member
Definition DistributedObjectMember.h:55
void write(AbstractFile &os) override
Definition DistributedObjectMember.cpp:26
uint32_t pathLength
length of variable name in bytes
Definition DistributedObjectMember.h:61
MemberType
type of the distributed object member
Definition DistributedObjectMember.h:28
@ MemberTypeRefMember
Definition DistributedObjectMember.h:34
@ MemberTypeData
Definition DistributedObjectMember.h:30
@ MemberTypeEvent
Definition DistributedObjectMember.h:33
@ MemberTypeBindingError
Definition DistributedObjectMember.h:36
@ MemberTypeMethod
Definition DistributedObjectMember.h:31
@ MemberTypeRefObject
Definition DistributedObjectMember.h:35
@ MemberTypeField
Definition DistributedObjectMember.h:32
@ MemberTypeInvalid
Definition DistributedObjectMember.h:29
uint32_t detailType
detail type of the distributed object
Definition DistributedObjectMember.h:58
std::string path
path of the distributed object member
Definition DistributedObjectMember.h:69
uint32_t calculateObjectSize() const override
Definition DistributedObjectMember.cpp:40
std::vector< uint8_t > data
variable data
Definition DistributedObjectMember.h:72
DetailType
detail type of the distributed object
Definition DistributedObjectMember.h:40
@ DetailTypeSubscriptionState
Definition DistributedObjectMember.h:46
@ DetailTypeInvalid
Definition DistributedObjectMember.h:41
@ DetailTypeAnnouncementState
Definition DistributedObjectMember.h:47
@ DetailTypeValue
Definition DistributedObjectMember.h:42
@ DetailTypeFunctionCall
Definition DistributedObjectMember.h:43
@ DetailTypeReferencePath
Definition DistributedObjectMember.h:48
@ DetailTypeFunctionDefaults
Definition DistributedObjectMember.h:45
@ DetailTypeBindingError
Definition DistributedObjectMember.h:49
@ DetailTypeFunctionReturn
Definition DistributedObjectMember.h:44
uint32_t dataLength
length of variable data in bytes
Definition DistributedObjectMember.h:64