Vector BLF
Loading...
Searching...
No Matches
Vector::BLF::FlexRayVFrStatus Struct Referencefinal

FR_STATUS. More...

#include <FlexRayVFrStatus.h>

Inheritance diagram for Vector::BLF::FlexRayVFrStatus:
Vector::BLF::ObjectHeader Vector::BLF::ObjectHeaderBase

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
 
ObjectHeaderBaseoperator= (const ObjectHeaderBase &)=default
 
 ObjectHeaderBase (ObjectHeaderBase &&)=default
 
ObjectHeaderBaseoperator= (ObjectHeaderBase &&)=default
 

Public Attributes

uint16_t channel {}
 application channel
 
uint16_t version {}
 object version
 
uint16_t channelMask {}
 channel mask
 
uint8_t cycle {}
 current cycle
 
uint8_t reservedFlexRayVFrStatus1 {}
 
uint32_t clientIndexFlexRayVFrStatus {}
 clientindex of send node
 
uint32_t clusterNo {}
 number of cluster
 
uint32_t wus {}
 wakeup status
 
uint32_t ccSyncState {}
 sync state of cc
 
uint32_t tag {}
 type of cc
 
std::array< uint32_t, 2 > data {}
 register flags
 
std::array< uint16_t, 18 > reservedFlexRayVFrStatus2 {}
 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_STATUS.

The content of the FlexRay status event depends on the type of hardware interface. The event is generated in one of the following situations:

  • A symbol is received
  • The POC state or wakeup state of the CC has changed
  • The status of the symbol window has changed

Member Function Documentation

◆ calculateObjectSize()

uint32_t Vector::BLF::FlexRayVFrStatus::calculateObjectSize ( ) const
overridevirtual

Calculates the objectSize

Returns
object size

Reimplemented from Vector::BLF::ObjectHeaderBase.

◆ read()

void Vector::BLF::FlexRayVFrStatus::read ( AbstractFile & is)
overridevirtual

Read the data of this object

Parameters
isinput stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

◆ write()

void Vector::BLF::FlexRayVFrStatus::write ( AbstractFile & os)
overridevirtual

Write the data of this object

Parameters
osoutput stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

Member Data Documentation

◆ ccSyncState

uint32_t Vector::BLF::FlexRayVFrStatus::ccSyncState {}

sync state of cc

Sync-State, only valid

  • for Cyclone 1
  • for Cyclone II if the wakup state value is 0.

Meaning:

  • 0 = Not synced passive
  • 1 = Synced active
  • 2 = Not synced

◆ channel

uint16_t Vector::BLF::FlexRayVFrStatus::channel {}

application channel

Application channel

◆ channelMask

uint16_t Vector::BLF::FlexRayVFrStatus::channelMask {}

channel mask

Channel Mask

  • 0 = Reserved or invalid
  • 1 = FlexRay Channel A
  • 2 = FlexRay Channel B
  • 3 = FlexRay Channels A and B

◆ clientIndexFlexRayVFrStatus

uint32_t Vector::BLF::FlexRayVFrStatus::clientIndexFlexRayVFrStatus {}

clientindex of send node

Client index of send node. Must be set to 0 if file is written from other applications

◆ clusterNo

uint32_t Vector::BLF::FlexRayVFrStatus::clusterNo {}

number of cluster

Number of cluster: channel number – 1

◆ cycle

uint8_t Vector::BLF::FlexRayVFrStatus::cycle {}

current cycle

Cycle number

◆ data

std::array<uint32_t, 2> Vector::BLF::FlexRayVFrStatus::data {}

register flags

Driver flags for internal usage

CC-Type: Cyclone I

  • data[0]: Content of Protocol state register (PSR)
  • data[1]: Content of Module config register (MCR0)

CC-Type: BUSDOCTOR

  • LOW-WORD of data[0]: Symbol length
  • HI-WORD of data[0]: Flags: 1 = possible CAS
  • data[1]: Reserved

