Direct-BT v3.3.0-1-gc2d430c
Direct-BT - Direct Bluetooth Programming.
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
direct_bt::MgmtEvtCmdComplete Class Reference

#include <MgmtTypes.hpp>

Inheritance diagram for direct_bt::MgmtEvtCmdComplete:
Collaboration diagram for direct_bt::MgmtEvtCmdComplete:

Public Member Functions

 MgmtEvtCmdComplete (const uint8_t *buffer, const jau::nsize_t buffer_len)
 
 ~MgmtEvtCmdComplete () noexcept override=default
 
MgmtCommand::Opcode getCmdOpcode () const noexcept
 
bool getCurrentSettings (AdapterSetting &current_settings) const noexcept
 Returns AdapterSetting if getCmdOpcode() expects a single 4-octet AdapterSetting and hence getDataSize() == 4. More...
 
const uint8_t * getData () const noexcept override
 
jau::nsize_t getDataOffset () const noexcept override
 
jau::nsize_t getDataSize () const noexcept override
 
MgmtStatus getStatus () const noexcept
 
std::shared_ptr< ConnectionInfotoConnectionInfo () const noexcept
 Convert this instance into ConnectionInfo if getCmdOpcode() == GET_CONN_INFO, getStatus() == SUCCESS and size allows, otherwise returns nullptr. More...
 
std::shared_ptr< NameAndShortNametoNameAndShortName () const noexcept
 Convert this instance into ConnectionInfo if getCmdOpcode() == SET_LOCAL_NAME, getStatus() == SUCCESS and size allows, otherwise returns nullptr. More...
 
bool validate (const MgmtCommand &req) const noexcept override
 
- Public Member Functions inherited from direct_bt::MgmtEvent
 MgmtEvent (const Opcode opc, const uint16_t dev_id, const uint16_t param_size, const uint8_t *param)
 
 MgmtEvent (const Opcode opc, const uint16_t dev_id, const uint16_t param_size=0)
 
 MgmtEvent (const uint8_t *buffer, const jau::nsize_t buffer_len, const jau::nsize_t exp_param_size)
 Persistent memory, w/ ownership . More...
 
 ~MgmtEvent () noexcept override=default
 
virtual const uint8_t * getData () const noexcept
 
virtual jau::nsize_t getDataOffset () const noexcept
 
virtual jau::nsize_t getDataSize () const noexcept
 
Opcode getOpcode () const noexcept
 
jau::nsize_t getTotalSize () const noexcept
 
std::string toString () const noexcept override
 
virtual bool validate (const MgmtCommand &req) const noexcept
 
- Public Member Functions inherited from direct_bt::MgmtMsg
 MgmtMsg (const uint16_t opc, const uint16_t dev_id, const uint16_t param_size)
 
 MgmtMsg (const uint8_t *buffer, const jau::nsize_t buffer_len)
 
virtual ~MgmtMsg ()=default
 
uint16_t getDevID () const noexcept
 
uint16_t getIntOpcode () const noexcept
 
uint16_t getParamSize () const noexcept
 
jau::TROOctetsgetPDU () noexcept
 Return the underlying octets read only. More...
 
uint64_t getTimestamp () const noexcept
 
jau::nsize_t getTotalSize () const noexcept
 
virtual std::string toString () const noexcept=0
 

Static Public Member Functions

static MgmtCommand::Opcode getCmdOpcode (const uint8_t *data)
 
static MgmtStatus getStatus (const uint8_t *data)
 
- Static Public Member Functions inherited from direct_bt::MgmtEvent
static MgmtEvent::Opcode getOpcode (const uint8_t *buffer)
 
static std::string getOpcodeString (const Opcode opc) noexcept
 
static std::unique_ptr< MgmtEventgetSpecialized (const uint8_t *buffer, jau::nsize_t const buffer_size) noexcept
 Return a newly created specialized instance pointer to base class. More...
 
static constexpr uint16_t number (const Opcode rhs) noexcept
 
- Static Public Member Functions inherited from direct_bt::MgmtMsg
template<class T >
static T * clone (const T &source) noexcept
 Clone template for convenience, based on derived class's copy-constructor. More...
 
static uint16_t getDevID (const uint8_t *data)
 
static uint16_t getIntOpcode (const uint8_t *buffer)
 

