// Copyright 2016 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef DEVICE_BLUETOOTH_BLUETOOTH_REMOTE_GATT_DESCRIPTOR_H_ #define DEVICE_BLUETOOTH_BLUETOOTH_REMOTE_GATT_DESCRIPTOR_H_ #include <stdint.h> #include <optional> #include <vector> #include "base/functional/callback.h" #include "base/functional/callback_forward.h" #include "device/bluetooth/bluetooth_export.h" #include "device/bluetooth/bluetooth_gatt_descriptor.h" #include "device/bluetooth/public/cpp/bluetooth_uuid.h" namespace device { class BluetoothRemoteGattCharacteristic; // BluetoothRemoteGattDescriptor represents a remote GATT characteristic // descriptor. // // Note: We use virtual inheritance on the GATT descriptor since it will be // inherited by platform specific versions of the GATT descriptor classes also. // The platform specific remote GATT descriptor classes will inherit both this // class and their GATT descriptor class, hence causing an inheritance diamond. class DEVICE_BLUETOOTH_EXPORT BluetoothRemoteGattDescriptor : public virtual BluetoothGattDescriptor { … }; } // namespace device #endif // DEVICE_BLUETOOTH_BLUETOOTH_REMOTE_GATT_DESCRIPTOR_H_