Direct-BT  2.3.1
Direct-BT - Direct Bluetooth Programming.
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
direct_bt::HCIACLData::l2cap_frame Struct Reference

Representing ACL Datas' L2CAP Frame. More...

#include <HCITypes.hpp>

Collaboration diagram for direct_bt::HCIACLData::l2cap_frame:

Public Types

enum  PBFlag : uint8_t { PBFlag::START_NON_AUTOFLUSH_HOST = 0b00, PBFlag::CONTINUING_FRAGMENT = 0b01, PBFlag::START_AUTOFLUSH = 0b10, PBFlag::COMPLETE_L2CAP_AUTOFLUSH = 0b11 }
 The Packet_Boundary_Flag. More...
 

Public Member Functions

constexpr bool isSMP () const noexcept
 
constexpr bool isGATT () const noexcept
 
std::string toString () const noexcept
 
std::string toString (const uint8_t *l2cap_data) const noexcept
 

Static Public Member Functions

static constexpr uint8_t number (const PBFlag v) noexcept
 
static std::string toString (const PBFlag v) noexcept
 

Public Attributes

const uint16_t handle
 The connection handle. More...
 
const PBFlag pb_flag
 
const uint8_t bc_flag
 The Broadcast_Flag. More...
 
const L2CAP_CID cid
 
const L2CAP_PSM psm
 
const uint16_t len
 

Detailed Description

Representing ACL Datas' L2CAP Frame.

BT Core Spec v5.2: Vol 4, Part E HCI: 5.4.2 HCI ACL Data packets

Definition at line 672 of file HCITypes.hpp.

Member Enumeration Documentation

◆ PBFlag

The Packet_Boundary_Flag.

BT Core Spec v5.2: Vol 4, Part E HCI: 5.4.2 HCI ACL Data packets

Enumerator
START_NON_AUTOFLUSH_HOST 

0b00: Start of a non-automatically-flushable PDU from Host to Controller.

Value 0b00.

CONTINUING_FRAGMENT 

0b01: Continuing fragment.

Value 0b01.

START_AUTOFLUSH 

0b10: Start of an automatically flushable PDU.

Value 0b10.

COMPLETE_L2CAP_AUTOFLUSH 

A complete L2CAP PDU.

Automatically flushable. Value 0b11.

Definition at line 679 of file HCITypes.hpp.

Member Function Documentation

◆ isGATT()

constexpr bool direct_bt::HCIACLData::l2cap_frame::isGATT ( ) const
inlineconstexprnoexcept

Definition at line 703 of file HCITypes.hpp.

◆ isSMP()

constexpr bool direct_bt::HCIACLData::l2cap_frame::isSMP ( ) const
inlineconstexprnoexcept

Definition at line 701 of file HCITypes.hpp.

◆ number()

static constexpr uint8_t direct_bt::HCIACLData::l2cap_frame::number ( const PBFlag  v)
inlinestaticconstexprnoexcept

Definition at line 689 of file HCITypes.hpp.

◆ toString() [1/3]

std::string direct_bt::HCIACLData::l2cap_frame::toString ( ) const
inlinenoexcept

Definition at line 705 of file HCITypes.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ toString() [2/3]

std::string direct_bt::HCIACLData::l2cap_frame::toString ( const PBFlag  v)
staticnoexcept

Definition at line 341 of file HCITypes.cpp.

Here is the caller graph for this function:

◆ toString() [3/3]

std::string direct_bt::HCIACLData::l2cap_frame::toString ( const uint8_t *  l2cap_data) const
inlinenoexcept

Definition at line 710 of file HCITypes.hpp.

Here is the call graph for this function:

Member Data Documentation

◆ bc_flag

const uint8_t direct_bt::HCIACLData::l2cap_frame::bc_flag

The Broadcast_Flag.

Definition at line 696 of file HCITypes.hpp.

◆ cid

const L2CAP_CID direct_bt::HCIACLData::l2cap_frame::cid

Definition at line 697 of file HCITypes.hpp.

◆ handle

const uint16_t direct_bt::HCIACLData::l2cap_frame::handle

The connection handle.

Definition at line 693 of file HCITypes.hpp.

◆ len

const uint16_t direct_bt::HCIACLData::l2cap_frame::len

Definition at line 699 of file HCITypes.hpp.

◆ pb_flag

const PBFlag direct_bt::HCIACLData::l2cap_frame::pb_flag

Definition at line 694 of file HCITypes.hpp.

◆ psm

const L2CAP_PSM direct_bt::HCIACLData::l2cap_frame::psm

Definition at line 698 of file HCITypes.hpp.


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