Vector BLF: VarObjectHeader.h Source File

Vector BLF

Loading...
Searching...
No Matches
VarObjectHeader.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/BLF/AbstractFile.h>
10#include <Vector/BLF/ObjectHeaderBase.h>
11
12#include <Vector/BLF/vector_blf_export.h>
13
14namespace Vector {
15namespace BLF {
16
20 struct VECTOR_BLF_EXPORT VarObjectHeader : ObjectHeaderBase {
21 VarObjectHeader(const ObjectType objectType);
22
23 void read(AbstractFile & is) override;
24 void write(AbstractFile & os) override;
25 uint16_t calculateHeaderSize() const override;
26 uint32_t calculateObjectSize() const override;
27
29 enum ObjectFlags : uint32_t {
37 TimeTenMics = 0x00000001,
38
45 TimeOneNans = 0x00000002
46 };
47
53 uint32_t objectFlags {ObjectFlags::TimeOneNans};
54
58 uint16_t objectStaticSize {};
59
67 uint16_t objectVersion {};
68
75 uint64_t objectTimeStamp {};
76};
77
78}
79}
Vector::BLF::AbstractFile
Definition: AbstractFile.h:19
Vector::BLF::ObjectHeaderBase
Base object header type definition.
Definition: ObjectHeaderBase.h:164
Vector::BLF::VarObjectHeader
Extended base object header type definition with dynamic extendible objects.
Definition: VarObjectHeader.h:20
Vector::BLF::VarObjectHeader::ObjectFlags
ObjectFlags
Definition: VarObjectHeader.h:29