Protected Member Functions

 MgmtEvtCmdComplete (const uint8_t *buffer, const jau::nsize_t buffer_len, const jau::nsize_t exp_param_size)
 
std::string baseString () const noexcept override
 
- Protected Member Functions inherited from direct_bt::MgmtEvent
std::string baseString () const noexcept override
 
std::string valueString () const noexcept override
 
virtual std::string baseString () const noexcept
 
virtual std::string valueString () const noexcept=0
 

Additional Inherited Members

- Public Types inherited from direct_bt::MgmtEvent
enum class  Opcode : uint16_t {
  INVALID = 0x0000 , CMD_COMPLETE = 0x0001 , CMD_STATUS = 0x0002 , CONTROLLER_ERROR = 0x0003 ,
  INDEX_ADDED = 0x0004 , INDEX_REMOVED = 0x0005 , NEW_SETTINGS = 0x0006 , CLASS_OF_DEV_CHANGED = 0x0007 ,
  LOCAL_NAME_CHANGED = 0x0008 , NEW_LINK_KEY = 0x0009 , NEW_LONG_TERM_KEY = 0x000A , DEVICE_CONNECTED = 0x000B ,
  DEVICE_DISCONNECTED = 0x000C , CONNECT_FAILED = 0x000D , PIN_CODE_REQUEST = 0x000E , USER_CONFIRM_REQUEST = 0x000F ,
  USER_PASSKEY_REQUEST = 0x0010 , AUTH_FAILED = 0x0011 , DEVICE_FOUND = 0x0012 , DISCOVERING = 0x0013 ,
  DEVICE_BLOCKED = 0x0014 , DEVICE_UNBLOCKED = 0x0015 , DEVICE_UNPAIRED = 0x0016 , PASSKEY_NOTIFY = 0x0017 ,
  NEW_IRK = 0x0018 , NEW_CSRK = 0x0019 , DEVICE_WHITELIST_ADDED = 0x001A , DEVICE_WHITELIST_REMOVED = 0x001B ,
  NEW_CONN_PARAM = 0x001C , UNCONF_INDEX_ADDED = 0x001D , UNCONF_INDEX_REMOVED = 0x001E , NEW_CONFIG_OPTIONS = 0x001F ,
  EXT_INDEX_ADDED = 0x0020 , EXT_INDEX_REMOVED = 0x0021 , LOCAL_OOB_DATA_UPDATED = 0x0022 , ADVERTISING_ADDED = 0x0023 ,
  ADVERTISING_REMOVED = 0x0024 , EXT_INFO_CHANGED = 0x0025 , PHY_CONFIGURATION_CHANGED = 0x0026 , EXP_FEATURE_CHANGED = 0x0027 ,
  DEVICE_FLAGS_CHANGED = 0x002a , ADV_MONITOR_ADDED = 0x002b , ADV_MONITOR_REMOVED = 0x002c , PAIR_DEVICE_COMPLETE = 0x002d ,
  HCI_ENC_CHANGED = 0x002e , HCI_ENC_KEY_REFRESH_COMPLETE = 0x002f , HCI_LE_REMOTE_FEATURES = 0x0030 , HCI_LE_PHY_UPDATE_COMPLETE = 0x0031 ,
  HCI_LE_LTK_REQUEST = 0x0032 , HCI_LE_LTK_REPLY_ACK = 0x0033 , HCI_LE_LTK_REPLY_REJ = 0x0034 , HCI_LE_ENABLE_ENC = 0x0035 ,
  MGMT_EVENT_TYPE_COUNT = 0x0036
}
 
- Static Protected Member Functions inherited from direct_bt::MgmtEvent
static void checkOpcode (const Opcode has, const Opcode exp)
 
static void checkOpcode (const Opcode has, const Opcode min, const Opcode max)
 
- Protected Attributes inherited from direct_bt::MgmtMsg
jau::POctets pdu
 
uint64_t ts_creation
 

Detailed Description

Definition at line 1576 of file MgmtTypes.hpp.

Constructor & Destructor Documentation

◆ MgmtEvtCmdComplete() [1/2]

direct_bt::MgmtEvtCmdComplete::MgmtEvtCmdComplete ( const uint8_t *  buffer,
const jau::nsize_t  buffer_len,
const jau::nsize_t  exp_param_size 
)
inlineprotected

