AlexaClientSDK  1.25.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
Public Member Functions | List of all members
alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface Class Referenceabstract

#include <BluetoothDeviceConnectionRuleInterface.h>

Inheritance diagram for alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface:
Inheritance graph
[legend]

Public Member Functions

virtual ~BluetoothDeviceConnectionRuleInterface ()=default
 
virtual bool shouldExplicitlyConnect ()=0
 
virtual bool shouldExplicitlyDisconnect ()=0
 
virtual std::set< std::shared_ptr< BluetoothDeviceInterface > > devicesToDisconnect (std::map< DeviceCategory, std::set< std::shared_ptr< BluetoothDeviceInterface >>> connectedDevices)=0
 
virtual std::set< DeviceCategorygetDeviceCategories ()=0
 
virtual std::set< std::string > getDependentProfiles ()=0
 

Detailed Description

This interface defines the connection rule the Bluetooth device needs to follow.

Constructor & Destructor Documentation

◆ ~BluetoothDeviceConnectionRuleInterface()

virtual alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface::~BluetoothDeviceConnectionRuleInterface ( )
virtualdefault

Destructor.

Member Function Documentation

◆ devicesToDisconnect()

virtual std::set<std::shared_ptr<BluetoothDeviceInterface> > alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface::devicesToDisconnect ( std::map< DeviceCategory, std::set< std::shared_ptr< BluetoothDeviceInterface >>>  connectedDevices)
pure virtual

The rule to get a set of Bluetooth devices needed to disconnect when the Bluetooth device connects.

Parameters
connectedDevicesthe current connected devices.
Returns
the set of Bluetooth devices needed to disconnect.

Implemented in alexaClientSDK::acsdkBluetooth::BasicDeviceConnectionRule, and alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::test::MockBluetoothDeviceConnectionRule.

◆ getDependentProfiles()

virtual std::set<std::string> alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface::getDependentProfiles ( )
pure virtual

Get the set of profile uuids which support those device categories defined in the connection rule.

Returns
The set of profile uuids.

Implemented in alexaClientSDK::acsdkBluetooth::BasicDeviceConnectionRule, and alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::test::MockBluetoothDeviceConnectionRule.

◆ getDeviceCategories()

virtual std::set<DeviceCategory> alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface::getDeviceCategories ( )
pure virtual

Get the set of device categories using the connection rule.

Returns
The set of DeviceCategory of the connection rule.

Implemented in alexaClientSDK::acsdkBluetooth::BasicDeviceConnectionRule, and alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::test::MockBluetoothDeviceConnectionRule.

◆ shouldExplicitlyConnect()

virtual bool alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface::shouldExplicitlyConnect ( )
pure virtual

The rule to explicitly connect the Bluetooth device after pair.

Returns
true if the caller needs to handle connect logic.

Implemented in alexaClientSDK::acsdkBluetooth::BasicDeviceConnectionRule, and alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::test::MockBluetoothDeviceConnectionRule.

◆ shouldExplicitlyDisconnect()

virtual bool alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface::shouldExplicitlyDisconnect ( )
pure virtual

The rule to explicitly disconnect the Bluetooth device before unpair.

Returns
true if the caller needs to handle disconnect logic.

Implemented in alexaClientSDK::acsdkBluetooth::BasicDeviceConnectionRule, and alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::test::MockBluetoothDeviceConnectionRule.


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

AlexaClientSDK 1.25.0 - Copyright 2016-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0