Vector BLF
A429Message.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 <array>
10 
11 #include <Vector/BLF/AbstractFile.h>
12 #include <Vector/BLF/ObjectHeader.h>
13 
14 #include <Vector/BLF/vector_blf_export.h>
15 
16 namespace Vector {
17 namespace BLF {
18 
24 struct VECTOR_BLF_EXPORT A429Message final : ObjectHeader {
25  A429Message();
26 
27  void read(AbstractFile & is) override;
28  void write(AbstractFile & os) override;
29  uint32_t calculateObjectSize() const override;
30 
32  std::array<uint8_t, 4> a429Data {};
33 
35  uint16_t channel {};
36 
38  uint8_t dir {};
39 
41  uint8_t reservedA429Message1 {};
42 
44  uint32_t bitrate {};
45 
47  int32_t errReason {};
48 
50  uint16_t errPosition {};
51 
53  uint16_t reservedA429Message2 {};
54 
56  uint32_t reservedA429Message3 {};
57 
59  uint64_t frameGap {};
60 
62  uint32_t frameLength {};
63 
65  uint16_t msgCtrl {};
66 
68  uint16_t reservedA429Message4 {};
69 
71  uint32_t cycleTime {};
72 
74  uint32_t error {};
75 
77  uint32_t bitLenOfLastBit {};
78 
80  uint32_t reservedA429Message5 {};
81 };
82 
83 }
84 }
A429_MESSAGE.
Definition: A429Message.h:24
Definition: AbstractFile.h:19
Object header.
Definition: ObjectHeader.h:22