| /* |
| * This file is auto-generated. DO NOT MODIFY. |
| * Using: out/host/linux-x86/bin/aidl --lang=java -Weverything -Wno-missing-permission-annotation --min_sdk_version current -pout/soong/.intermediates/system/hardware/interfaces/media/android.media.audio.common.types_interface/3/preprocessed.aidl -pout/soong/.intermediates/frameworks/native/libs/permission/framework-permission-aidl_interface/preprocessed.aidl --ninja -d out/soong/.intermediates/frameworks/av/media/libaudioclient/audioclient-types-aidl-java-source/gen/android/media/SurroundSoundConfig.java.d -o out/soong/.intermediates/frameworks/av/media/libaudioclient/audioclient-types-aidl-java-source/gen -Nframeworks/av/media/libaudioclient/aidl frameworks/av/media/libaudioclient/aidl/android/media/SurroundSoundConfig.aidl |
| */ |
| package android.media; |
| /** |
| * TODO(b/280077672): This is a temporary copy of the stable |
| * android.hardware.audio.core.SurroundSoundConfig parcelable. |
| * Interfaces from the Core API do not support the CPP backend. This copy will |
| * be removed either by moving the AudioRoute from core to a.m.a.common or by |
| * switching the framework internal interfaces to the NDK backend. |
| * {@hide} |
| */ |
| public class SurroundSoundConfig implements android.os.Parcelable |
| { |
| public android.media.SurroundSoundConfig.SurroundFormatFamily[] formatFamilies; |
| public static final android.os.Parcelable.Creator<SurroundSoundConfig> CREATOR = new android.os.Parcelable.Creator<SurroundSoundConfig>() { |
| @Override |
| public SurroundSoundConfig createFromParcel(android.os.Parcel _aidl_source) { |
| SurroundSoundConfig _aidl_out = new SurroundSoundConfig(); |
| _aidl_out.readFromParcel(_aidl_source); |
| return _aidl_out; |
| } |
| @Override |
| public SurroundSoundConfig[] newArray(int _aidl_size) { |
| return new SurroundSoundConfig[_aidl_size]; |
| } |
| }; |
| @Override public final void writeToParcel(android.os.Parcel _aidl_parcel, int _aidl_flag) |
| { |
| int _aidl_start_pos = _aidl_parcel.dataPosition(); |
| _aidl_parcel.writeInt(0); |
| _aidl_parcel.writeTypedArray(formatFamilies, _aidl_flag); |
| int _aidl_end_pos = _aidl_parcel.dataPosition(); |
| _aidl_parcel.setDataPosition(_aidl_start_pos); |
| _aidl_parcel.writeInt(_aidl_end_pos - _aidl_start_pos); |
| _aidl_parcel.setDataPosition(_aidl_end_pos); |
| } |
| public final void readFromParcel(android.os.Parcel _aidl_parcel) |
| { |
| int _aidl_start_pos = _aidl_parcel.dataPosition(); |
| int _aidl_parcelable_size = _aidl_parcel.readInt(); |
| try { |
| if (_aidl_parcelable_size < 4) throw new android.os.BadParcelableException("Parcelable too small");; |
| if (_aidl_parcel.dataPosition() - _aidl_start_pos >= _aidl_parcelable_size) return; |
| formatFamilies = _aidl_parcel.createTypedArray(android.media.SurroundSoundConfig.SurroundFormatFamily.CREATOR); |
| } finally { |
| if (_aidl_start_pos > (Integer.MAX_VALUE - _aidl_parcelable_size)) { |
| throw new android.os.BadParcelableException("Overflow in the size of parcelable"); |
| } |
| _aidl_parcel.setDataPosition(_aidl_start_pos + _aidl_parcelable_size); |
| } |
| } |
| @Override |
| public int describeContents() { |
| int _mask = 0; |
| _mask |= describeContents(formatFamilies); |
| return _mask; |
| } |
| private int describeContents(Object _v) { |
| if (_v == null) return 0; |
| if (_v instanceof Object[]) { |
| int _mask = 0; |
| for (Object o : (Object[]) _v) { |
| _mask |= describeContents(o); |
| } |
| return _mask; |
| } |
| if (_v instanceof android.os.Parcelable) { |
| return ((android.os.Parcelable) _v).describeContents(); |
| } |
| return 0; |
| } |
| public static class SurroundFormatFamily implements android.os.Parcelable |
| { |
| /** |
| * A primaryFormat shall get an entry in the Surround Settings dialog on TV |
| * devices. There must be a corresponding Java ENCODING_... constant |
| * defined in AudioFormat.java, and a display name defined in |
| * AudioFormat.toDisplayName. |
| */ |
| public android.media.audio.common.AudioFormatDescription primaryFormat; |
| /** |
| * List of formats that shall be equivalent to the primaryFormat from the |
| * users' point of view and don't need a dedicated Surround Settings |
| * dialog entry. |
| */ |
| public android.media.audio.common.AudioFormatDescription[] subFormats; |
| public static final android.os.Parcelable.Creator<SurroundFormatFamily> CREATOR = new android.os.Parcelable.Creator<SurroundFormatFamily>() { |
| @Override |
| public SurroundFormatFamily createFromParcel(android.os.Parcel _aidl_source) { |
| SurroundFormatFamily _aidl_out = new SurroundFormatFamily(); |
| _aidl_out.readFromParcel(_aidl_source); |
| return _aidl_out; |
| } |
| @Override |
| public SurroundFormatFamily[] newArray(int _aidl_size) { |
| return new SurroundFormatFamily[_aidl_size]; |
| } |
| }; |
| @Override public final void writeToParcel(android.os.Parcel _aidl_parcel, int _aidl_flag) |
| { |
| int _aidl_start_pos = _aidl_parcel.dataPosition(); |
| _aidl_parcel.writeInt(0); |
| _aidl_parcel.writeTypedObject(primaryFormat, _aidl_flag); |
| _aidl_parcel.writeTypedArray(subFormats, _aidl_flag); |
| int _aidl_end_pos = _aidl_parcel.dataPosition(); |
| _aidl_parcel.setDataPosition(_aidl_start_pos); |
| _aidl_parcel.writeInt(_aidl_end_pos - _aidl_start_pos); |
| _aidl_parcel.setDataPosition(_aidl_end_pos); |
| } |
| public final void readFromParcel(android.os.Parcel _aidl_parcel) |
| { |
| int _aidl_start_pos = _aidl_parcel.dataPosition(); |
| int _aidl_parcelable_size = _aidl_parcel.readInt(); |
| try { |
| if (_aidl_parcelable_size < 4) throw new android.os.BadParcelableException("Parcelable too small");; |
| if (_aidl_parcel.dataPosition() - _aidl_start_pos >= _aidl_parcelable_size) return; |
| primaryFormat = _aidl_parcel.readTypedObject(android.media.audio.common.AudioFormatDescription.CREATOR); |
| if (_aidl_parcel.dataPosition() - _aidl_start_pos >= _aidl_parcelable_size) return; |
| subFormats = _aidl_parcel.createTypedArray(android.media.audio.common.AudioFormatDescription.CREATOR); |
| } finally { |
| if (_aidl_start_pos > (Integer.MAX_VALUE - _aidl_parcelable_size)) { |
| throw new android.os.BadParcelableException("Overflow in the size of parcelable"); |
| } |
| _aidl_parcel.setDataPosition(_aidl_start_pos + _aidl_parcelable_size); |
| } |
| } |
| @Override |
| public int describeContents() { |
| int _mask = 0; |
| _mask |= describeContents(primaryFormat); |
| _mask |= describeContents(subFormats); |
| return _mask; |
| } |
| private int describeContents(Object _v) { |
| if (_v == null) return 0; |
| if (_v instanceof Object[]) { |
| int _mask = 0; |
| for (Object o : (Object[]) _v) { |
| _mask |= describeContents(o); |
| } |
| return _mask; |
| } |
| if (_v instanceof android.os.Parcelable) { |
| return ((android.os.Parcelable) _v).describeContents(); |
| } |
| return 0; |
| } |
| } |
| } |