chromium/device/bluetooth/floss/floss_sdp_types.h

// Copyright 2023 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_FLOSS_FLOSS_SDP_TYPES_H_
#define DEVICE_BLUETOOTH_FLOSS_FLOSS_SDP_TYPES_H_

#include <string>

#include "device/bluetooth/bluetooth_device.h"
#include "device/bluetooth/bluetooth_export.h"
#include "device/bluetooth/floss/floss_dbus_client.h"

namespace floss {

enum class BtSdpType : uint32_t {};

struct DEVICE_BLUETOOTH_EXPORT BtSdpHeaderOverlay {};

struct DEVICE_BLUETOOTH_EXPORT BtSdpMasRecord {};

struct DEVICE_BLUETOOTH_EXPORT BtSdpMnsRecord {};

struct DEVICE_BLUETOOTH_EXPORT BtSdpPseRecord {};

struct DEVICE_BLUETOOTH_EXPORT BtSdpPceRecord {};

struct DEVICE_BLUETOOTH_EXPORT BtSdpOpsRecord {};

struct DEVICE_BLUETOOTH_EXPORT BtSdpSapRecord {};

struct DEVICE_BLUETOOTH_EXPORT BtSdpDipRecord {};

BtSdpRecord;
std::optional<floss::BtSdpHeaderOverlay> DEVICE_BLUETOOTH_EXPORT
GetHeaderOverlayFromSdpRecord(const floss::BtSdpRecord& record);

std::optional<device::BluetoothUUID> DEVICE_BLUETOOTH_EXPORT
GetUUIDFromSdpRecord(const floss::BtSdpRecord& record);

}  // namespace floss

#endif  // DEVICE_BLUETOOTH_FLOSS_FLOSS_SDP_TYPES_H_