TrackGroup.smali
.class public final Lcom/google/android/exoplayer2/source/TrackGroup;
.super Ljava/lang/Object;
.source "TrackGroup.java"
# interfaces
.implements Landroid/os/Parcelable;
# static fields
.field public static final CREATOR:Landroid/os/Parcelable$Creator;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroid/os/Parcelable$Creator<",
"Lcom/google/android/exoplayer2/source/TrackGroup;",
">;"
}
.end annotation
.end field
# instance fields
.field private final formats:[Lcom/google/android/exoplayer2/Format;
.field private hashCode:I
.field public final length:I
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 129
new-instance v0, Lcom/google/android/exoplayer2/source/TrackGroup$1;
invoke-direct {v0}, Lcom/google/android/exoplayer2/source/TrackGroup$1;-><init>()V
sput-object v0, Lcom/google/android/exoplayer2/source/TrackGroup;->CREATOR:Landroid/os/Parcelable$Creator;
return-void
.end method
.method constructor <init>(Landroid/os/Parcel;)V
.registers 5
.param p1, "in" # Landroid/os/Parcel;
.line 56
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 57
invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
move-result v0
iput v0, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->length:I
.line 58
new-array v0, v0, [Lcom/google/android/exoplayer2/Format;
iput-object v0, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->formats:[Lcom/google/android/exoplayer2/Format;
.line 59
const/4 v0, 0x0
.local v0, "i":I
:goto_e
iget v1, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->length:I
if-ge v0, v1, :cond_25
.line 60
iget-object v1, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->formats:[Lcom/google/android/exoplayer2/Format;
const-class v2, Lcom/google/android/exoplayer2/Format;
invoke-virtual {v2}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v2
invoke-virtual {p1, v2}, Landroid/os/Parcel;->readParcelable(Ljava/lang/ClassLoader;)Landroid/os/Parcelable;
move-result-object v2
check-cast v2, Lcom/google/android/exoplayer2/Format;
aput-object v2, v1, v0
.line 59
add-int/lit8 v0, v0, 0x1
goto :goto_e
.line 62
.end local v0 # "i":I
:cond_25
return-void
.end method
.method public varargs constructor <init>([Lcom/google/android/exoplayer2/Format;)V
.registers 3
.param p1, "formats" # [Lcom/google/android/exoplayer2/Format;
.line 50
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 51
array-length v0, p1
if-lez v0, :cond_8
const/4 v0, 0x1
goto :goto_9
:cond_8
const/4 v0, 0x0
:goto_9
invoke-static {v0}, Lcom/google/android/exoplayer2/util/Assertions;->checkState(Z)V
.line 52
iput-object p1, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->formats:[Lcom/google/android/exoplayer2/Format;
.line 53
array-length v0, p1
iput v0, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->length:I
.line 54
return-void
.end method
# virtual methods
.method public describeContents()I
.registers 2
.line 118
const/4 v0, 0x0
return v0
.end method
.method public equals(Ljava/lang/Object;)Z
.registers 7
.param p1, "obj" # Ljava/lang/Object;
.line 104
const/4 v0, 0x1
if-ne p0, p1, :cond_4
.line 105
return v0
.line 107
:cond_4
const/4 v1, 0x0
if-eqz p1, :cond_28
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v2
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v3
if-eq v2, v3, :cond_12
goto :goto_28
.line 110
:cond_12
move-object v2, p1
check-cast v2, Lcom/google/android/exoplayer2/source/TrackGroup;
.line 111
.local v2, "other":Lcom/google/android/exoplayer2/source/TrackGroup;
iget v3, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->length:I
iget v4, v2, Lcom/google/android/exoplayer2/source/TrackGroup;->length:I
if-ne v3, v4, :cond_26
iget-object v3, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->formats:[Lcom/google/android/exoplayer2/Format;
iget-object v4, v2, Lcom/google/android/exoplayer2/source/TrackGroup;->formats:[Lcom/google/android/exoplayer2/Format;
invoke-static {v3, v4}, Ljava/util/Arrays;->equals([Ljava/lang/Object;[Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_26
goto :goto_27
:cond_26
const/4 v0, 0x0
:goto_27
return v0
.line 108
.end local v2 # "other":Lcom/google/android/exoplayer2/source/TrackGroup;
:cond_28
:goto_28
return v1
.end method
.method public getFormat(I)Lcom/google/android/exoplayer2/Format;
.registers 3
.param p1, "index" # I
.line 71
iget-object v0, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->formats:[Lcom/google/android/exoplayer2/Format;
aget-object v0, v0, p1
return-object v0
.end method
.method public hashCode()I
.registers 4
.line 94
iget v0, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->hashCode:I
if-nez v0, :cond_11
.line 95
const/16 v0, 0x11
.line 96
.local v0, "result":I
mul-int/lit8 v1, v0, 0x1f
iget-object v2, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->formats:[Lcom/google/android/exoplayer2/Format;
invoke-static {v2}, Ljava/util/Arrays;->hashCode([Ljava/lang/Object;)I
move-result v2
add-int/2addr v1, v2
.line 97
.end local v0 # "result":I
.local v1, "result":I
iput v1, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->hashCode:I
.line 99
.end local v1 # "result":I
:cond_11
iget v0, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->hashCode:I
return v0
.end method
.method public indexOf(Lcom/google/android/exoplayer2/Format;)I
.registers 5
.param p1, "format" # Lcom/google/android/exoplayer2/Format;
.line 84
const/4 v0, 0x0
.local v0, "i":I
:goto_1
iget-object v1, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->formats:[Lcom/google/android/exoplayer2/Format;
array-length v2, v1
if-ge v0, v2, :cond_e
.line 85
aget-object v1, v1, v0
if-ne p1, v1, :cond_b
.line 86
return v0
.line 84
:cond_b
add-int/lit8 v0, v0, 0x1
goto :goto_1
.line 89
.end local v0 # "i":I
:cond_e
const/4 v0, -0x1
return v0
.end method
.method public writeToParcel(Landroid/os/Parcel;I)V
.registers 6
.param p1, "dest" # Landroid/os/Parcel;
.param p2, "flags" # I
.line 123
iget v0, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->length:I
invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
.line 124
const/4 v0, 0x0
.local v0, "i":I
:goto_6
iget v1, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->length:I
if-ge v0, v1, :cond_15
.line 125
iget-object v1, p0, Lcom/google/android/exoplayer2/source/TrackGroup;->formats:[Lcom/google/android/exoplayer2/Format;
aget-object v1, v1, v0
const/4 v2, 0x0
invoke-virtual {p1, v1, v2}, Landroid/os/Parcel;->writeParcelable(Landroid/os/Parcelable;I)V
.line 124
add-int/lit8 v0, v0, 0x1
goto :goto_6
.line 127
.end local v0 # "i":I
:cond_15
return-void
.end method