Vector::BL...ayVFrError(3)
Hey bestie π welcome to Vector::BL...ayVFrError(3) β thatβs the title, and it lives in the Library Functions Manual. This page is all about Vector::BLF::FlexRayVFrError, aka FR_ERROR, and weβre keeping every field, flag, inherited member, and bit layout. No cap. π«Ά
β¨ NAME β¨
Vector::BLF::FlexRayVFrError β FR_ERROR.
π SYNOPSIS π
#include <FlexRayVFrError.h>
Inherits Vector::BLF::ObjectHeader.
π Public Member Functions
void read (AbstractFile &is) overrideβ reads the object data from the input stream.void write (AbstractFile &os) overrideβ writes the object data to the output stream.uint32_t calculateObjectSize () const overrideβ calculates theobjectSize.
π«Ά Public Member Functions inherited from Vector::BLF::ObjectHeader
ObjectHeader (const ObjectType objectType, const uint16_t objectVersion=0)β constructor vibe.void read (AbstractFile &is) overrideβ inherited read action.void write (AbstractFile &os) overrideβ inherited write action.uint16_t calculateHeaderSize () const overrideβ calculates the header size.uint32_t calculateObjectSize () const overrideβ calculates the object size.
π Public Member Functions inherited from Vector::BLF::ObjectHeaderBase
ObjectHeaderBase (const uint16_t headerVersion, const ObjectType objectType)β constructor.ObjectHeaderBase (const ObjectHeaderBase &)=defaultβ copy constructor, defaulted.ObjectHeaderBase & operator= (const ObjectHeaderBase &)=defaultβ copy assignment, defaulted.ObjectHeaderBase (ObjectHeaderBase &&)=defaultβ move constructor, defaulted.ObjectHeaderBase & operator= (ObjectHeaderBase &&)=defaultβ move assignment, defaulted.
πΈ Public Attributes
uint16_t channel {}β application channel.uint16_t version {}β object version.uint16_t channelMask {}β channel mask.uint8_t cycle {}β current cycle.uint8_t reservedFlexRayVFrError1 {}β reserved.uint32_t clientIndexFlexRayVFrError {}β clientindex of send node.uint32_t clusterNo {}β number of cluster.uint32_t tag {}β type of cc.std::array< uint32_t, 4 > data {}β register flags.uint32_t reservedFlexRayVFrError2 {}β reserved.
π Public Attributes inherited from Vector::BLF::ObjectHeader
uint32_t objectFlags {ObjectFlags::TimeOneNans}β object flags.uint16_t clientIndex {}β client index of send node.uint16_t objectVersion {0}β object specific version.uint64_t objectTimeStamp {}β object timestamp.
π¦ Public Attributes inherited from Vector::BLF::ObjectHeaderBase
uint32_t signature {ObjectSignature}β signature (ObjectSignature).uint16_t headerSize {}βsizeof object header.uint16_t headerVersion {}β header version (1).uint32_t objectSize {}β object size.ObjectType objectType {ObjectType::UNKNOWN}β object type.
π§ Additional Inherited Members
Public Types inherited from Vector::BLF::ObjectHeader
enum ObjectFlags : uint32_t { TimeTenMics = 0x00000001, TimeOneNans = 0x00000002 }
π Detailed Description π
FR_ERROR. Thatβs the whole mood.
Itβs the FlexRay Error event transmitted by the FlexRay hardware. Literally thatβs what it is, and itβs kind of iconic. β¨
π₯ Member Function Documentation π₯
uint32_t Vector::BLF::FlexRayVFrError::calculateObjectSize () const
[override], [virtual]
Calculates the objectSize.
Returns: object size.
Reimplemented from Vector::BLF::ObjectHeaderBase.
void Vector::BLF::FlexRayVFrError::read (AbstractFile & is)
[override], [virtual]
Read the data of this object.
Parameters: is β input stream.
Reimplemented from Vector::BLF::ObjectHeaderBase.
void Vector::BLF::FlexRayVFrError::write (AbstractFile & os)
[override], [virtual]
Write the data of this object.
Parameters: os β output stream.
Reimplemented from Vector::BLF::ObjectHeaderBase.
π Member Data Documentation π
uint16_t Vector::BLF::FlexRayVFrError::channel {}
Application channel. The page says βapplication channel Application channel,β and honestly? We respect the echo. π
uint16_t Vector::BLF::FlexRayVFrError::channelMask {}
Channel mask. Channel Mask. Hereβs the breakdown:
0= Reserved or invalid1= FlexRay Channel A2= FlexRay Channel B3= FlexRay Channels A and B
uint32_t Vector::BLF::FlexRayVFrError::clientIndexFlexRayVFrError {}
Clientindex of send node. Client index of send node.
Heads up, bestie: this must be set to 0 if the file is written from other applications.
uint32_t Vector::BLF::FlexRayVFrError::clusterNo {}
Number of cluster. Number of cluster: channel number - 1.
uint8_t Vector::BLF::FlexRayVFrError::cycle {}
Current cycle. Cycle number.
std::array<uint32_t, 4> Vector::BLF::FlexRayVFrError::data {}
Register flags. Driver flags for internal usage.
CC-Type: Cyclone I
data[0]: Error flags from driver API
CC-Type: Cyclone II
data[0]: Error packet flag:0= No error1= FlexCard overflow2= PCO error mode changed3= Sync frames below minimum4= Sync frame overflow5= Clock correction failure6= Parity error7= Receive FIFO overrun8= Empty FIFO access9= Illegal input buffer access10= Illegal output buffer access11= Syntax error12= Content error13= Slot boundary violation14= Transmission across boundary15= Latest transmit violation
data[1]:uint32_tlayout depends on the error packet value (see previous row)- Error packet=2:
0= Unknown state1= FlexRay protocol spec. > CONFIG2= FlexRay protocol spec. > NORMAL_ACTIVE3= FlexRay protocol spec. > NORMAL_PASSIVE4= FlexRay protocol spec. > HALT5= FlexRay protocol spec. > READY6= FlexRay protocol spec. > STARTUP7= FlexRay protocol spec. > WAKEUP
- Error packet = 3 or 4:
- Bits
0..3> Sync frames even on channel A - Bits
4..7> Sync frames even on channel B - Bits
8..11> Sync frames odd on channel A - Bits
12..15> Sync frames odd on channel B
- Bits
- Error packet = 5:
- Bit
0> Missing rate correction - Bit
1> Rate correction limit reached - Bit
2> Offset correction limit reached - Bit
3> Missing offset correction - Bit
4..7> Sync frames even on channel A - Bits
8..11> Sync frames even on channel B - Bits
12..15> Sync frames odd on channel A - Bits
16..19> Sync frames odd on channel B
- Bit
- Error packet = 11..15:
- LOW-WORD of
mData[1]> Channel - HI-WORD of
mData[1]> Slot count
- LOW-WORD of
CC-Type: BUSDOCTOR
data[0]: Error flags from driver API
CC-Type: VN-Interface
data[0]: Error tag:0=FR_ERROR_POC_MODE1=FR_ERROR_SYNC_FRAMES_BELOWMIN2=FR_ERROR_SYNC_FRAMES_OVERLOAD3=FR_ERROR_CLOCK_CORR_FAILURE4=FR_ERROR_NIT_FAILURE5=FR_ERROR_CC_ERROR6=FR_ERROR_OVERFLOW
data[1]anddata[2]:uint32_tlayout depends on the error tag value (see previous row):- Error tag = 0:
- Value
0:FR_ERROR_POC_ACTIVE - Value
1:FR_ERROR_POC_PASSIVE - Value
2:FR_ERROR_POC_COMM_HALT
- Value
- Error tag = 1 or 2:
- Bits
0..3: Sync frames even on channel A - Bits
4..7: Sync frames even on channel B - Bits
8..11: Sync frames odd on channel A - Bits
12..15: Sync frames odd on channel B
- Bits
- Error tag = 3:
- Bit
0: Missing rate correction - Bit
1: Missing rate correction limit reached - Bit
2: Offset correction limit reached - Bit
3: Missing offset correction - Bits
4..19: Clock correction failed counter - Bits
20..23: Sync frames even on channel A - Bits
24..27: Sync frames even on channel B - Bits
28..31: Sync frames odd on channel A - Bits
32..35: Sync frames odd on channel B
- Bit
- Error tag = 4:
- Value
1:FR_ERROR_NIT_SENA - Value
2:FR_ERROR_NIT_SBNA - Value
4:FR_ERROR_NIT_SENB - Value
8:FR_ERROR_NIT_SBNB
- Value
- Error tag = 5:
- Value
0x00000001: POC Error Mode Changed - Value
0x00000004: Sync Frames Below Minimum - Value
0x00000008: Sync Frame Overflow - Value
0x00000010: Clock Correction Failure - Value
0x00000040: Parity Error, data from MHDS (internal ERay error) - Value
0x00000200: Illegal Input Buffer Access (internal ERay error) - Value
0x00000400: Illegal Output Buffer Access (internal ERay error) - Value
0x00000800: Message Handler Constraints Flag data from MHDF (internal ERay error) - Value
0x00010000: Error Detection on channel A, data from ACS - Value
0x00020000: Latest Transmit Violation on channel A - Value
0x00040000: Transmit Across Boundary on Channel A - Value
0x01000000: Error Detection on channel B, data from ACS - Value
0x02000000: Latest Transmit Violation on channel B - Value
0x04000000: Transmit Across Boundary on Channel B
- Value
- Error tag = 0:
uint8_t Vector::BLF::FlexRayVFrError::reservedFlexRayVFrError1 {}
Reserved.
uint32_t Vector::BLF::FlexRayVFrError::reservedFlexRayVFrError2 {}
Reserved.
uint32_t Vector::BLF::FlexRayVFrError::tag {}
Type of cc. Type of communication controller. The options are giving:
0= Architecture independent1= Invalid CC type (for internal use only)2= Cyclone I3= BUSDOCTOR4= Cyclone II5= Vector VN interface6= VN-Sync-Pulse (only in Status Event, for debugging purposes only)
uint16_t Vector::BLF::FlexRayVFrError::version {}
Object version. Object version, for internal use.
π Author π
Generated automatically by Doxygen for Vector BLF from the source code. No human typed it by hand, but the vibe is still immaculate. π
Footer sign-off, bestie: this page comes from Vector BLF, and the manual title is Vector::BL...ayVFrError(3). The footer didnβt show a date, so weβre not inventing one β no cap. Byeeee πβ¨
π¦ where this page comes from
- arch rolling: vector-blf 2.4.2-2 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms