Vector BLF: Vector::BLF::CanErrorFrameExt Struct Reference

Vector BLF

Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
Vector::BLF::CanErrorFrameExt Struct Referencefinal

CAN_ERROR_EXT. More...

`#include <CanErrorFrameExt.h>`

Inheritance diagram for Vector::BLF::CanErrorFrameExt:

## Public Member Functions
void | read (AbstractFile &is) override
void | write (AbstractFile &os) override
uint32_t | calculateObjectSize () const override
Public Member Functions inherited from Vector::BLF::ObjectHeader
| ObjectHeader (const ObjectType objectType, const uint16_t objectVersion=0)
void | read (AbstractFile &is) override
void | write (AbstractFile &os) override
uint16_t | calculateHeaderSize () const override
uint32_t | calculateObjectSize () const override
Public Member Functions inherited from Vector::BLF::ObjectHeaderBase
| ObjectHeaderBase (const uint16_t headerVersion, const ObjectType objectType)
| ObjectHeaderBase (const ObjectHeaderBase &)=default
ObjectHeaderBase & | operator= (const ObjectHeaderBase &)=default
| ObjectHeaderBase (ObjectHeaderBase &&)=default
ObjectHeaderBase & | operator= (ObjectHeaderBase &&)=default
virtual void | read (AbstractFile &is)
virtual void | write (AbstractFile &os)
virtual uint16_t | calculateHeaderSize () const
virtual uint32_t | calculateObjectSize () const

## Public Attributes
uint16_t | channel {}
| application channel
uint16_t | length {}
| CAN error frame length.
uint32_t | flags {}
| extended CAN error frame flags
uint8_t | ecc {}
| error control code
uint8_t | position {}
| error position
uint8_t | dlc {}
| lower 4 bits: DLC from CAN-Core. Upper 4 bits: reserved
uint8_t | reservedCanErrorFrameExt1 {}
uint32_t | frameLengthInNs {}
| frame length in ns
uint32_t | id {}
| frame ID from CAN-Core
uint16_t | flagsExt {}
| extended error flags
uint16_t | reservedCanErrorFrameExt2 {}
std::vector< uint8_t > | data {}
| Payload, only for CAN-Core.
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

CAN_ERROR_EXT.

Extended CAN error frame received or transmitted on a CAN channel.

## Member Function Documentation

## ◆ calculateObjectSize()

uint32_t Vector::BLF::CanErrorFrameExt::calculateObjectSize | ( |  | ) | const
| overridevirtual

Calculates the objectSize

Returns
  object size

Reimplemented from Vector::BLF::ObjectHeaderBase.

## ◆ read()

void Vector::BLF::CanErrorFrameExt::read | ( | AbstractFile & | is | ) |
| overridevirtual

Read the data of this object

Parameters

  is | input stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

## ◆ write()

void Vector::BLF::CanErrorFrameExt::write | ( | AbstractFile & | os | ) |
| overridevirtual

Write the data of this object

Parameters

  os | output stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

## Member Data Documentation

## ◆ channel

uint16_t Vector::BLF::CanErrorFrameExt::channel {}

application channel

Channel the frame was sent or received.

## ◆ data

std::vector<uint8_t> Vector::BLF::CanErrorFrameExt::data {}

Payload, only for CAN-Core.

Message data.

## ◆ dlc

uint8_t Vector::BLF::CanErrorFrameExt::dlc {}

lower 4 bits: DLC from CAN-Core. Upper 4 bits: reserved

Data length code of the corrupted message.

## ◆ ecc

uint8_t Vector::BLF::CanErrorFrameExt::ecc {}

error control code

Content of Philips SJA1000 Error Code Capture (ECC) register, or the Vector CAN-Core error register (see also flags).

SJA1000-ECC

See documentation of Philips SJA1000 CAN Controller.

Vector CAN-Core

- Bit 0-5 Meaning:
  - 0: Bit Error
  - 1: Form Error
  - 2: Stuff Error
  - 3: Other Error
  - 4: CRC Error
  - 5: Ack-Del-Error
- Bit 6-7 Meaning:
  - 0: RX-NAK-Error
  - 1: TK-NAK-Error
  - 2: RX-Error
  - 3: TX-Error

## ◆ flags

uint32_t Vector::BLF::CanErrorFrameExt::flags {}

extended CAN error frame flags

Defines what additional information is valid. Following values are possible:

- 1: SJA 1000 ECC is valid (member ecc)
- 2: Vector CAN Core Error Code is valid.
- 4: Vector CAN Core Error Position
- 8: Vector CAN Core Frame Length in ns

## ◆ flagsExt

uint16_t Vector::BLF::CanErrorFrameExt::flagsExt {}

extended error flags

Extended error flags.

- Bit 0-4: Segment (only SJA1000)
- Bit 5: Direction, 1=RX
- Bit 6-11: Error Code
  - 0: Bit Error
  - 1: Form Error
  - 2: Stuff Error
  - 3: Other Error
  - 4: CRC Error
  - 5: ACK-DEL Error
- Bit 12-13: Extended Direction
  - 0: RX NAK
  - 1: TX NAK
  - 2: RX
  - 3: TX
- Bit 14: 1=The error frame was send from the application

## ◆ frameLengthInNs

uint32_t Vector::BLF::CanErrorFrameExt::frameLengthInNs {}

frame length in ns

Length of the error frame in nanoseconds (time difference between Start Of Frame and End Of Frame)

## ◆ id

uint32_t Vector::BLF::CanErrorFrameExt::id {}

frame ID from CAN-Core

Message ID of the corrupted message.

## ◆ length

uint16_t Vector::BLF::CanErrorFrameExt::length {}

CAN error frame length.

Length of error frame, unused, may be 0.

## ◆ position

uint8_t Vector::BLF::CanErrorFrameExt::position {}

error position

Bit position of the error frame in the corrupted message.

## ◆ reservedCanErrorFrameExt1

uint8_t Vector::BLF::CanErrorFrameExt::reservedCanErrorFrameExt1 {}

reserved

## ◆ reservedCanErrorFrameExt2

uint16_t Vector::BLF::CanErrorFrameExt::reservedCanErrorFrameExt2 {}

reserved

The documentation for this struct was generated from the following files:

- CanErrorFrameExt.h
- CanErrorFrameExt.cpp