Vector BLF
LinReceiveError2.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 
38 struct VECTOR_BLF_EXPORT LinReceiveError2 final : ObjectHeader, LinDatabyteTimestampEvent {
40 
41  void read(AbstractFile & is) override;
42  void write(AbstractFile & os) override;
43  uint32_t calculateObjectSize() const override;
44 
48  std::array<uint8_t, 8> data {};
49 
55  uint8_t fsmId {};
56 
62  uint8_t fsmState {};
63 
107  uint8_t stateReason {};
108 
115  uint8_t offendingByte {};
116 
126  uint8_t shortError {};
127 
137  uint8_t timeoutDuringDlcDetection {};
138 
148  uint8_t isEtf {};
149 
155  uint8_t hasDatabytes {};
156 
157  /* the following variables are only available in Version 2 and above */
158 
166  uint32_t respBaudrate {};
167 
169  uint32_t reservedLinReceiveError {};
170 
171  /* the following variables are only available in Version 3 and above */
172 
180  double exactHeaderBaudrate {};
181 
189  uint32_t earlyStopbitOffset {};
190 
198  uint32_t earlyStopbitOffsetResponse {};
199 };
200 
201 }
202 }
Definition: AbstractFile.h:19
Definition: LinDatabyteTimestampEvent.h:23
LIN_RCV_ERROR2.
Definition: LinReceiveError2.h:38
Object header.
Definition: ObjectHeader.h:22