AudioEffect: make Descriptor not final
Make AudioEffect.Descriptor class not final and not implement Parcelable. Directly implement read/write from parcel. Bug: 123234025 Bug: 111438757 Test: make Change-Id: I429341d59b9bad68f3a5b4c6c56603a8f6cb96af
This commit is contained in:
@@ -26577,12 +26577,9 @@ package android.media.audiofx {
|
||||
field public static final int SUCCESS = 0; // 0x0
|
||||
}
|
||||
|
||||
public static final class AudioEffect.Descriptor implements android.os.Parcelable {
|
||||
public static class AudioEffect.Descriptor {
|
||||
ctor public AudioEffect.Descriptor();
|
||||
ctor public AudioEffect.Descriptor(String, String, String, String, String);
|
||||
method public int describeContents();
|
||||
method public void writeToParcel(android.os.Parcel, int);
|
||||
field public static final android.os.Parcelable.Creator<android.media.audiofx.AudioEffect.Descriptor> CREATOR;
|
||||
field public String connectMode;
|
||||
field public String implementor;
|
||||
field public String name;
|
||||
|
||||
@@ -772,6 +772,11 @@ package android.media.audiofx {
|
||||
field public static final java.util.UUID EFFECT_TYPE_NULL;
|
||||
}
|
||||
|
||||
public static class AudioEffect.Descriptor {
|
||||
ctor public AudioEffect.Descriptor(android.os.Parcel);
|
||||
method public void writeToParcel(android.os.Parcel);
|
||||
}
|
||||
|
||||
public static interface AudioEffect.OnParameterChangeListener {
|
||||
method public void onParameterChange(android.media.audiofx.AudioEffect, int, byte[], byte[]);
|
||||
}
|
||||
|
||||
@@ -356,11 +356,11 @@ public final class AudioRecordingConfiguration implements Parcelable {
|
||||
dest.writeInt(mDeviceSource);
|
||||
dest.writeInt(mClientEffects.length);
|
||||
for (int i = 0; i < mClientEffects.length; i++) {
|
||||
mClientEffects[i].writeToParcel(dest, 0);
|
||||
mClientEffects[i].writeToParcel(dest);
|
||||
}
|
||||
dest.writeInt(mDeviceEffects.length);
|
||||
for (int i = 0; i < mDeviceEffects.length; i++) {
|
||||
mDeviceEffects[i].writeToParcel(dest, 0);
|
||||
mDeviceEffects[i].writeToParcel(dest);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -375,13 +375,13 @@ public final class AudioRecordingConfiguration implements Parcelable {
|
||||
mClientPortId = in.readInt();
|
||||
mClientSilenced = in.readBoolean();
|
||||
mDeviceSource = in.readInt();
|
||||
mClientEffects = AudioEffect.Descriptor.CREATOR.newArray(in.readInt());
|
||||
mClientEffects = new AudioEffect.Descriptor[in.readInt()];
|
||||
for (int i = 0; i < mClientEffects.length; i++) {
|
||||
mClientEffects[i] = AudioEffect.Descriptor.CREATOR.createFromParcel(in);
|
||||
mClientEffects[i] = new AudioEffect.Descriptor(in);
|
||||
}
|
||||
mDeviceEffects = AudioEffect.Descriptor.CREATOR.newArray(in.readInt());
|
||||
for (int i = 0; i < mClientEffects.length; i++) {
|
||||
mDeviceEffects[i] = AudioEffect.Descriptor.CREATOR.createFromParcel(in);
|
||||
mDeviceEffects = new AudioEffect.Descriptor[in.readInt()];
|
||||
for (int i = 0; i < mDeviceEffects.length; i++) {
|
||||
mDeviceEffects[i] = new AudioEffect.Descriptor(in);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -26,7 +26,6 @@ import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.os.Message;
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
import android.util.Log;
|
||||
|
||||
import java.lang.ref.WeakReference;
|
||||
@@ -229,7 +228,7 @@ public class AudioEffect {
|
||||
* The method {@link #queryEffects()} returns an array of Descriptors to facilitate effects
|
||||
* enumeration.
|
||||
*/
|
||||
public static final class Descriptor implements Parcelable {
|
||||
public static class Descriptor {
|
||||
|
||||
public Descriptor() {
|
||||
}
|
||||
@@ -294,7 +293,9 @@ public class AudioEffect {
|
||||
this.implementor = implementor;
|
||||
}
|
||||
|
||||
private Descriptor(Parcel in) {
|
||||
/** @hide */
|
||||
@TestApi
|
||||
public Descriptor(Parcel in) {
|
||||
type = UUID.fromString(in.readString());
|
||||
uuid = UUID.fromString(in.readString());
|
||||
connectMode = in.readString();
|
||||
@@ -302,33 +303,14 @@ public class AudioEffect {
|
||||
implementor = in.readString();
|
||||
}
|
||||
|
||||
public static final Parcelable.Creator<Descriptor> CREATOR =
|
||||
new Parcelable.Creator<Descriptor>() {
|
||||
/**
|
||||
* Rebuilds a Descriptor previously stored with writeToParcel().
|
||||
* @param p Parcel object to read the Descriptor from
|
||||
* @return a new Descriptor created from the data in the parcel
|
||||
*/
|
||||
public Descriptor createFromParcel(Parcel p) {
|
||||
return new Descriptor(p);
|
||||
}
|
||||
public Descriptor[] newArray(int size) {
|
||||
return new Descriptor[size];
|
||||
}
|
||||
};
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Objects.hash(type, uuid, connectMode, name, implementor);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int describeContents() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeToParcel(Parcel dest, int flags) {
|
||||
/** @hide */
|
||||
@TestApi
|
||||
public void writeToParcel(Parcel dest) {
|
||||
dest.writeString(type.toString());
|
||||
dest.writeString(uuid.toString());
|
||||
dest.writeString(connectMode);
|
||||
|
||||
Reference in New Issue
Block a user