Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2a94e711 authored by Mike Lockwood's avatar Mike Lockwood Committed by Android Git Automerger
Browse files

am 2b3f80c8: am a29558c5: am 62975ae4: Merge "MidiManager: Address API Council...

am 2b3f80c8: am a29558c5: am 62975ae4: Merge "MidiManager: Address API Council feedback:" into mnc-dev

* commit '2b3f80c8':
  MidiManager: Address API Council feedback:
parents 536c0fcb 2b3f80c8
Loading
Loading
Loading
Loading
+18 −20
Original line number Diff line number Diff line
@@ -17261,7 +17261,7 @@ package android.media.midi {
    method public int getId();
    method public int getInputPortCount();
    method public int getOutputPortCount();
    method public android.media.midi.MidiDeviceInfo.PortInfo[] getPortList();
    method public android.media.midi.MidiDeviceInfo.PortInfo[] getPorts();
    method public android.os.Bundle getProperties();
    method public int getType();
    method public boolean isPrivate();
@@ -17309,22 +17309,17 @@ package android.media.midi {
  public final class MidiInputPort extends android.media.midi.MidiReceiver implements java.io.Closeable {
    method public void close() throws java.io.IOException;
    method public final int getPortNumber();
    method public void onReceive(byte[], int, int, long) throws java.io.IOException;
    method public void onSend(byte[], int, int, long) throws java.io.IOException;
  }
  public final class MidiManager {
    method public android.media.midi.MidiDeviceInfo[] getDeviceList();
    method public void openBluetoothDevice(android.bluetooth.BluetoothDevice, android.media.midi.MidiManager.BluetoothOpenCallback, android.os.Handler);
    method public void openDevice(android.media.midi.MidiDeviceInfo, android.media.midi.MidiManager.DeviceOpenCallback, android.os.Handler);
    method public android.media.midi.MidiDeviceInfo[] getDevices();
    method public void openBluetoothDevice(android.bluetooth.BluetoothDevice, android.media.midi.MidiManager.OnDeviceOpenedListener, android.os.Handler);
    method public void openDevice(android.media.midi.MidiDeviceInfo, android.media.midi.MidiManager.OnDeviceOpenedListener, android.os.Handler);
    method public void registerDeviceCallback(android.media.midi.MidiManager.DeviceCallback, android.os.Handler);
    method public void unregisterDeviceCallback(android.media.midi.MidiManager.DeviceCallback);
  }
  public static abstract class MidiManager.BluetoothOpenCallback {
    ctor public MidiManager.BluetoothOpenCallback();
    method public abstract void onDeviceOpened(android.bluetooth.BluetoothDevice, android.media.midi.MidiDevice);
  }
  public static class MidiManager.DeviceCallback {
    ctor public MidiManager.DeviceCallback();
    method public void onDeviceAdded(android.media.midi.MidiDeviceInfo);
@@ -17332,31 +17327,34 @@ package android.media.midi {
    method public void onDeviceStatusChanged(android.media.midi.MidiDeviceStatus);
  }
  public static abstract class MidiManager.DeviceOpenCallback {
    ctor public MidiManager.DeviceOpenCallback();
    method public abstract void onDeviceOpened(android.media.midi.MidiDeviceInfo, android.media.midi.MidiDevice);
  public static abstract interface MidiManager.OnDeviceOpenedListener {
    method public abstract void onDeviceOpened(android.media.midi.MidiDevice);
  }
  public final class MidiOutputPort extends android.media.midi.MidiSender implements java.io.Closeable {
    method public void close() throws java.io.IOException;
    method public void connect(android.media.midi.MidiReceiver);
    method public void disconnect(android.media.midi.MidiReceiver);
    method public final int getPortNumber();
    method public void onConnect(android.media.midi.MidiReceiver);
    method public void onDisconnect(android.media.midi.MidiReceiver);
  }
  public abstract class MidiReceiver {
    ctor public MidiReceiver();
    ctor public MidiReceiver(int);
    method public void flush() throws java.io.IOException;
    method public int getMaxMessageSize();
    method public abstract void onReceive(byte[], int, int, long) throws java.io.IOException;
    method public final int getMaxMessageSize();
    method public void onFlush() throws java.io.IOException;
    method public abstract void onSend(byte[], int, int, long) throws java.io.IOException;
    method public void send(byte[], int, int) throws java.io.IOException;
    method public void sendWithTimestamp(byte[], int, int, long) throws java.io.IOException;
    method public void send(byte[], int, int, long) throws java.io.IOException;
  }
  public abstract class MidiSender {
    ctor public MidiSender();
    method public abstract void connect(android.media.midi.MidiReceiver);
    method public abstract void disconnect(android.media.midi.MidiReceiver);
    method public void connect(android.media.midi.MidiReceiver);
    method public void disconnect(android.media.midi.MidiReceiver);
    method public abstract void onConnect(android.media.midi.MidiReceiver);
    method public abstract void onDisconnect(android.media.midi.MidiReceiver);
  }
}
+18 −20
Original line number Diff line number Diff line
@@ -18564,7 +18564,7 @@ package android.media.midi {
    method public int getId();
    method public int getInputPortCount();
    method public int getOutputPortCount();
    method public android.media.midi.MidiDeviceInfo.PortInfo[] getPortList();
    method public android.media.midi.MidiDeviceInfo.PortInfo[] getPorts();
    method public android.os.Bundle getProperties();
    method public int getType();
    method public boolean isPrivate();
@@ -18612,22 +18612,17 @@ package android.media.midi {
  public final class MidiInputPort extends android.media.midi.MidiReceiver implements java.io.Closeable {
    method public void close() throws java.io.IOException;
    method public final int getPortNumber();
    method public void onReceive(byte[], int, int, long) throws java.io.IOException;
    method public void onSend(byte[], int, int, long) throws java.io.IOException;
  }
  public final class MidiManager {
    method public android.media.midi.MidiDeviceInfo[] getDeviceList();
    method public void openBluetoothDevice(android.bluetooth.BluetoothDevice, android.media.midi.MidiManager.BluetoothOpenCallback, android.os.Handler);
    method public void openDevice(android.media.midi.MidiDeviceInfo, android.media.midi.MidiManager.DeviceOpenCallback, android.os.Handler);
    method public android.media.midi.MidiDeviceInfo[] getDevices();
    method public void openBluetoothDevice(android.bluetooth.BluetoothDevice, android.media.midi.MidiManager.OnDeviceOpenedListener, android.os.Handler);
    method public void openDevice(android.media.midi.MidiDeviceInfo, android.media.midi.MidiManager.OnDeviceOpenedListener, android.os.Handler);
    method public void registerDeviceCallback(android.media.midi.MidiManager.DeviceCallback, android.os.Handler);
    method public void unregisterDeviceCallback(android.media.midi.MidiManager.DeviceCallback);
  }
  public static abstract class MidiManager.BluetoothOpenCallback {
    ctor public MidiManager.BluetoothOpenCallback();
    method public abstract void onDeviceOpened(android.bluetooth.BluetoothDevice, android.media.midi.MidiDevice);
  }
  public static class MidiManager.DeviceCallback {
    ctor public MidiManager.DeviceCallback();
    method public void onDeviceAdded(android.media.midi.MidiDeviceInfo);
@@ -18635,31 +18630,34 @@ package android.media.midi {
    method public void onDeviceStatusChanged(android.media.midi.MidiDeviceStatus);
  }
  public static abstract class MidiManager.DeviceOpenCallback {
    ctor public MidiManager.DeviceOpenCallback();
    method public abstract void onDeviceOpened(android.media.midi.MidiDeviceInfo, android.media.midi.MidiDevice);
  public static abstract interface MidiManager.OnDeviceOpenedListener {
    method public abstract void onDeviceOpened(android.media.midi.MidiDevice);
  }
  public final class MidiOutputPort extends android.media.midi.MidiSender implements java.io.Closeable {
    method public void close() throws java.io.IOException;
    method public void connect(android.media.midi.MidiReceiver);
    method public void disconnect(android.media.midi.MidiReceiver);
    method public final int getPortNumber();
    method public void onConnect(android.media.midi.MidiReceiver);
    method public void onDisconnect(android.media.midi.MidiReceiver);
  }
  public abstract class MidiReceiver {
    ctor public MidiReceiver();
    ctor public MidiReceiver(int);
    method public void flush() throws java.io.IOException;
    method public int getMaxMessageSize();
    method public abstract void onReceive(byte[], int, int, long) throws java.io.IOException;
    method public final int getMaxMessageSize();
    method public void onFlush() throws java.io.IOException;
    method public abstract void onSend(byte[], int, int, long) throws java.io.IOException;
    method public void send(byte[], int, int) throws java.io.IOException;
    method public void sendWithTimestamp(byte[], int, int, long) throws java.io.IOException;
    method public void send(byte[], int, int, long) throws java.io.IOException;
  }
  public abstract class MidiSender {
    ctor public MidiSender();
    method public abstract void connect(android.media.midi.MidiReceiver);
    method public abstract void disconnect(android.media.midi.MidiReceiver);
    method public void connect(android.media.midi.MidiReceiver);
    method public void disconnect(android.media.midi.MidiReceiver);
    method public abstract void onConnect(android.media.midi.MidiReceiver);
    method public abstract void onDisconnect(android.media.midi.MidiReceiver);
  }
}
+8 −16
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
 * This class subclasses {@link android.media.midi.MidiReceiver} and dispatches any data it receives
 * to its receiver list. Any receivers that throw an exception upon receiving data will
 * be automatically removed from the receiver list, but no IOException will be returned
 * from the dispatcher's {@link android.media.midi.MidiReceiver#onReceive} in that case.
 * from the dispatcher's {@link android.media.midi.MidiReceiver#onSend} in that case.
 */
public final class MidiDispatcher extends MidiReceiver {

@@ -35,21 +35,13 @@ public final class MidiDispatcher extends MidiReceiver {
            = new CopyOnWriteArrayList<MidiReceiver>();

    private final MidiSender mSender = new MidiSender() {
        /**
         * Called to connect a {@link android.media.midi.MidiReceiver} to the sender
         *
         * @param receiver the receiver to connect
         */
        public void connect(MidiReceiver receiver) {
        @Override
        public void onConnect(MidiReceiver receiver) {
            mReceivers.add(receiver);
        }

        /**
         * Called to disconnect a {@link android.media.midi.MidiReceiver} from the sender
         *
         * @param receiver the receiver to disconnect
         */
        public void disconnect(MidiReceiver receiver) {
        @Override
        public void onDisconnect(MidiReceiver receiver) {
            mReceivers.remove(receiver);
        }
    };
@@ -73,10 +65,10 @@ public final class MidiDispatcher extends MidiReceiver {
    }

    @Override
    public void onReceive(byte[] msg, int offset, int count, long timestamp) throws IOException {
    public void onSend(byte[] msg, int offset, int count, long timestamp) throws IOException {
       for (MidiReceiver receiver : mReceivers) {
            try {
                receiver.sendWithTimestamp(msg, offset, count, timestamp);
                receiver.send(msg, offset, count, timestamp);
            } catch (IOException e) {
                // if the receiver fails we remove the receiver but do not propagate the exception
                mReceivers.remove(receiver);
@@ -85,7 +77,7 @@ public final class MidiDispatcher extends MidiReceiver {
    }

    @Override
    public void flush() throws IOException {
    public void onFlush() throws IOException {
       for (MidiReceiver receiver : mReceivers) {
            receiver.flush();
       }
+2 −2
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@ public class MidiEventScheduler extends EventScheduler {
         * time.
         */
        @Override
        public void onReceive(byte[] msg, int offset, int count, long timestamp)
        public void onSend(byte[] msg, int offset, int count, long timestamp)
                throws IOException {
            MidiEvent event = createScheduledEvent(msg, offset, count, timestamp);
            if (event != null) {
@@ -45,7 +45,7 @@ public class MidiEventScheduler extends EventScheduler {
        }

        @Override
        public void flush() {
        public void onFlush() {
            MidiEventScheduler.this.flush();
        }
    }
+7 −7
Original line number Diff line number Diff line
@@ -54,10 +54,10 @@ public class MidiFramer extends MidiReceiver {
    }

    /*
     * @see android.midi.MidiReceiver#onReceive(byte[], int, int, long)
     * @see android.midi.MidiReceiver#onSend(byte[], int, int, long)
     */
    @Override
    public void onReceive(byte[] data, int offset, int count, long timestamp)
    public void onSend(byte[] data, int offset, int count, long timestamp)
            throws IOException {
        // Log.i(TAG, formatMidiData(data, offset, count));
        int sysExStartOffset = (mInSysEx ? offset : -1);
@@ -77,7 +77,7 @@ public class MidiFramer extends MidiReceiver {
                    } else if (b == 0xF7 /* SysEx End */) {
                        // Log.i(TAG, "SysEx End");
                        if (mInSysEx) {
                            mReceiver.sendWithTimestamp(data, sysExStartOffset,
                            mReceiver.send(data, sysExStartOffset,
                                offset - sysExStartOffset + 1, timestamp);
                            mInSysEx = false;
                            sysExStartOffset = -1;
@@ -91,11 +91,11 @@ public class MidiFramer extends MidiReceiver {
                } else { // real-time?
                    // Single byte message interleaved with other data.
                    if (mInSysEx) {
                        mReceiver.sendWithTimestamp(data, sysExStartOffset,
                        mReceiver.send(data, sysExStartOffset,
                                offset - sysExStartOffset, timestamp);
                        sysExStartOffset = offset + 1;
                    }
                    mReceiver.sendWithTimestamp(data, offset, 1, timestamp);
                    mReceiver.send(data, offset, 1, timestamp);
                }
            } else { // data byte
                // Save SysEx data for SysEx End marker or end of buffer.
@@ -105,7 +105,7 @@ public class MidiFramer extends MidiReceiver {
                        if (mRunningStatus != 0) {
                            mBuffer[0] = (byte) mRunningStatus;
                        }
                        mReceiver.sendWithTimestamp(mBuffer, 0, mCount, timestamp);
                        mReceiver.send(mBuffer, 0, mCount, timestamp);
                        mNeeded = MidiConstants.getBytesPerMessage(mBuffer[0]) - 1;
                        mCount = 1;
                    }
@@ -116,7 +116,7 @@ public class MidiFramer extends MidiReceiver {

        // send any accumulatedSysEx data
        if (sysExStartOffset >= 0 && sysExStartOffset < offset) {
            mReceiver.sendWithTimestamp(data, sysExStartOffset,
            mReceiver.send(data, sysExStartOffset,
                    offset - sysExStartOffset, timestamp);
        }
    }
Loading