Vector BLF
Loading...
Searching...
No Matches
ObjectHeader2.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
14
namespace
Vector {
15
namespace
BLF {
16
22
struct
VECTOR_BLF_EXPORT ObjectHeader2 : ObjectHeaderBase {
23
ObjectHeader2(
const
ObjectType
objectType
);
24
25
void
read
(
AbstractFile
& is)
override
;
26
void
write
(
AbstractFile
& os)
override
;
27
uint16_t
calculateHeaderSize
()
const override
;
28
uint32_t
calculateObjectSize
()
const override
;
29
31
enum
ObjectFlags
: uint32_t {
39
TimeTenMics
= 0x00000001,
40
47
TimeOneNans
= 0x00000002
48
};
49
55
uint32_t
objectFlags
{
ObjectFlags::TimeOneNans
};
56
58
enum
TimeStampStatus
: uint8_t {
65
Orig
= 0x01,
66
73
SwHw
= 0x02,
74
80
User
= 0x10
81
};
82
88
uint8_t
timeStampStatus
{};
89
91
uint8_t
reservedObjectHeader
{0};
92
102
uint16_t
objectVersion
{0};
103
110
uint64_t
objectTimeStamp
{0};
111
118
uint64_t
originalTimeStamp
{0};
119
};
120
121
}
122
}
Vector::BLF::AbstractFile
Definition
AbstractFile.h:19
Vector::BLF::ObjectHeader2::TimeStampStatus
TimeStampStatus
Definition
ObjectHeader2.h:58
Vector::BLF::ObjectHeader2::User
@ User
protocol specific meaning
Definition
ObjectHeader2.h:80
Vector::BLF::ObjectHeader2::SwHw
@ SwHw
1: sw generated ts; 0: hw
Definition
ObjectHeader2.h:73
Vector::BLF::ObjectHeader2::Orig
@ Orig
1: valid orig. timestamp
Definition
ObjectHeader2.h:65
Vector::BLF::ObjectHeader2::originalTimeStamp
uint64_t originalTimeStamp
original object timestamp
Definition
ObjectHeader2.h:118
Vector::BLF::ObjectHeader2::objectTimeStamp
uint64_t objectTimeStamp
object timestamp
Definition
ObjectHeader2.h:110
Vector::BLF::ObjectHeader2::ObjectFlags
ObjectFlags
Definition
ObjectHeader2.h:31
Vector::BLF::ObjectHeader2::TimeOneNans
@ TimeOneNans
1 nano second timestamp
Definition
ObjectHeader2.h:47
Vector::BLF::ObjectHeader2::TimeTenMics
@ TimeTenMics
10 micro second timestamp
Definition
ObjectHeader2.h:39
Vector::BLF::ObjectHeader2::reservedObjectHeader
uint8_t reservedObjectHeader
Definition
ObjectHeader2.h:91
Vector::BLF::ObjectHeader2::read
void read(AbstractFile &is) override
Definition
ObjectHeader2.cpp:14
Vector::BLF::ObjectHeader2::objectFlags
uint32_t objectFlags
object flags
Definition
ObjectHeader2.h:55
Vector::BLF::ObjectHeader2::calculateObjectSize
uint32_t calculateObjectSize() const override
Definition
ObjectHeader2.cpp:45
Vector::BLF::ObjectHeader2::calculateHeaderSize
uint16_t calculateHeaderSize() const override
Definition
ObjectHeader2.cpp:34
Vector::BLF::ObjectHeader2::write
void write(AbstractFile &os) override
Definition
ObjectHeader2.cpp:24
Vector::BLF::ObjectHeader2::objectVersion
uint16_t objectVersion
object specific version
Definition
ObjectHeader2.h:102
Vector::BLF::ObjectHeader2::timeStampStatus
uint8_t timeStampStatus
time stamp status
Definition
ObjectHeader2.h:88
Vector::BLF::ObjectHeaderBase::objectType
ObjectType objectType
object type
Definition
ObjectHeaderBase.h:248
ObjectHeader2.h
Generated by
1.16.1