summaryrefslogtreecommitdiff
path: root/framework/java/android/bluetooth/BluetoothHidDeviceAppQosSettings.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/java/android/bluetooth/BluetoothHidDeviceAppQosSettings.java')
-rw-r--r--framework/java/android/bluetooth/BluetoothHidDeviceAppQosSettings.java188
1 files changed, 55 insertions, 133 deletions
diff --git a/framework/java/android/bluetooth/BluetoothHidDeviceAppQosSettings.java b/framework/java/android/bluetooth/BluetoothHidDeviceAppQosSettings.java
index c05df2d23e..a485b898c2 100644
--- a/framework/java/android/bluetooth/BluetoothHidDeviceAppQosSettings.java
+++ b/framework/java/android/bluetooth/BluetoothHidDeviceAppQosSettings.java
@@ -29,12 +29,12 @@ import android.os.Parcelable;
*/
public final class BluetoothHidDeviceAppQosSettings implements Parcelable {
- public final int serviceType;
- public final int tokenRate;
- public final int tokenBucketSize;
- public final int peakBandwidth;
- public final int latency;
- public final int delayVariation;
+ private final int mServiceType;
+ private final int mTokenRate;
+ private final int mTokenBucketSize;
+ private final int mPeakBandwidth;
+ private final int mLatency;
+ private final int mDelayVariation;
public static final int SERVICE_NO_TRAFFIC = 0x00;
public static final int SERVICE_BEST_EFFORT = 0x01;
@@ -44,38 +44,53 @@ public final class BluetoothHidDeviceAppQosSettings implements Parcelable {
/**
* Create a BluetoothHidDeviceAppQosSettings object for the Bluetooth L2CAP channel. The QoS
- * Settings is optional. Recommended to use BluetoothHidDeviceAppQosSettings.Builder.
- * Please refer to Bluetooth HID Specfication v1.1.1 Section 5.2 and Appendix D for parameters.
+ * Settings is optional. Please refer to Bluetooth HID Specfication v1.1.1 Section 5.2 and
+ * Appendix D for parameters.
*
- * @param serviceType L2CAP service type
- * @param tokenRate L2CAP token rate
- * @param tokenBucketSize L2CAP token bucket size
- * @param peakBandwidth L2CAP peak bandwidth
- * @param latency L2CAP latency
- * @param delayVariation L2CAP delay variation
+ * @param serviceType L2CAP service type, default = SERVICE_BEST_EFFORT
+ * @param tokenRate L2CAP token rate, default = 0
+ * @param tokenBucketSize L2CAP token bucket size, default = 0
+ * @param peakBandwidth L2CAP peak bandwidth, default = 0
+ * @param latency L2CAP latency, default = MAX
+ * @param delayVariation L2CAP delay variation, default = MAX
*/
- public BluetoothHidDeviceAppQosSettings(int serviceType, int tokenRate, int tokenBucketSize,
- int peakBandwidth, int latency, int delayVariation) {
- this.serviceType = serviceType;
- this.tokenRate = tokenRate;
- this.tokenBucketSize = tokenBucketSize;
- this.peakBandwidth = peakBandwidth;
- this.latency = latency;
- this.delayVariation = delayVariation;
+ public BluetoothHidDeviceAppQosSettings(
+ int serviceType,
+ int tokenRate,
+ int tokenBucketSize,
+ int peakBandwidth,
+ int latency,
+ int delayVariation) {
+ mServiceType = serviceType;
+ mTokenRate = tokenRate;
+ mTokenBucketSize = tokenBucketSize;
+ mPeakBandwidth = peakBandwidth;
+ mLatency = latency;
+ mDelayVariation = delayVariation;
}
- @Override
- public boolean equals(Object o) {
- if (o instanceof BluetoothHidDeviceAppQosSettings) {
- BluetoothHidDeviceAppQosSettings qos = (BluetoothHidDeviceAppQosSettings) o;
- return this.serviceType == qos.serviceType
- && this.tokenRate == qos.tokenRate
- && this.tokenBucketSize == qos.tokenBucketSize
- && this.peakBandwidth == qos.peakBandwidth
- && this.latency == qos.latency
- && this.delayVariation == qos.delayVariation;
- }
- return false;
+ public int getServiceType() {
+ return mServiceType;
+ }
+
+ public int getTokenRate() {
+ return mTokenRate;
+ }
+
+ public int getTokenBucketSize() {
+ return mTokenBucketSize;
+ }
+
+ public int getPeakBandwidth() {
+ return mPeakBandwidth;
+ }
+
+ public int getLatency() {
+ return mLatency;
+ }
+
+ public int getDelayVariation() {
+ return mDelayVariation;
}
@Override
@@ -106,104 +121,11 @@ public final class BluetoothHidDeviceAppQosSettings implements Parcelable {
@Override
public void writeToParcel(Parcel out, int flags) {
- out.writeInt(serviceType);
- out.writeInt(tokenRate);
- out.writeInt(tokenBucketSize);
- out.writeInt(peakBandwidth);
- out.writeInt(latency);
- out.writeInt(delayVariation);
- }
-
- /** @return an int array representation of this instance */
- public int[] toArray() {
- return new int[] {
- serviceType, tokenRate, tokenBucketSize, peakBandwidth, latency, delayVariation
- };
- }
-
- /** A helper to build the BluetoothHidDeviceAppQosSettings object. */
- public static class Builder {
- // Optional parameters - initialized to default values
- private int mServiceType = SERVICE_BEST_EFFORT;
- private int mTokenRate = 0;
- private int mTokenBucketSize = 0;
- private int mPeakBandwidth = 0;
- private int mLatency = MAX;
- private int mDelayVariation = MAX;
-
- /**
- * Set the service type.
- *
- * @param val service type. Should be one of {SERVICE_NO_TRAFFIC, SERVICE_BEST_EFFORT,
- * SERVICE_GUARANTEED}, with SERVICE_BEST_EFFORT being the default one.
- * @return BluetoothHidDeviceAppQosSettings Builder with specified service type.
- */
- public Builder serviceType(int val) {
- mServiceType = val;
- return this;
- }
- /**
- * Set the token rate.
- *
- * @param val token rate
- * @return BluetoothHidDeviceAppQosSettings Builder with specified token rate.
- */
- public Builder tokenRate(int val) {
- mTokenRate = val;
- return this;
- }
-
- /**
- * Set the bucket size.
- *
- * @param val bucket size
- * @return BluetoothHidDeviceAppQosSettings Builder with specified bucket size.
- */
- public Builder tokenBucketSize(int val) {
- mTokenBucketSize = val;
- return this;
- }
-
- /**
- * Set the peak bandwidth.
- *
- * @param val peak bandwidth
- * @return BluetoothHidDeviceAppQosSettings Builder with specified peak bandwidth.
- */
- public Builder peakBandwidth(int val) {
- mPeakBandwidth = val;
- return this;
- }
- /**
- * Set the latency.
- *
- * @param val latency
- * @return BluetoothHidDeviceAppQosSettings Builder with specified latency.
- */
- public Builder latency(int val) {
- mLatency = val;
- return this;
- }
-
- /**
- * Set the delay variation.
- *
- * @param val delay variation
- * @return BluetoothHidDeviceAppQosSettings Builder with specified delay variation.
- */
- public Builder delayVariation(int val) {
- mDelayVariation = val;
- return this;
- }
-
- /**
- * Build the BluetoothHidDeviceAppQosSettings object.
- *
- * @return BluetoothHidDeviceAppQosSettings object with current settings.
- */
- public BluetoothHidDeviceAppQosSettings build() {
- return new BluetoothHidDeviceAppQosSettings(mServiceType, mTokenRate, mTokenBucketSize,
- mPeakBandwidth, mLatency, mDelayVariation);
- }
+ out.writeInt(mServiceType);
+ out.writeInt(mTokenRate);
+ out.writeInt(mTokenBucketSize);
+ out.writeInt(mPeakBandwidth);
+ out.writeInt(mLatency);
+ out.writeInt(mDelayVariation);
}
}