Vector::BL...50AllocTab(3)

πŸ“¦ version 2.4.2, in arch rolling

πŸ’… Vector::BL...50AllocTab(3) πŸ’…

okay so this is the Library Functions Manual page for Vector::BL...50AllocTab(3), and the source/version vibe is Vector BLF. It's giving very specific C++ class lore, and we're keeping every detail, no cap. 🫢

✨ NAME ✨

Vector::BLF::Most150AllocTab β€” MOST_150_ALLOCTAB. That's the name, bestie. periodt. πŸ’…

πŸ¦‹ SYNOPSIS πŸ¦‹

#include <Most150AllocTab.h>

Inherits Vector::BLF::ObjectHeader2. main character energy: this class is a child of ObjectHeader2, fr fr.

Public Member Functions

  • void read (AbstractFile &is) override β€” reads the data of this object, details down below πŸ‘‡
  • void write (AbstractFile &os) override β€” writes the data of this object, details down below πŸ‘‡
  • uint32_t calculateObjectSize () const override β€” calculates the objectSize, details down below πŸ‘‡

Public Member Functions inherited from Vector::BLF::ObjectHeader2

  • ObjectHeader2 (const ObjectType objectType)
  • 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

Public Attributes

  • uint16_t channel {} β€” application channel
  • uint16_t eventModeFlags {} β€” determines the data layout
  • uint16_t freeBytes {} β€” number of free bytes after the operation
  • uint16_t length {} β€” number of bytes in tableData
  • uint64_t reservedMost150AllocTab {}
  • std::vector< uint8_t > tableData {}

Public Attributes inherited from Vector::BLF::ObjectHeader2

  • uint32_t objectFlags {ObjectFlags::TimeOneNans} β€” object flags
  • uint8_t timeStampStatus {} β€” time stamp status
  • uint8_t reservedObjectHeader {0}
  • uint16_t objectVersion {0} β€” object specific version
  • uint64_t objectTimeStamp {0} β€” object timestamp
  • uint64_t originalTimeStamp {0} β€” original 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::ObjectHeader2

  • enum ObjectFlags : uint32_t { TimeTenMics = 0x00000001, TimeOneNans = 0x00000002 }
  • enum TimeStampStatus : uint8_t { Orig = 0x01, SwHw = 0x02, User = 0x10 }

πŸ’– Detailed Description πŸ’–

MOST_150_ALLOCTAB.

Transports current state and changes of the MOST50/150 Allocation Table. iconic allocation-table behaviour, honestly. ✨

πŸŽ€ Member Function Documentation πŸŽ€

uint32_t Vector::BLF::Most150AllocTab::calculateObjectSize () const

[override], [virtual]

Calculates the objectSize.

Returns: object size.

Reimplemented from Vector::BLF::ObjectHeaderBase.

void Vector::BLF::Most150AllocTab::read (AbstractFile & is) [override], [virtual]

Read the data of this object.

Parameters: is input stream.

Reimplemented from Vector::BLF::ObjectHeaderBase.

void Vector::BLF::Most150AllocTab::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::Most150AllocTab::channel {}

application channel. Application channel. the channel said it twice, so you know it's serious.

uint16_t Vector::BLF::Most150AllocTab::eventModeFlags {}

determines the data layout. Determines the data layout (see below). πŸ‘€

uint16_t Vector::BLF::Most150AllocTab::freeBytes {}

number of free bytes after the operation. Number of free bytes after the operation.

  • Max. 116 with SBC=29 for MOST50
  • Max. 372 with SBC=93 for MOST150

uint16_t Vector::BLF::Most150AllocTab::length {}

number of bytes in tableData. Length of variable data in bytes. The value must be a multiple of 4. like, do not forget the multiple-of-4 rule, bestie.

uint64_t Vector::BLF::Most150AllocTab::reservedMost150AllocTab {}

reserved.

std::vector<uint8_t> Vector::BLF::Most150AllocTab::tableData {}

Allocation Table data.

The data layout tableData depends on bit 0 of eventModeFlags.

If bit 0 of eventModeFlags is clear tableData contains length/4 records with the following fields. (Other data layouts are not specified yet.)

  • Bit 0..12 (LabelIdent): Synchronous Connection Label
  • Bit 12..15 (LabelStatus):
    • 0: label unchanged
    • 4: label has been added (allocated)
    • 8: label has been removed (de-allocated) List removed labels at the end of the table! Listing of removed labels is optional.
  • Bit 16..31 (LabelWidth): Width of the label in bytes

Data layout:

if((eventModeFlags & 0x0001) == 0) layout A: SLLLWWWWSLLLWWWWSLLLWWWW... if((eventModeFlags & 0x0001) == 0x0001) layout B: SLLLWWWW< channels >SLLLWWWW< channels >SLLLWWWW< channels >...
  • S: status flags
    • 0x4: 1: new label (alloc)
    • 0x8: 1: this label has been removed (dealloc)
  • LLL: label number
  • WWWW: label width
  • < channels >: list of 16-bit channel numbers (size = label width)

πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for Vector BLF from the source code. autogenerated slay, honestly. 🫢


🏁 that's the page, bestie β€” source/version: Vector BLF, and the footer doesn't show a date, so we're not inventing one. Vector::BL...50AllocTab(3) out. πŸ’…βœ¨

πŸ“¦ where this page comes from