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

LIN_SLEEP. More...

#include <LinSleepModeEvent.h>

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

Public Types

enum  Flags : uint8_t { WasAwake = 0x01 , IsAwake = 0x02 , External = 0x04 }
 
- Public Types inherited from Vector::BLF::ObjectHeader
enum  ObjectFlags : uint32_t { TimeTenMics = 0x00000001 , TimeOneNans = 0x00000002 }
 

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
 
uint8_t reason {}
 
uint8_t flags {}
 
uint32_t reservedLinSleepModeEvent {}
 
- 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
 

Detailed Description

LIN_SLEEP.

This info event occurs at the start of a measurement in order to report the initial state of the LIN hardware and every time the mode (awake/asleep) of LIN hardware changes.

Member Enumeration Documentation

◆ Flags

Bit values for flags

Enumerator
WasAwake 

LIN "was awake".

IsAwake 

LIN "is awake".

External 

LIN "external".

Member Function Documentation

◆ calculateObjectSize()

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

Calculates the objectSize

Returns
object size

Reimplemented from Vector::BLF::ObjectHeaderBase.

◆ read()

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

Read the data of this object

Parameters
isinput stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

◆ write()

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

Write the data of this object

Parameters
osoutput stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

Member Data Documentation

◆ channel

uint16_t Vector::BLF::LinSleepModeEvent::channel {}

application channel

Channel number where the event notified

◆ flags

uint8_t Vector::BLF::LinSleepModeEvent::flags {}

Bit mask with bit values as following:

Bit 0 (LSB): Indicates the state of the LIN hardware before this event occurred:

  • 1: Awake
  • 0: Asleep

Bit 1: Indicates the current state of the LIN hardware:

  • 1: Awake
  • 0: Asleep

Bit 2: Indicates whether this event caused by external or internal event:

  • 1: External event
  • 0: Internal event

◆ reason

uint8_t Vector::BLF::LinSleepModeEvent::reason {}

This value indicates the reason for an event. Following values are possible:

  • 0: Start state

Transition to Sleep mode

  • 1: Go-to-Sleep frame
  • 2: Bus Idle Timeout
  • 3: Silent SleepMode command (for shortening the BusIdle Timeout)

Leaving Sleep mode:

  • 9: External Wakeup signal
  • 10: Internal Wakeup signal
  • 11: Bus traffic (can only occur if the LIN hardware does not have a Master function)

LIN hardware does not go into Sleep mode in spite of request to do so:

  • 18: Bus traffic (can only occur if the LIN hardware does not have a Master function)

◆ reservedLinSleepModeEvent

uint32_t Vector::BLF::LinSleepModeEvent::reservedLinSleepModeEvent {}

reserved


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