Definition at line 1584 of file MgmtTypes.hpp.

◆ MgmtEvtCmdComplete() [2/2]

direct_bt::MgmtEvtCmdComplete::MgmtEvtCmdComplete ( const uint8_t *  buffer,
const jau::nsize_t  buffer_len 
)
inline

Definition at line 1599 of file MgmtTypes.hpp.

◆ ~MgmtEvtCmdComplete()

direct_bt::MgmtEvtCmdComplete::~MgmtEvtCmdComplete ( )
overridedefaultnoexcept

Member Function Documentation

◆ baseString()

std::string direct_bt::MgmtEvtCmdComplete::baseString ( ) const
inlineoverrideprotectedvirtualnoexcept

Reimplemented from direct_bt::MgmtEvent.

Definition at line 1579 of file MgmtTypes.hpp.

◆ getCmdOpcode() [1/2]

static MgmtCommand::Opcode direct_bt::MgmtEvtCmdComplete::getCmdOpcode ( const uint8_t *  data)
inlinestatic

Definition at line 1592 of file MgmtTypes.hpp.

◆ getStatus() [1/2]

static MgmtStatus direct_bt::MgmtEvtCmdComplete::getStatus ( const uint8_t *  data)
inlinestatic

Definition at line 1595 of file MgmtTypes.hpp.

Here is the caller graph for this function:

◆ getCmdOpcode() [2/2]

MgmtCommand::Opcode direct_bt::MgmtEvtCmdComplete::getCmdOpcode ( ) const
inlinenoexcept

Definition at line 1607 of file MgmtTypes.hpp.

Here is the caller graph for this function:

◆ getStatus() [2/2]

MgmtStatus direct_bt::MgmtEvtCmdComplete::getStatus ( ) const
inlinenoexcept

Definition at line 1608 of file MgmtTypes.hpp.

Here is the caller graph for this function:

◆ getDataOffset()

jau::nsize_t direct_bt::MgmtEvtCmdComplete::getDataOffset ( ) const
inlineoverridevirtualnoexcept

Reimplemented from direct_bt::MgmtEvent.

Definition at line 1610 of file MgmtTypes.hpp.

◆ getDataSize()

jau::nsize_t direct_bt::MgmtEvtCmdComplete::getDataSize ( ) const
inlineoverridevirtualnoexcept

Reimplemented from direct_bt::MgmtEvent.

Definition at line 1611 of file MgmtTypes.hpp.

Here is the caller graph for this function:

◆ getData()

const uint8_t * direct_bt::MgmtEvtCmdComplete::getData ( ) const
inlineoverridevirtualnoexcept

Reimplemented from direct_bt::MgmtEvent.

Definition at line 1612 of file MgmtTypes.hpp.

Here is the caller graph for this function:

◆ validate()

bool direct_bt::MgmtEvtCmdComplete::validate ( const MgmtCommand req) const
inlineoverridevirtualnoexcept

Reimplemented from direct_bt::MgmtEvent.

Definition at line 1614 of file MgmtTypes.hpp.

◆ getCurrentSettings()

bool MgmtEvtCmdComplete::getCurrentSettings ( AdapterSetting current_settings) const
noexcept

Returns AdapterSetting if getCmdOpcode() expects a single 4-octet AdapterSetting and hence getDataSize() == 4.

Definition at line 482 of file MgmtTypes.cpp.

◆ toConnectionInfo()

std::shared_ptr< ConnectionInfo > MgmtEvtCmdComplete::toConnectionInfo ( ) const
noexcept

Convert this instance into ConnectionInfo if getCmdOpcode() == GET_CONN_INFO, getStatus() == SUCCESS and size allows, otherwise returns nullptr.

Definition at line 524 of file MgmtTypes.cpp.

Here is the caller graph for this function:

◆ toNameAndShortName()

std::shared_ptr< NameAndShortName > MgmtEvtCmdComplete::toNameAndShortName ( ) const
noexcept

Convert this instance into ConnectionInfo if getCmdOpcode() == SET_LOCAL_NAME, getStatus() == SUCCESS and size allows, otherwise returns nullptr.

Definition at line 553 of file MgmtTypes.cpp.

Here is the caller graph for this function:

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