Vector BLF
LinCrcError2.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/LinDatabyteTimestampEvent.h>
13 #include <Vector/BLF/ObjectHeader.h>
14 
15 #include <Vector/BLF/vector_blf_export.h>
16 
17 namespace Vector {
18 namespace BLF {
19 
26 struct VECTOR_BLF_EXPORT LinCrcError2 final : ObjectHeader, LinDatabyteTimestampEvent {
27  LinCrcError2();
28 
29  void read(AbstractFile & is) override;
30  void write(AbstractFile & os) override;
31  uint32_t calculateObjectSize() const override;
32 
38  std::array<uint8_t, 8> data {};
39 
45  uint16_t crc {};
46 
55  uint8_t dir {};
56 
61  uint8_t fsmId {};
62 
67  uint8_t fsmState {};
68 
77  uint8_t simulated {};
78 
80  uint16_t reservedLinCrcError1 {};
81 
82  /* the following variables are only available in Version 2 and above */
83 
90  uint32_t respBaudrate {};
91 
93  uint32_t reservedLinCrcError2 {};
94 
95  /* the following variables are only available in Version 3 and above */
96 
104  double exactHeaderBaudrate {};
105 
113  uint32_t earlyStopbitOffset {};
114 
122  uint32_t earlyStopbitOffsetResponse {};
123 };
124 
125 }
126 }
Definition: AbstractFile.h:19
LIN_CRC_ERROR2.
Definition: LinCrcError2.h:26
Definition: LinDatabyteTimestampEvent.h:23
Object header.
Definition: ObjectHeader.h:22