Vector BLF
Vector::BLF::MostEthernetPktFragment Struct Referencefinal

MOST_ETHERNET_PKT_FRAGMENT. More...

#include <MostEthernetPktFragment.h>

Inheritance diagram for Vector::BLF::MostEthernetPktFragment:
Inheritance graph
Collaboration diagram for Vector::BLF::MostEthernetPktFragment:
Collaboration graph

Public Member Functions

void read (AbstractFile &is) override
 
void write (AbstractFile &os) override
 
DWORD calculateObjectSize () const override
 
- Public Member Functions inherited from Vector::BLF::ObjectHeader2
 ObjectHeader2 (const ObjectType objectType)
 
void read (AbstractFile &is) override
 
void write (AbstractFile &os) override
 
WORD calculateHeaderSize () const override
 
DWORD calculateObjectSize () const override
 
- Public Member Functions inherited from Vector::BLF::ObjectHeaderBase
 ObjectHeaderBase (const WORD headerVersion, const ObjectType objectType)
 
 ObjectHeaderBase (const ObjectHeaderBase &)=default
 
ObjectHeaderBaseoperator= (const ObjectHeaderBase &)=default
 
 ObjectHeaderBase (ObjectHeaderBase &&)=default
 
ObjectHeaderBaseoperator= (ObjectHeaderBase &&)=default
 

Public Attributes

WORD channel {}
 application channel More...
 
BYTE reservedMostEthernetPktFragment1 {}
 
BYTE ackNack {}
 acknowledge code More...
 
DWORD validMask {}
 bitfield indicating which members have valid data More...
 
ULONGLONG sourceMacAdr {}
 48 bit source address More...
 
ULONGLONG destMacAdr {}
 48 bit target address More...
 
BYTE pAck {}
 a preemptive acknowledge code More...
 
BYTE cAck {}
 CRC acknowledge from the packet receiver(s) to the packet transmitter. More...
 
WORD reservedMostEthernetPktFragment2 {}
 
DWORD crc {}
 Cyclic Redundancy Check. More...
 
DWORD dataLen {}
 number of transmitted user data bytes More...
 
DWORD dataLenAnnounced {}
 announced user data length at the start of the transmission More...
 
DWORD firstDataLen {}
 number of bytes in firstData More...
 
DWORD reservedMostEthernetPktFragment3 {}
 
std::vector< uint8_t > firstData {}
 variable data More...
 
- Public Attributes inherited from Vector::BLF::ObjectHeader2
DWORD objectFlags {ObjectFlags::TimeOneNans}
 object flags More...
 
BYTE timeStampStatus {}
 time stamp status More...
 
BYTE reservedObjectHeader {0}
 
WORD objectVersion {0}
 object specific version More...
 
ULONGLONG objectTimeStamp {0}
 object timestamp More...
 
ULONGLONG originalTimeStamp {0}
 original object timestamp More...
 
- Public Attributes inherited from Vector::BLF::ObjectHeaderBase
DWORD signature {ObjectSignature}
 signature (ObjectSignature) More...
 
WORD headerSize {}
 sizeof object header More...
 
WORD headerVersion {}
 header version (1) More...
 
DWORD objectSize {}
 object size More...
 
ObjectType objectType {}
 object type More...
 

Additional Inherited Members

- Public Types inherited from Vector::BLF::ObjectHeader2
enum  ObjectFlags : DWORD { TimeTenMics = 0x00000001 , TimeOneNans = 0x00000002 }
 
enum  TimeStampStatus : BYTE { Orig = 0x01 , SwHw = 0x02 , User = 0x10 }
 

Detailed Description

MOST_ETHERNET_PKT_FRAGMENT.

Partial transmitted message on MOST Ethernet Packet Channel.

Member Function Documentation

◆ calculateObjectSize()

DWORD Vector::BLF::MostEthernetPktFragment::calculateObjectSize ( ) const
overridevirtual

Calculates the objectSize

Returns
object size

Reimplemented from Vector::BLF::ObjectHeaderBase.

◆ read()

void Vector::BLF::MostEthernetPktFragment::read ( AbstractFile is)
overridevirtual

Read the data of this object

Parameters
isinput stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

◆ write()

void Vector::BLF::MostEthernetPktFragment::write ( AbstractFile os)
overridevirtual

Write the data of this object

Parameters
osoutput stream

Reimplemented from Vector::BLF::ObjectHeaderBase.

Member Data Documentation

◆ ackNack

BYTE Vector::BLF::MostEthernetPktFragment::ackNack {}

acknowledge code

