| /* |
| * 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/packages/modules/Virtualization/virtualizationservice/aidl/android.system.virtualizationcommon_interface/preprocessed.aidl --ninja -d out/soong/.intermediates/packages/modules/Virtualization/virtualizationservice/aidl/android.system.virtualizationservice-java-source/gen/android/system/virtualizationservice/InputDevice.java.d -o out/soong/.intermediates/packages/modules/Virtualization/virtualizationservice/aidl/android.system.virtualizationservice-java-source/gen -Npackages/modules/Virtualization/virtualizationservice/aidl packages/modules/Virtualization/virtualizationservice/aidl/android/system/virtualizationservice/InputDevice.aidl |
| */ |
| package android.system.virtualizationservice; |
| // Refer to https://crosvm.dev/book/devices/input.html |
| public final class InputDevice implements android.os.Parcelable { |
| // tags for union fields |
| public final static int singleTouch = 0; // android.system.virtualizationservice.InputDevice.SingleTouch singleTouch; |
| public final static int evDev = 1; // android.system.virtualizationservice.InputDevice.EvDev evDev; |
| public final static int keyboard = 2; // android.system.virtualizationservice.InputDevice.Keyboard keyboard; |
| |
| private int _tag; |
| private Object _value; |
| |
| public InputDevice() { |
| android.system.virtualizationservice.InputDevice.SingleTouch _value = null; |
| this._tag = singleTouch; |
| this._value = _value; |
| } |
| |
| private InputDevice(android.os.Parcel _aidl_parcel) { |
| readFromParcel(_aidl_parcel); |
| } |
| |
| private InputDevice(int _tag, Object _value) { |
| this._tag = _tag; |
| this._value = _value; |
| } |
| |
| public int getTag() { |
| return _tag; |
| } |
| |
| // android.system.virtualizationservice.InputDevice.SingleTouch singleTouch; |
| |
| public static InputDevice singleTouch(android.system.virtualizationservice.InputDevice.SingleTouch _value) { |
| return new InputDevice(singleTouch, _value); |
| } |
| |
| public android.system.virtualizationservice.InputDevice.SingleTouch getSingleTouch() { |
| _assertTag(singleTouch); |
| return (android.system.virtualizationservice.InputDevice.SingleTouch) _value; |
| } |
| |
| public void setSingleTouch(android.system.virtualizationservice.InputDevice.SingleTouch _value) { |
| _set(singleTouch, _value); |
| } |
| |
| // android.system.virtualizationservice.InputDevice.EvDev evDev; |
| |
| public static InputDevice evDev(android.system.virtualizationservice.InputDevice.EvDev _value) { |
| return new InputDevice(evDev, _value); |
| } |
| |
| public android.system.virtualizationservice.InputDevice.EvDev getEvDev() { |
| _assertTag(evDev); |
| return (android.system.virtualizationservice.InputDevice.EvDev) _value; |
| } |
| |
| public void setEvDev(android.system.virtualizationservice.InputDevice.EvDev _value) { |
| _set(evDev, _value); |
| } |
| |
| // android.system.virtualizationservice.InputDevice.Keyboard keyboard; |
| |
| public static InputDevice keyboard(android.system.virtualizationservice.InputDevice.Keyboard _value) { |
| return new InputDevice(keyboard, _value); |
| } |
| |
| public android.system.virtualizationservice.InputDevice.Keyboard getKeyboard() { |
| _assertTag(keyboard); |
| return (android.system.virtualizationservice.InputDevice.Keyboard) _value; |
| } |
| |
| public void setKeyboard(android.system.virtualizationservice.InputDevice.Keyboard _value) { |
| _set(keyboard, _value); |
| } |
| |
| public static final android.os.Parcelable.Creator<InputDevice> CREATOR = new android.os.Parcelable.Creator<InputDevice>() { |
| @Override |
| public InputDevice createFromParcel(android.os.Parcel _aidl_source) { |
| return new InputDevice(_aidl_source); |
| } |
| @Override |
| public InputDevice[] newArray(int _aidl_size) { |
| return new InputDevice[_aidl_size]; |
| } |
| }; |
| |
| @Override |
| public final void writeToParcel(android.os.Parcel _aidl_parcel, int _aidl_flag) { |
| _aidl_parcel.writeInt(_tag); |
| switch (_tag) { |
| case singleTouch: |
| _aidl_parcel.writeTypedObject(getSingleTouch(), _aidl_flag); |
| break; |
| case evDev: |
| _aidl_parcel.writeTypedObject(getEvDev(), _aidl_flag); |
| break; |
| case keyboard: |
| _aidl_parcel.writeTypedObject(getKeyboard(), _aidl_flag); |
| break; |
| } |
| } |
| |
| public void readFromParcel(android.os.Parcel _aidl_parcel) { |
| int _aidl_tag; |
| _aidl_tag = _aidl_parcel.readInt(); |
| switch (_aidl_tag) { |
| case singleTouch: { |
| android.system.virtualizationservice.InputDevice.SingleTouch _aidl_value; |
| _aidl_value = _aidl_parcel.readTypedObject(android.system.virtualizationservice.InputDevice.SingleTouch.CREATOR); |
| _set(_aidl_tag, _aidl_value); |
| return; } |
| case evDev: { |
| android.system.virtualizationservice.InputDevice.EvDev _aidl_value; |
| _aidl_value = _aidl_parcel.readTypedObject(android.system.virtualizationservice.InputDevice.EvDev.CREATOR); |
| _set(_aidl_tag, _aidl_value); |
| return; } |
| case keyboard: { |
| android.system.virtualizationservice.InputDevice.Keyboard _aidl_value; |
| _aidl_value = _aidl_parcel.readTypedObject(android.system.virtualizationservice.InputDevice.Keyboard.CREATOR); |
| _set(_aidl_tag, _aidl_value); |
| return; } |
| } |
| throw new IllegalArgumentException("union: unknown tag: " + _aidl_tag); |
| } |
| |
| @Override |
| public int describeContents() { |
| int _mask = 0; |
| switch (getTag()) { |
| case singleTouch: |
| _mask |= describeContents(getSingleTouch()); |
| break; |
| case evDev: |
| _mask |= describeContents(getEvDev()); |
| break; |
| case keyboard: |
| _mask |= describeContents(getKeyboard()); |
| break; |
| } |
| return _mask; |
| } |
| private int describeContents(Object _v) { |
| if (_v == null) return 0; |
| if (_v instanceof android.os.Parcelable) { |
| return ((android.os.Parcelable) _v).describeContents(); |
| } |
| return 0; |
| } |
| |
| private void _assertTag(int tag) { |
| if (getTag() != tag) { |
| throw new IllegalStateException("bad access: " + _tagString(tag) + ", " + _tagString(getTag()) + " is available."); |
| } |
| } |
| |
| private String _tagString(int _tag) { |
| switch (_tag) { |
| case singleTouch: return "singleTouch"; |
| case evDev: return "evDev"; |
| case keyboard: return "keyboard"; |
| } |
| throw new IllegalStateException("unknown field: " + _tag); |
| } |
| |
| private void _set(int _tag, Object _value) { |
| this._tag = _tag; |
| this._value = _value; |
| } |
| // Add a single-touch touchscreen virtio-input device. |
| public static class SingleTouch implements android.os.Parcelable |
| { |
| public android.os.ParcelFileDescriptor pfd; |
| // Default values come from https://crosvm.dev/book/devices/input.html#single-touch |
| public int width = 1280; |
| public int height = 1080; |
| public java.lang.String name = ""; |
| public static final android.os.Parcelable.Creator<SingleTouch> CREATOR = new android.os.Parcelable.Creator<SingleTouch>() { |
| @Override |
| public SingleTouch createFromParcel(android.os.Parcel _aidl_source) { |
| SingleTouch _aidl_out = new SingleTouch(); |
| _aidl_out.readFromParcel(_aidl_source); |
| return _aidl_out; |
| } |
| @Override |
| public SingleTouch[] newArray(int _aidl_size) { |
| return new SingleTouch[_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(pfd, _aidl_flag); |
| _aidl_parcel.writeInt(width); |
| _aidl_parcel.writeInt(height); |
| _aidl_parcel.writeString(name); |
| 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; |
| pfd = _aidl_parcel.readTypedObject(android.os.ParcelFileDescriptor.CREATOR); |
| if (_aidl_parcel.dataPosition() - _aidl_start_pos >= _aidl_parcelable_size) return; |
| width = _aidl_parcel.readInt(); |
| if (_aidl_parcel.dataPosition() - _aidl_start_pos >= _aidl_parcelable_size) return; |
| height = _aidl_parcel.readInt(); |
| if (_aidl_parcel.dataPosition() - _aidl_start_pos >= _aidl_parcelable_size) return; |
| name = _aidl_parcel.readString(); |
| } 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(pfd); |
| return _mask; |
| } |
| private int describeContents(Object _v) { |
| if (_v == null) return 0; |
| if (_v instanceof android.os.Parcelable) { |
| return ((android.os.Parcelable) _v).describeContents(); |
| } |
| return 0; |
| } |
| } |
| // Passes an event device node into the VM. The device will be grabbed (unusable from the host) |
| // and made available to the guest with the same configuration it shows on the host. |
| public static class EvDev implements android.os.Parcelable |
| { |
| public android.os.ParcelFileDescriptor pfd; |
| public static final android.os.Parcelable.Creator<EvDev> CREATOR = new android.os.Parcelable.Creator<EvDev>() { |
| @Override |
| public EvDev createFromParcel(android.os.Parcel _aidl_source) { |
| EvDev _aidl_out = new EvDev(); |
| _aidl_out.readFromParcel(_aidl_source); |
| return _aidl_out; |
| } |
| @Override |
| public EvDev[] newArray(int _aidl_size) { |
| return new EvDev[_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(pfd, _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; |
| pfd = _aidl_parcel.readTypedObject(android.os.ParcelFileDescriptor.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(pfd); |
| return _mask; |
| } |
| private int describeContents(Object _v) { |
| if (_v == null) return 0; |
| if (_v instanceof android.os.Parcelable) { |
| return ((android.os.Parcelable) _v).describeContents(); |
| } |
| return 0; |
| } |
| } |
| // Keyboard input |
| public static class Keyboard implements android.os.Parcelable |
| { |
| public android.os.ParcelFileDescriptor pfd; |
| public static final android.os.Parcelable.Creator<Keyboard> CREATOR = new android.os.Parcelable.Creator<Keyboard>() { |
| @Override |
| public Keyboard createFromParcel(android.os.Parcel _aidl_source) { |
| Keyboard _aidl_out = new Keyboard(); |
| _aidl_out.readFromParcel(_aidl_source); |
| return _aidl_out; |
| } |
| @Override |
| public Keyboard[] newArray(int _aidl_size) { |
| return new Keyboard[_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(pfd, _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; |
| pfd = _aidl_parcel.readTypedObject(android.os.ParcelFileDescriptor.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(pfd); |
| return _mask; |
| } |
| private int describeContents(Object _v) { |
| if (_v == null) return 0; |
| if (_v instanceof android.os.Parcelable) { |
| return ((android.os.Parcelable) _v).describeContents(); |
| } |
| return 0; |
| } |
| } |
| public static @interface Tag { |
| public static final int singleTouch = 0; |
| public static final int evDev = 1; |
| public static final int keyboard = 2; |
| } |
| } |