CC-Type: VN-Interface

  • data[0]: POC state of E-Ray register CCSV. Only valid
    • for Vector interfaces
    • if wakeup state is 0 POC State in the operation control phase:
    • 0x00: DEFAULT_CONFIG
    • 0x01: READY
    • 0x02: NORMAL_ACTIVE
    • 0x03: NORMAL_PASSIVE
    • 0x04: HALT
    • 0x05: MONITOR_NODE
    • 0x06: CONFIG POC State in the wake-up phase:
    • 0x10: WAKEUP_STANDBY
    • 0x11: WAKEUP_LISTEN
    • 0x12: WAKEUP_SEND
    • 0x13: WAKEUP_DETECT POC State in the start-up phase:
    • 0x20: STARTUP_PREPARE
    • 0x21: COLDSTART_LISTEN
    • 0x22: COLDSTART_COLLISION_RESOLUTION
    • 0x23: COLDSTART_CONSISTENCY_CHECK
    • 0x24: COLDSTART_GAP
    • 0x25: COLDSTART_JOIN
    • 0x26: INTEGRATION_COLDSTART_CHECK
    • 0x27: INTEGRATION_LISTEN
    • 0x28: INTEGRATION_CONSISTENCY_CHECK
    • 0x29: INITIALIZE_SCHEDULE
    • 0x30: ABORT_STARTUP
    • 0x31: STARTUP_SUCCESS All other values are reserved.
  • LOW-WORD of data[1]: Bit field indicating the symbol window status of the controller and the event source.
    • 1: SESA (Syntax error in symbol window channel A)
    • 2: SBSA (Slot boundary violation in symbol window channel A)
    • 4: TCSA (Transmission conflict in symbol window channel A)
    • 8: SESB (Syntax error in symbol window channel B)
    • 16: SBSB (Slot boundary violation in symbol window channel B)
    • 32: TCSB (Transmission conflict in symbol window channel B)
    • 64: The event was generated from a controller-independent protocol interpreter (Spy).
    • 128: Cold-start helper POC indicator, if set, event contains the POC state of the cold-start helper All other bits are reserved. CANoe/CANalyzer may set some of these bits to 1. Other applications must set them to 0.
  • HI-WORD of data[1]: Symbol length in bit times. Only valid for symbol type 4 and if the value is not zero.

◆ reservedFlexRayVFrStatus1

uint8_t Vector::BLF::FlexRayVFrStatus::reservedFlexRayVFrStatus1 {}

reserved

◆ reservedFlexRayVFrStatus2

std::array<uint16_t, 18> Vector::BLF::FlexRayVFrStatus::reservedFlexRayVFrStatus2 {}

reserved

reserved[0]: If this value is not zero, then the event contains the information about a symbol.

  • 0 = Void
  • 1 = CAS
  • 2 = MTS
  • 3 = WUS
  • 4 = Network interface doesn’t provide a symbol interpretation, e.g. if spy-mode is used or the BUSDOCTOR interface. In spy mode, the symbol length is stored in the HI-WORD of data[1].

reserved[1..15]: Reserved

◆ tag

uint32_t Vector::BLF::FlexRayVFrStatus::tag {}

type of cc

Type of communication controller

  • 0 = Architecture independent
  • 1 = Invalid CC type (for internal use only)
  • 2 = Cyclone I
  • 3 = BUSDOCTOR
  • 4 = Cyclone II
  • 5 = Vector VN interface
  • 6 = VN-Sync-Pulse (only in Status Event, for debugging purposes only)

◆ version

uint16_t Vector::BLF::FlexRayVFrStatus::version {}

object version

Object version, for internal use

◆ wus

uint32_t Vector::BLF::FlexRayVFrStatus::wus {}

wakeup status

WakeUp state. Only valid

  • for Vector interfaces and for Cyclone II,
  • if symbol is void (mReserved[0] = 0)

Meaning (see E-Ray specification for a detailed description):

  • 0: UNDEFINED
  • 1: RECEIVED_HEADER
  • 2: RECEIVED_WUP
  • 3: COLLISION_HEADER
  • 4: COLLISION_WUP
  • 5: COLLISION_UNKNOWN
  • 6: TRANSMITTED
  • 7: EXTERNAL_WAKEUP
  • 8: WUP_RECEIVED_WITHOUT_WUS_TX

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