SNode.C
Loading...
Searching...
No Matches
net::l2::config::ConfigAddress< ConfigAddressTypeT > Class Template Reference

#include <ConfigAddress.h>

Inheritance diagram for net::l2::config::ConfigAddress< ConfigAddressTypeT >:
Collaboration diagram for net::l2::config::ConfigAddress< ConfigAddressTypeT >:

Public Member Functions

ConfigAddresssetSocketAddress (const SocketAddress &socketAddress)
ConfigAddresssetBtAddress (const std::string &btAddress)
std::string getBtAddress () const
ConfigAddresssetPsm (uint16_t psm)
uint16_t getPsm () const

Protected Member Functions

 ConfigAddress (net::config::ConfigInstance *instance, const std::string &addressOptionName, const std::string &addressOptionDescription)
ConfigAddresssetBtAddressRequired (bool required=true)
ConfigAddresssetPsmRequired (bool required=true)

Protected Attributes

CLI::Option * btAddressOpt = nullptr
CLI::Option * psmOpt = nullptr

Private Types

using Super = ConfigAddressTypeT<net::l2::SocketAddress>

Private Member Functions

SocketAddressinit () final

Detailed Description

template<template< typename SocketAddressT > typename ConfigAddressTypeT>
class net::l2::config::ConfigAddress< ConfigAddressTypeT >

Definition at line 77 of file ConfigAddress.h.

Member Typedef Documentation

◆ Super

template<template< typename SocketAddressT > typename ConfigAddressTypeT>
using net::l2::config::ConfigAddress< ConfigAddressTypeT >::Super = ConfigAddressTypeT<net::l2::SocketAddress>
private

Definition at line 79 of file ConfigAddress.h.

Constructor & Destructor Documentation

◆ ConfigAddress()

template<template< typename SocketAddress > typename ConfigAddressType>
net::l2::config::ConfigAddress< ConfigAddressType >::ConfigAddress ( net::config::ConfigInstance * instance,
const std::string & addressOptionName,
const std::string & addressOptionDescription )
explicitprotected

Definition at line 59 of file ConfigAddress.cpp.

64 "--host",
65 "Bluetooth address",
66 "xx:xx:xx:xx:xx:xx",
67 "00:00:00:00:00:00",
70 "--psm",
71 "Protocol service multiplexer",
72 "psm");
73 }
ConfigAddressTypeT< net::l2::SocketAddress > Super

References btAddressOpt, and psmOpt.

Member Function Documentation

◆ getBtAddress()

template<template< typename SocketAddress > typename ConfigAddressType>
std::string net::l2::config::ConfigAddress< ConfigAddressType >::getBtAddress ( ) const

Definition at line 104 of file ConfigAddress.cpp.

104 {
105 return btAddressOpt->as<std::string>();
106 }

References btAddressOpt.

◆ getPsm()

template<template< typename SocketAddress > typename ConfigAddressType>
uint16_t net::l2::config::ConfigAddress< ConfigAddressType >::getPsm ( ) const

Definition at line 121 of file ConfigAddress.cpp.

121 {
122 return psmOpt->as<uint16_t>();
123 }

References psmOpt.

◆ init()

template<template< typename SocketAddress > typename ConfigAddressType>
SocketAddress * net::l2::config::ConfigAddress< ConfigAddressType >::init ( )
finalprivate

Definition at line 76 of file ConfigAddress.cpp.

76 {
79
80 return socketAddress;
81 }
SocketAddress * init() final

References btAddressOpt, net::l2::SocketAddress::init(), psmOpt, and net::l2::SocketAddress::SocketAddress().

Here is the call graph for this function:

◆ setBtAddress()

template<template< typename SocketAddress > typename ConfigAddressType>
ConfigAddress< ConfigAddressType > & net::l2::config::ConfigAddress< ConfigAddressType >::setBtAddress ( const std::string & btAddress)

Definition at line 92 of file ConfigAddress.cpp.

92 {
94
96 ->default_val(btAddress)
97 ->clear();
99
100 return *this;
101 }

Referenced by setSocketAddress().

Here is the caller graph for this function:

◆ setBtAddressRequired()

template<template< typename SocketAddress > typename ConfigAddressType>
ConfigAddress< ConfigAddressType > & net::l2::config::ConfigAddress< ConfigAddressType >::setBtAddressRequired ( bool required = true)
protected

Definition at line 126 of file ConfigAddress.cpp.

126 {
128
129 return *this;
130 }

References btAddressOpt.

Referenced by net::l2::stream::config::ConfigSocketClient::ConfigSocketClient().

Here is the caller graph for this function:

◆ setPsm()

template<template< typename SocketAddress > typename ConfigAddressType>
ConfigAddress< ConfigAddressType > & net::l2::config::ConfigAddress< ConfigAddressType >::setPsm ( uint16_t psm)

Definition at line 109 of file ConfigAddress.cpp.

109 {
111
112 psmOpt //
113 ->default_val(psm)
114 ->clear();
115 Super::required(psmOpt, false);
116
117 return *this;
118 }

References psmOpt.

Referenced by setSocketAddress().

Here is the caller graph for this function:

◆ setPsmRequired()

template<template< typename SocketAddress > typename ConfigAddressType>
ConfigAddress< ConfigAddressType > & net::l2::config::ConfigAddress< ConfigAddressType >::setPsmRequired ( bool required = true)
protected

Definition at line 133 of file ConfigAddress.cpp.

133 {
135
136 return *this;
137 }

References psmOpt.

Referenced by net::l2::stream::config::ConfigSocketClient::ConfigSocketClient(), and net::l2::stream::config::ConfigSocketServer::ConfigSocketServer().

Here is the caller graph for this function:

◆ setSocketAddress()

template<template< typename SocketAddress > typename ConfigAddressType>
ConfigAddress< ConfigAddressType > & net::l2::config::ConfigAddress< ConfigAddressType >::setSocketAddress ( const SocketAddress & socketAddress)

Definition at line 84 of file ConfigAddress.cpp.

84 {
87
88 return *this;
89 }
ConfigAddress & setPsm(uint16_t psm)
ConfigAddress & setBtAddress(const std::string &btAddress)

References net::l2::SocketAddress::getBtAddress(), net::l2::SocketAddress::getPsm(), setBtAddress(), and setPsm().

Here is the call graph for this function:

Member Data Documentation

◆ btAddressOpt

template<template< typename SocketAddressT > typename ConfigAddressTypeT>
CLI::Option* net::l2::config::ConfigAddress< ConfigAddressTypeT >::btAddressOpt = nullptr
protected

Definition at line 102 of file ConfigAddress.h.

Referenced by ConfigAddress(), getBtAddress(), init(), and setBtAddressRequired().

◆ psmOpt

template<template< typename SocketAddressT > typename ConfigAddressTypeT>
CLI::Option* net::l2::config::ConfigAddress< ConfigAddressTypeT >::psmOpt = nullptr
protected

Definition at line 103 of file ConfigAddress.h.

Referenced by ConfigAddress(), getPsm(), init(), setPsm(), and setPsmRequired().


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