Direct-BT v3.3.0-1-gc2d430c
Direct-BT - Direct Bluetooth Programming.
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 1234]
 Cjau::math::geom::AABBox2fAxis Aligned Bounding Box
 Cjau::math::geom::AABBox3fAxis Aligned Bounding Box
 Cieee11073::AbsoluteTimeDate / timestamp format
 Cdirect_bt::AdapterInfo
 CAddr48Bit
 Cjau::math::geom::plane::AffineTransformRepresents a affine 2x3 transformation matrix in column major order (memory layout)
 Cstd::allocator< T >STL class
 Cjau::codec::base::alphabetBase Alphabet Specification providing the alphabet for encode() and decode()
 Cjau::lang::alphabetBase Alphabet Specification providing the alphabet for token_fsm
 Cstd::atomic< T >STL class
 Cdirect_bt::AttPDUMsgHandles the Attribute Protocol (ATT) using Protocol Data Unit (PDU) encoded messages over L2CAP channel
 CBaseDBTClientServer
 Cdirect_bt::BDAddressAndTypeUnique Bluetooth EUI48 address and BDAddressType tuple
 Cjau::mp::BigIntArbitrary precision integer type
 CBooleanMgmtCBContext
 Cdirect_bt::BTGattCmdClass maps a GATT command and optionally its asynchronous response to a synchronous atomic operation
 Cdirect_bt::BTGattHandlerA thread safe GATT handler associated to one device via one L2CAP connection
 Cjau::call_on_release< UnaryFunction >Call on release allows the user to pass a function to be called at destruction of this instance
 Cjau::callocator< T >A simple allocator using POSIX C functions: ::malloc(), ::free() and ::realloc()
 Cjau::callocator< AttPrepWrite >
 Cjau::callocator< BTDeviceRef >
 Cjau::callocator< BTGattCharRef >
 Cjau::callocator< BTGattDescRef >
 Cjau::callocator< BTGattServiceRef >
 Cjau::callocator< DBGattCharRef >
 Cjau::callocator< DBGattDescRef >
 Cjau::callocator< DBGattServiceRef >
 Cjau::callocator< direct_bt::GattCharacteristicPropertySpec >
 Cjau::callocator< direct_bt::GattCharacteristicSpec >
 Cjau::callocator< GattCharacteristicPropertySpec >
 Cjau::callocator< GattCharacteristicSpec >
 Cjau::callocator< HCIConnectionRef >
 Cjau::callocator< Payload >
 Cjau::callocator< SMPIOCapability >
 Cjau::callocator< SMPKeyBinRef >
 Cjau::callocator< std::shared_ptr< const jau::uuid_t > >
 Cjau::callocator< std::shared_ptr< WhitelistElem > >
 Cjau::callocator< std::unique_ptr< const direct_bt::AttPDUMsg > >
 Cjau::callocator< std::unique_ptr< const direct_bt::SMPPDUMsg > >
 Cjau::callocator< std::unique_ptr< direct_bt::HCIEvent > >
 Cjau::callocator< std::unique_ptr< direct_bt::MgmtEvent > >
 Cjau::callocator< std::weak_ptr< BTDevice > >
 Cjau::callocator< uint16_t >
 Cjau::callocator< uint8_t >
 Cjau::callocator< Value_type >
 Cjau::callocator_sec< T, >A simple secure allocator for integral types using POSIX C functions: ::malloc() and ::free()
 Cdirect_bt::ConnectionInfoMgmt_addr_info { EUI48, uint8_t type }, int8_t rssi, int8_t tx_power, int8_t max_tx_power;
 CT::container_memmove_compliant
 Ccopy_context_t
 Cjau::cow_darray< Value_type, Size_type, Alloc_type, use_memmove, use_secmem >Implementation of a Copy-On-Write (CoW) using jau::darray as the underlying storage, exposing lock-free read operations using SC-DRF atomic synchronization
 Cjau::cow_darray< ChangedAdapterSetCallback >
 Cjau::cow_darray< GattCharListenerPair, size_type >
 Cjau::cow_darray< HCISMPMsgCallback >
 Cjau::cow_darray< ListenerRef, size_type >
 Cjau::cow_darray< NativeGattCharListenerRef, size_type >
 Cjau::cow_darray< SMPSecurityReqCallback, size_type >
 Cjau::cow_darray< StatusListenerPair, size_type >
 Cjau::cow_darray< std::shared_ptr< BTAdapter >, size_type >
 Cjau::cow_ro_iterator< Storage_type, Storage_ref_type, CoW_container >Implementation of a Copy-On-Write (CoW) read-onlu iterator over immutable value_type storage
 Cjau::cow_rw_iterator< Storage_type, Storage_ref_type, CoW_container >Implementation of a Copy-On-Write (CoW) read-write iterator over mutable value_type storage
 Cjau::cow_vector< Value_type, Alloc_type >Implementation of a Copy-On-Write (CoW) using std::vector as the underlying storage, exposing lock-free read operations using SC-DRF atomic synchronization
 Cjau::cpu::CpuInfoSingleton CpuInfo caching all jau::cpu information
 Cjau::darray< Value_type, Size_type, Alloc_type, use_memmove, use_secmem >Implementation of a dynamic linear array storage, aka vector
 Cjau::darray< AttPrepWrite >
 Cjau::darray< BTDeviceRef, size_type >
 Cjau::darray< BTGattCharRef >
 Cjau::darray< BTGattDescRef >
 Cjau::darray< BTGattServiceRef, size_type >
 Cjau::darray< DBGattCharRef >
 Cjau::darray< DBGattDescRef >
 Cjau::darray< DBGattServiceRef, size_type >
 Cjau::darray< direct_bt::GattCharacteristicPropertySpec >
 Cjau::darray< direct_bt::GattCharacteristicSpec >
 Cjau::darray< GattCharacteristicPropertySpec >
 Cjau::darray< GattCharacteristicSpec >
 Cjau::darray< HCIConnectionRef, size_type >
 Cjau::darray< Payload >
 Cjau::darray< SMPIOCapability >
 Cjau::darray< SMPKeyBinRef, size_type >
 Cjau::darray< std::shared_ptr< const jau::uuid_t >, size_type >
 Cjau::darray< std::shared_ptr< WhitelistElem > >
 Cjau::darray< std::weak_ptr< BTDevice >, size_type >
 Cjau::darray< uint16_t >
 Cjau::darray< Value_type, jau::nsize_t, jau::callocator< Value_type >, std::is_trivially_copyable_v< Value_type >||is_container_memmove_compliant_v< Value_type >, is_enforcing_secmem_v< Value_type > >
 CDataType01
 CDataType02_Memmove_Secmem
 CDBTClientServer1xTesting a full Bluetooth server and client lifecycle of operations, requiring two BT adapter:
 CDBTConstantsAuthor: Sven Gothel sgoth.nosp@m.el@j.nosp@m.ausof.nosp@m.t.co.nosp@m.m Copyright (c) 2022 Gothel Software e.K
 CDBTEndpoint
 CDBTUtilsAuthor: Sven Gothel sgoth.nosp@m.el@j.nosp@m.ausof.nosp@m.t.co.nosp@m.m Copyright (c) 2022 Gothel Software e.K
 Cjau::func::delegate_t< R, A >Delegated target function object, providing a fast path target function invocation
 Cjau::func::delegate_t< R, A... >
 Cdirect_bt::BTDeviceRegistry::DeviceIDSpecifies unique device identities, using BDAddressAndType as key
 Cdirect_bt::BTDeviceRegistry::DeviceQuerySpecifies devices queries to act upon
 Cjau::fs::dir_itemRepresenting a directory item split into dirname() and basename()
 Cjau::os::DynamicLinkerLow level secure dynamic linker access
 Cjau::os::DynamicLookupInterface callers may use ProcAddressHelper's reset helper method to install function pointers into a ProcAddressTable
 Cdirect_bt::EInfoReportCollection of 'Extended Advertising Data' (EAD), 'Advertising Data' (AD) or 'Extended Inquiry Response' (EIR) information
 Cdirect_bt::AttFindInfoRsp::ElementElement := { uint16_t handle, UUID value }, with a UUID of UUID16 or UUID128
 Cdirect_bt::AttReadByGroupTypeRsp::ElementElement := { uint16_t startHandle, uint16_t endHandle, uint8_t value[value-size] }
 Cdirect_bt::AttReadByTypeRsp::ElementElement := { uint16_t handle, uint8_t value[value-size] }
 CT::enforce_secmem
 Cdirect_bt::BTSecurityRegistry::Entry
 Cstd::error_categorySTL class
 Cjau::EUI48A packed 48 bit EUI-48 identifier, formerly known as MAC-48 or simply network device MAC address (Media Access Control address)
 Cjau::EUI48SubA 48 bit EUI-48 sub-identifier, see EUI48
 Cstd::exceptionSTL class
 Cjau::ExceptionBase
 Cstd::false_type
 Cjau::fs::file_statsPlatform agnostic representation of POSIX ::lstat() and ::stat() for a given pathname
 Cjau::float_bytes< bytesize >
 Cjau::float_bytes< sizeof(double)>
 Cjau::float_bytes< sizeof(float)>
 Cjau::float_bytes< sizeof(long double)>
 Cieee11073::FloatTypesIEEE11073 Float Data Types
 Cjau::math::geom::Frustum::FovDescFrustum description by fovhv and zNear, zFar
 Cjau::math::FovHVHalvesHorizontal and vertical field of view (FOV) halves, allowing a non-centered projection
 Cjau::fraction< Int_type, >Fraction template type using integral values, evaluated at runtime
 Cjau::fraction< int64_t >
 Cjau::fraction_timespecTimespec structure using int64_t for its components in analogy to struct timespec_t on 64-bit platforms
 Cjau::math::geom::FrustumProviding frustum planes derived by different inputs (P*MV, ..) used to classify objects
 Cjau::os::FuncAddrResolver
 Cjau::function< Signature >Class template jau::function is a general-purpose static-polymorphic function wrapper
 Cjau::function< bool(int)>
 Cjau::function< fraction_i64(Timer0_ref)>
 Cjau::function< R(A...)>Class template jau::function is a general-purpose static-polymorphic function wrapper
 Cjau::function< void()>
 Cjau::function< void(BTGattCharRef charDecl, const jau::TROOctets &char_value, const uint64_t timestamp)>
 Cjau::function< void(const MgmtEvent &)>
 Cjau::function< void(service_runner_ref)>
 Cdirect_bt::GattBatteryServiceSvcHttps://www.bluetooth.com/wp-content/uploads/Sitecore-Media-Library/Gatt/Xml/Services/org.bluetooth.service.battery_service.xml
 Cdirect_bt::GattCharacteristicPropertySpec
 CGattCharacteristicPropertySpec
 Cdirect_bt::GattCharacteristicSpec
 CGattCharacteristicSpec
 Cdirect_bt::GattClientCharacteristicConfigSpec
 CGattClientCharacteristicConfigSpec
 Cdirect_bt::GattDeviceInformationSvcDevice Information is a GATT service
 Cdirect_bt::GattGenericAccessSvcGeneric Access Service is a mandatory GATT service all peripherals are required to implement
 Cdirect_bt::GattPeriphalPreferredConnectionParametersPeripheral Preferred Connection Parameters is a GATT Characteristic
 Cdirect_bt::GattPnP_IDPnP ID is a GATT Characteristic
 Cdirect_bt::BTGattHandler::GattServerHandlerInternal handler implementation for given DBGattServer instance matching its DBGattServer::Mode
 Cdirect_bt::GattServiceCharacteristic
 CGattServiceCharacteristic
 Cdirect_bt::GattTemperatureMeasurementHttps://www.bluetooth.com/wp-content/uploads/Sitecore-Media-Library/Gatt/Xml/Characteristics/org.bluetooth.characteristic.temperature_measurement.xml
 Cjau::math::geom::Geom2fGeometric object
 Cstd::hash< Addr48Bit >
 Cstd::hash< DataType01 >
 Cstd::hash< direct_bt::BDAddressAndType >
 Cstd::hash< direct_bt::BTDeviceRegistry::DeviceID >
 Cstd::hash< jau::EUI48 >
 Cstd::hash< jau::EUI48Sub >
 Chci_rp_status
 Cdirect_bt::HCICommRead/Write HCI communication channel
 Cdirect_bt::HCIHandlerA thread safe singleton handler of the HCI control channel to one controller (BT adapter)
 Cdirect_bt::HCILocalVersion
 Cdirect_bt::HCIPacketBT Core Spec v5.2: Vol 4, Part E HCI: 5.4 Exchange of HCI-specific information
 Cdirect_bt::HCIStructCmdCompleteEvtWrap< hcistruct >Generic HCIEvent wrapper for any HCI IOCTL 'command complete' alike event struct having a HCIStatusCode uint8_t status field
 Cdirect_bt::HCIStructCmdCompleteMetaEvtWrap< hcistruct >Generic HCIMetaEvent wrapper for any HCI IOCTL 'command complete' alike meta event struct having a HCIStatusCode uint8_t status field
 CInteger
 Cstd::integral_constant
 Cjau::io::iostate_funcSupporting std::basic_ios's iostate functionality for all ByteInStream implementations
 Cjau::jni::JavaAnonPure virtual JavaAnon, hiding Java JNI details from API, to be implemented by JNI module
 Cjau::jni::JavaUplinkSharing the anonymous Java object (JavaAnon), i.e
 Cjau::jni::JNICriticalArray< T, U >
 Cjau::jni::JNIEnvContainer
 Cjau::jni::JNIGlobalRef
 Cdirect_bt::HCIACLData::l2cap_frameRepresenting ACL Datas' L2CAP Frame
 Cdirect_bt::l2cap_hdr
 Cdirect_bt::L2CAPCommL2CAP client/server socket abstract base class to listen for connecting remote devices
 Cjau::latchInspired by std::latch of C++20
 Cjau::math::geom::LineSeg3f
 Cdirect_bt::DBGattServer::ListenerListener to remote master device's operations on the local GATT-Server
 Cdirect_bt::ManufactureSpecificData
 Cjau::CT::Mask< T, >A Mask type used for constant-time operations
 Cjau::math::Matrix4< Value_type, >Basic 4x4 value_type matrix implementation using fields for intensive use-cases (host operations)
 Cjau::math::Matrix4< value_type, std::is_floating_point_v< Value_type > >
 Cjau::math::util::MatrixStack< Value_type, >A Matrix stack of compounds, each consisting of 16 * T
 Cjau::math::util::MatrixStack< value_type >
 Cdirect_bt::MgmtAdapterEventCallback
 Cdirect_bt::MgmtConnParamUsed in MgmtLoadConnParamCmd and MgmtEvtNewConnectionParam
 Cdirect_bt::MgmtDefaultParamUsed in MgmtReadDefaultSysParamCmd and MgmtSetDefaultConnParamCmd
 Cdirect_bt::MgmtIdentityResolvingKeyUsed for MgmtLoadIdentityResolvingKeyCmd and MgmtEvtNewIdentityResolvingKey
 Cdirect_bt::MgmtLinkKeyInfoUsed for MgmtLoadLinkKeyCmd and MgmtEvtNewLinkKey
 Cdirect_bt::MgmtLongTermKeyUsed for MgmtLoadLongTermKeyCmd and MgmtEvtNewLongTermKey
 Cdirect_bt::MgmtMsg
 Cdirect_bt::MgmtSignatureResolvingKeyUsed for MgmtEvtNewSignatureResolvingKey
 Cjau::fs::mount_ctx
 Cdirect_bt::NameAndShortName
 CNamedPayloadListDefault< Payload >
 CNamedPayloadListMemMove< Payload >
 CNamedSharedPayloadListDefault< Payload >
 CNamedSharedPayloadListMemMove< Payload >
 Cdirect_bt::BTGattHandler::NativeGattCharListenerNative GATT characteristic event listener for notification and indication events received from a GATT server
 CNot
 COne
 Cjau::packed_t< T >Support aligned memory transfer from and to potentially unaligned memory
 Cjau::math::geom::Frustum::PlanePlane equation := dot(n, x - p) = 0 -> Ax + By + Cz + d == 0
 Cjau::math::util::PMVMatrix4< Value_type, >PMVMatrix4 implements the basic computer graphics Matrix4 pack using projection (P), modelview (Mv) and texture (T) Matrix4 operations
 Cjau::math::Quaternion< Value_type, >Quaternion implementation supporting Gimbal-Lock free rotations
 Cjau::math::Ray2F< T, >Simple compound denoting a ray
 Cjau::math::Ray3F< T, >Simple compound denoting a ray
 Cjau::callocator< T >::rebind< U >
 Cjau::callocator_sec< T, >::rebind< U >
 Cjau::counting_allocator< T >::rebind< U >
 Cjau::counting_callocator< T >::rebind< U >
 Cjau::math::RectI< Value_type, >Rectangle with x, y, width and height integer components
 Cjau::ringbuffer< Value_type, Size_type, use_memmove, use_memcpy, use_secmem >Ring buffer implementation, a.k.a circular buffer, exposing lock-free get*(..) and put*(..) methods
 Cjau::ringbuffer< std::unique_ptr< const direct_bt::AttPDUMsg >, jau::nsize_t >
 Cjau::ringbuffer< std::unique_ptr< const direct_bt::SMPPDUMsg >, jau::nsize_t >
 Cjau::ringbuffer< std::unique_ptr< direct_bt::HCIEvent >, jau::nsize_t >
 Cjau::ringbuffer< std::unique_ptr< direct_bt::MgmtEvent >, jau::nsize_t >
 Cjau::ringbuffer< uint8_t, size_t >
 Cjau::root_environmentBase jau environment class, merely to tag all environment settings by inheritance and hence documentation
 Cjau::os::RuntimeOSInfo
 Cjau::sc_atomic_criticalThis class provides a RAII-style Sequentially Consistent (SC) data race free (DRF) critical block
 Cdirect_bt::BTGattHandler::NativeGattCharListener::Section
 Cjau::service_runnerService runner, a reusable dedicated thread performing custom user services
 Cjau::jni::shared_ptr_ref< T >A std::shared_ptr<T> storage instance to be copied from and released into a java object's long nativeInstance field
 Cjau::simple_timerA simple timer for timeout and interval applications, using one dedicated service_runner thread per instance
 Cjau::math::util::SimpleStack< Value_type, Element_size, >A simple stack of compounds, each consisting of element_size * T
 Cjau::sint_bytes< bytesize >
 Cjau::sint_bytes< 4 >
 Cjau::sint_bytes< 8 >
 Cdirect_bt::SMPHandlerA thread safe SMP handler associated to one device via one L2CAP connection
 Cdirect_bt::SMPIdentityResolvingKeySMP Identity Resolving Key, used for platform agnostic persistence
 Cdirect_bt::SMPKeyBinStorage for SMP keys including required connection parameter per local adapter and remote device
 Cdirect_bt::SMPLinkKeyLocal SMP Link Key, used for platform agnostic persistence, mapping to platform specific MgmtLoadLinkKeyCmd and MgmtEvtNewLinkKey
 Cdirect_bt::SMPLongTermKeySMP Long Term Key, used for platform agnostic persistence
 Cdirect_bt::SMPPDUMsgHandles the Security Manager Protocol (SMP) using Protocol Data Unit (PDU) encoded messages over L2CAP channel
 Cdirect_bt::SMPSignatureResolvingKeySMP Signature Resolving Key, used for platform agnostic persistence
 Cjau::math::util::SyncBufferConvenient tuple of a sync_action_t and data buffer
 Cjau::func::target_t< R, A >Func::target_t pure-virtual interface for jau::function
 Cjau::func::target_t< R, A... >
 CTestByteStream01
 CTestFileUtilBase
 CTestFunction01
 CTestIOStream01
 CTestLatch01
 CTestMemModelSCDRF00Test_mm_sc_drf_00: Testing SC-DRF non-atomic global read and write within an atomic acquire/release critical block
 CTestMemModelSCDRF01Test_mm_sc_drf_01: Testing SC-DRF non-atomic global read and write within a locked mutex critical block
 CTestRingbuffer11
 CTestRingbuffer12
 CTestRingbuffer13
 CTestRingbuffer_A< Integral_type, Value_type, Size_type, exp_memmove, exp_memcpy, exp_secmem, use_memmove, use_memcpy, use_secmem >
 CTestServiceRunner01
 CTestSimpleTimer01
 Cjau::TOctetSliceTransient endian aware octet data slice, i.e
 Cjau::TROOctetsTransient read only and endian aware octet data, i.e
 Cstd::true_type
 Cjau::type_infoGeneric type information using either Runtime type information (RTTI) or Compile time type information (CTTI)
 Cjau::type_name_cue< T >Helper, allowing simple access and provision of a typename string representation at compile time, see jau::type_cue for usage
 Cjau::uint128dp_tA 128-bit packed uint8_t data array
 Cjau::uint192dp_tA 196-bit packed uint8_t data array
 Cjau::uint256dp_tA 256-bit packed uint8_t data array
 Cjau::uint_bytes< bytesize >
 Cjau::uint_bytes< 4 >
 Cjau::uint_bytes< 8 >
 Cjau::io::url_header_syncSynchronization for URL header completion as used by asynchronous read_url_stream()
 Cjau::os::UserInfoUser account information of the underlying OS
 Cjau::uuid_t
 Cjau::math::Vector2F< Value_type, >2D vector using two value_type components
 Cjau::math::Vector2F< float >
 Cjau::math::Vector2F< T >
 Cjau::math::Vector2I< Value_type, >2D vector using two integer components
 Cjau::math::Vector3F< Value_type, >3D vector using three value_type components
 Cjau::math::Vector3F< float >
 Cjau::math::Vector3F< T >
 Cjau::math::Vector4F< Value_type, >4D vector using four value_type components
 Cvisitor_stats
 CTestFunction01::y_combinator_lambda< R, L, A >
 Cjau::func::ylambda_target_t< R, L, A >Func::ylambda_target_t is a Y combinator and deducing this implementation for lambda closures usable for recursive algorithms