| // |
| // Copyright (C) 2015 Google, Inc. |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at: |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| // |
| |
| #pragma once |
| |
| #include <memory> |
| |
| #include <binder/Parcel.h> |
| |
| #include <bluetooth/advertise_data.h> |
| #include <bluetooth/advertise_settings.h> |
| #include <bluetooth/gatt_identifier.h> |
| #include <bluetooth/scan_filter.h> |
| #include <bluetooth/scan_result.h> |
| #include <bluetooth/scan_settings.h> |
| #include <bluetooth/uuid.h> |
| |
| namespace ipc { |
| namespace binder { |
| |
| // Java Parcel meta-data constants. |
| const int kParcelValList = 11; |
| |
| // Helpers for converting bluetooth::AdvertiseData to/from Parcel |
| |
| void WriteAdvertiseDataToParcel( |
| const bluetooth::AdvertiseData& data, |
| android::Parcel* parcel); |
| |
| std::unique_ptr<bluetooth::AdvertiseData> CreateAdvertiseDataFromParcel( |
| const android::Parcel& parcel); |
| |
| // Helpers for converting bluetooth::AdvertiseSettings to/from Parcel |
| |
| void WriteAdvertiseSettingsToParcel( |
| const bluetooth::AdvertiseSettings& settings, |
| android::Parcel* parcel); |
| |
| std::unique_ptr<bluetooth::AdvertiseSettings> CreateAdvertiseSettingsFromParcel( |
| const android::Parcel& parcel); |
| |
| // Helpers for converting bluetooth::UUID to/from Parcel |
| |
| void WriteUUIDToParcel(const bluetooth::UUID& uuid, android::Parcel* parcel); |
| |
| std::unique_ptr<bluetooth::UUID> CreateUUIDFromParcel( |
| const android::Parcel& parcel); |
| |
| // Helpers for converting bluetooth::GattIdentifier to/from Parcel |
| |
| void WriteGattIdentifierToParcel( |
| const bluetooth::GattIdentifier& gatt_id, |
| android::Parcel* parcel); |
| |
| std::unique_ptr<bluetooth::GattIdentifier> CreateGattIdentifierFromParcel( |
| const android::Parcel& parcel); |
| |
| // Helpers for converting bluetooth::ScanFilter to/from Parcel |
| |
| void WriteScanFilterToParcel( |
| const bluetooth::ScanFilter& filter, |
| android::Parcel* parcel); |
| |
| std::unique_ptr<bluetooth::ScanFilter> CreateScanFilterFromParcel( |
| const android::Parcel& parcel); |
| |
| // Helpers for converting bluetooth::ScanSettings to/from Parcel |
| |
| void WriteScanSettingsToParcel( |
| const bluetooth::ScanSettings& settings, |
| android::Parcel* parcel); |
| |
| std::unique_ptr<bluetooth::ScanSettings> CreateScanSettingsFromParcel( |
| const android::Parcel& parcel); |
| |
| // Helpers for converting bluetooth::ScanResult to/from Parcel |
| |
| void WriteScanResultToParcel( |
| const bluetooth::ScanResult& scan_result, |
| android::Parcel* parcel); |
| |
| std::unique_ptr<bluetooth::ScanResult> CreateScanResultFromParcel( |
| const android::Parcel& parcel); |
| |
| } // namespace binder |
| } // namespace ipc |