Class: PortMIDIPort

Environment: Siren
Superclass: Siren.MIDIPort
Category: MusicIO-MIDI
Instance variables: driver
Imports: private MIDICommands.* private MIDIioctls.*
private GeneralMIDIMap.* private GeneralMIDIDrums.*

An instance of PortMIDIPort is the interface to the external driver that talks to the PortMIDI interface.

Instance Variables:
driver my I/O interface driver

Shared Variables:
Devices unised
Streams the map between Siren devices and interface ports

open/close

close
Close MIDI.

close: stream
Close MIDI.

open
Open the MIDI driver -- start the lower-level driver up.

openInput: dev
Open the MIDI driver -- start the lower-level driver up.

openOutput: dev
Open the MIDI driver -- start the lower-level driver up.

terminate
Close MIDI.

ioctl

readLoop
The MIDI driver input process loop.

startControllerCaching
Start caching MIDI controller in the driver.

stopControllerCaching
Stop caching MIDI controller in the driver.

initialize release

initialize
Setup the receiver's instance variables.

release
Release--break and dependencies on the error value.

read/write

playOff: aPitch amp: anAmp voice: aVoice
Play the argument on the receiver--no duration-->no note-off.

playOff: streamID pitch: pitch amp: amp voice: voice
Play the argument on the receiver.

playOn: aPitch amp: anAmp voice: aVoice
Play the argument on the receiver--no duration-->no note-off.

playOn: streamID pitch: pitch amp: amp voice: voice
Play the argument on the receiver--no duration-->no note-off.

put: streamID data: data length: size
Send the argument (a ByteArray for historical reasons) to the receiver now.

put: data length: size
Send the argument (a ByteArray for historical reasons) to the receiver now.

readControllersFrom: lo to: hi into: array
Read a range of controllers

accessing

isActive
Answer whether the receiver is active.

MetaClass: PortMIDIPort class

examples

testANote
Open MIDI, play a note.

class initialization

initializeData
Set up the class defaults.