Vector BLF
FlexRayVFrReceiveMsgEx.h
1 /*
2  * Copyright (C) 2013 Tobias Lorenz.
3  * Contact: tobias.lorenz@gmx.net
4  *
5  * This file is part of Tobias Lorenz's Toolkit.
6  *
7  * Commercial License Usage
8  * Licensees holding valid commercial licenses may use this file in
9  * accordance with the commercial license agreement provided with the
10  * Software or, alternatively, in accordance with the terms contained in
11  * a written agreement between you and Tobias Lorenz.
12  *
13  * GNU General Public License 3.0 Usage
14  * Alternatively, this file may be used under the terms of the GNU
15  * General Public License version 3.0 as published by the Free Software
16  * Foundation and appearing in the file LICENSE.GPL included in the
17  * packaging of this file. Please review the following information to
18  * ensure the GNU General Public License version 3.0 requirements will be
19  * met: http://www.gnu.org/copyleft/gpl.html.
20  */
21 
22 #pragma once
23 
24 #include <Vector/BLF/platform.h>
25 
26 #include <array>
27 #include <vector>
28 
29 #include <Vector/BLF/AbstractFile.h>
30 #include <Vector/BLF/ObjectHeader.h>
31 #include <Vector/BLF/VectorTypes.h>
32 
33 #include <Vector/BLF/vector_blf_export.h>
34 
35 namespace Vector {
36 namespace BLF {
37 
43 struct VECTOR_BLF_EXPORT FlexRayVFrReceiveMsgEx final : ObjectHeader {
45 
46  void read(AbstractFile & is) override;
47  void write(AbstractFile & os) override;
48  DWORD calculateObjectSize() const override;
49 
55  WORD channel {};
56 
62  WORD version {};
63 
73  WORD channelMask {};
74 
84  WORD dir {};
85 
92  DWORD clientIndexFlexRayVFrReceiveMsgEx {};
93 
99  DWORD clusterNo {};
100 
106  WORD frameId {};
107 
113  WORD headerCrc1 {};
114 
120  WORD headerCrc2 {};
121 
127  WORD byteCount {};
128 
137  WORD dataCount {};
138 
144  WORD cycle {};
145 
158  DWORD tag {};
159 
214  DWORD data {};
215 
253  DWORD frameFlags {};
254 
260  DWORD appParameter {};
261 
267  DWORD frameCrc {};
268 
276  DWORD frameLengthNs {};
277 
284  WORD frameId1 {};
285 
292  WORD pduOffset {};
293 
303  WORD blfLogMask {};
304 
306  std::array<WORD, 13> reservedFlexRayVFrReceiveMsgEx {};
307 
313  std::vector<BYTE> dataBytes {};
314 };
315 
316 }
317 }
Definition: AbstractFile.h:36
FR_RCVMESSAGE_EX.
Definition: FlexRayVFrReceiveMsgEx.h:43
Object header.
Definition: ObjectHeader.h:40