1 /* 2 * Copyright (C) 2022 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef BLUETOOTH_PARCEL_A2DP_A2DPCODECINFO_H 17 #define BLUETOOTH_PARCEL_A2DP_A2DPCODECINFO_H 18 19 #include "../common/a2dp_parcel_codec.h" 20 #include "parcel.h" 21 22 namespace OHOS { 23 namespace Bluetooth { 24 class BluetoothA2dpCodecInfo : public Parcelable, 25 public bluetooth::CodecInfo { 26 public: 27 BluetoothA2dpCodecInfo() = default; BluetoothA2dpCodecInfo(const bluetooth::CodecInfo & other)28 BluetoothA2dpCodecInfo(const bluetooth::CodecInfo& other) 29 : bluetooth::CodecInfo(other) {} // NOLINT(implicit) BluetoothA2dpCodecInfo(const BluetoothA2dpCodecInfo & other)30 BluetoothA2dpCodecInfo(const BluetoothA2dpCodecInfo& other) 31 : bluetooth::CodecInfo(other) {} // NOLINT(implicit) 32 ~BluetoothA2dpCodecInfo() override = default; 33 34 bool Marshalling(Parcel &parcel) const override; 35 36 static BluetoothA2dpCodecInfo *Unmarshalling(Parcel &parcel); 37 38 bool WriteToParcel(Parcel &parcel); 39 bool ReadFromParcel(Parcel &parcel); 40 }; 41 42 class BluetoothA2dpOffloadCodecInfo : public Parcelable, public bluetooth::OffloadCodecInfo { 43 public: 44 BluetoothA2dpOffloadCodecInfo() = default; BluetoothA2dpOffloadCodecInfo(const bluetooth::OffloadCodecInfo & other)45 explicit BluetoothA2dpOffloadCodecInfo(const bluetooth::OffloadCodecInfo &other) 46 : bluetooth::OffloadCodecInfo(other) {} BluetoothA2dpOffloadCodecInfo(const BluetoothA2dpOffloadCodecInfo & other)47 BluetoothA2dpOffloadCodecInfo(const BluetoothA2dpOffloadCodecInfo &other) 48 : bluetooth::OffloadCodecInfo(other) {} 49 ~BluetoothA2dpOffloadCodecInfo() override = default; 50 51 bool Marshalling(Parcel &parcel) const override; 52 53 static BluetoothA2dpOffloadCodecInfo *Unmarshalling(Parcel &parcel); 54 55 bool WriteToParcel(Parcel &parcel); 56 bool ReadFromParcel(Parcel &parcel); 57 }; 58 59 } // namespace Bluetooth 60 } // namespace OHOS 61 62 #endif // BLUETOOTH_PARCEL_A2DP_A2DPCODECINFO_H