AckNack holds the transmit status of a control message (see Transmit Status Register of OS8104 for MOST25).

  • Bit 0: Meaning:
    • 1: no response (NoResp) Restriction:
    • only for Dir = Tx or spy messages
  • Bit 1: Meaning:
    • 1: valid receipt (Valid) Restriction:
    • only for Dir = Tx or spy messages
  • Bit 2: Meaning:
    • 1: CRC Error (CRCError) Restriction:
    • only for Dir = Tx or spy messages
  • Bit 3: Meaning:
    • 1: receive buffer full (RxBufFull) Restriction:
    • only for Dir = Tx or spy messages
  • Bit 4: Meaning:
    • 1: acknowledged (Ack) Restriction:
    • only for Dir = Tx or spy messages (always set to 1 for Rx messages in node mode)
  • Bit 5: Meaning:
    • 1: negative acknowledge (NAck) Restriction:
    • only for Dir = Tx or spy messages

◆ cAck

BYTE Vector::BLF::MostEthernetPktFragment::cAck {}

CRC acknowledge from the packet receiver(s) to the packet transmitter.

CRC acknowledge from the packet receiver(s) to the packet transmitter

  • 0x00: No Response
  • 0x01: CRC error
  • 0x04: OK

◆ channel

WORD Vector::BLF::MostEthernetPktFragment::channel {}

application channel

Application channel

◆ crc

DWORD Vector::BLF::MostEthernetPktFragment::crc {}

Cyclic Redundancy Check.

Cyclic Redundancy Check

◆ dataLen

DWORD Vector::BLF::MostEthernetPktFragment::dataLen {}

number of transmitted user data bytes

Number of transmitted user data bytes. These bytes were counted on bus.

Note: The number of bytes saved in this event is stored in firstDataLen.

◆ dataLenAnnounced

DWORD Vector::BLF::MostEthernetPktFragment::dataLenAnnounced {}

announced user data length at the start of the transmission

Announced user data length at start of transmission. In some cases (e.g. sending to an invalid target address, receive buffer full of target device) the transmission is terminated before all data bytes have been sent. Then the counted number of bytes on bus is less than the announced data length (dataLen < dataLenAnnonced). Due to rare and very specific bit errors (degrade of end termination byte) dataLen can also be greater than dataLenAnnonced.

◆ destMacAdr

ULONGLONG Vector::BLF::MostEthernetPktFragment::destMacAdr {}

48 bit target address

48 bit target address

◆ firstData

std::vector<uint8_t> Vector::BLF::MostEthernetPktFragment::firstData {}

variable data

Variable data

◆ firstDataLen

DWORD Vector::BLF::MostEthernetPktFragment::firstDataLen {}

number of bytes in firstData

Number of bytes stored in firstData (1524 max).

Note: In order to limit the size of this event not all counted bytes on bus will be stored in the payload of the logging event.

◆ pAck

BYTE Vector::BLF::MostEthernetPktFragment::pAck {}

a preemptive acknowledge code

Pre-emptive acknowledge code

  • 0x00: No Response
  • 0x01: Buffer full
  • 0x04: OK

◆ reservedMostEthernetPktFragment1

BYTE Vector::BLF::MostEthernetPktFragment::reservedMostEthernetPktFragment1 {}

reserved

◆ reservedMostEthernetPktFragment2

WORD Vector::BLF::MostEthernetPktFragment::reservedMostEthernetPktFragment2 {}

reserved

◆ reservedMostEthernetPktFragment3

DWORD Vector::BLF::MostEthernetPktFragment::reservedMostEthernetPktFragment3 {}

reserved

◆ sourceMacAdr

ULONGLONG Vector::BLF::MostEthernetPktFragment::sourceMacAdr {}

48 bit source address

48 bit source address

◆ validMask

DWORD Vector::BLF::MostEthernetPktFragment::validMask {}

bitfield indicating which members have valid data

If a bit in the mask is set, the corresponding data field has been seen on the bus.

  • Bit 0: 0x00000001: dataLenAnnounced
  • Bit 1: 0x00000002: sourceAdr
  • Bit 2: 0x00000004: destAdr
  • Bit 3: 0x00000008: ackNack
  • Bit 4: 0x00000010: pAck
  • Bit 5: 0x00000020: pIndex
  • Bit 6: 0x00000040: piority
  • Bit 7: 0x00000080: crc
  • Bit 8: 0x00000100: cAck
  • Bit 9: 0x00000200: sourceMacAdr
  • Bit 10: 0x00000400: destMacAdr
  • Bit 31: 0x80000000: 0: MOST150 fragment; 1: MOST50 fragment

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