|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object fr.emn.reactiveinput.AbstractDevice fr.emn.reactiveinput.devices.DMidiOut
NOT USED ANY MORE
Field Summary | |
In |
instrument
|
In |
on
|
Fields inherited from class fr.emn.reactiveinput.AbstractDevice |
currIndex, ins, outs |
Fields inherited from interface fr.emn.reactiveinput.Device |
AUTO_PROPERTIES |
Constructor Summary | |
DMidiOut()
|
|
DMidiOut(java.lang.String name,
javax.sound.midi.MidiDevice mididev)
|
Method Summary | |
void |
close()
Add closing code here if needed. |
Device |
copy()
Is isCopiable() returns true, copies the device by calling DeviceUtilities.defaultCopy(). |
boolean |
hasExternalOutput()
Specifies whether this device has external (implicit) output or not. |
Processor |
open(OpenContext context)
Subclass this method if you want to specialize data processing, or if you want to perform some initializations before running the device. |
protected void |
sendInit()
|
protected void |
sendNote(boolean on,
int note,
int velocity)
|
protected void |
sendProgramChange(int program)
|
void |
update()
Updates device's output values. |
Methods inherited from class fr.emn.reactiveinput.AbstractDevice |
addIn, addIn, addOut, doDisable, doEnable, finalize, getError, getIndex, getInfo, getIns, getName, getOuts, getProperties, hasExternalInput, init, insertAt, insertAtEnd, insertBefore, isCopiable, isEnabled, isOpenable, setEnabled, setInfo, setInfo, setLastError, setName |
Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public In instrument
public In on
Constructor Detail |
public DMidiOut()
public DMidiOut(java.lang.String name, javax.sound.midi.MidiDevice mididev)
Method Detail |
public Device copy()
AbstractDevice
Subclass this method if you want to provide another strategy.
copy
in interface Device
copy
in class AbstractDevice
public boolean hasExternalOutput()
AbstractDevice
Return false if the device has no border effects. Most of input and processing devices are in this case.
Return true if the device has border effects, such as graphical feedback, or control of some external value. Examples of devices with external output are application-interfacing devices and all user feedback devices.
This method can be used by the editor for the device's graphical representation. However there is at now no clear definition of what is external output.
hasExternalOutput
in interface Device
hasExternalOutput
in class AbstractDevice
public Processor open(OpenContext context)
AbstractDevice
By default, open() does nothing and returns the device itself as the Processor (or null if it is not openable): AbstractDevice implements both Device and Processor interfaces, so that you can add processing code directly into the device.
If you want to add specialization features, subclass this method to return a specific processor implementation depending on your device configuration.
Example :
public Processor getProcessor() {
if (super.open() == null)
return null;
// Select the right processor
if (in2.isValid()) {
return new twoParamProcessor(in1, in2, out);
else
return new oneParamProcessor(in1, out);
}
In this method, you may also perform all necessary pre-running initialization. If initialization fails, return null even if isOpenable() returns true.
In all cases, return null if isOpenable() returns false.
open
in interface Device
open
in class AbstractDevice
Processor
,
Device.open()
public void close()
AbstractDevice
close
in interface Device
close
in class AbstractDevice
public void update()
AbstractDevice
Subclass init() and update() methods if you want the device to process the data itself. Otherwise, subclass getProcessor() method to use extern processors.
update
in interface Processor
update
in class AbstractDevice
Processor.update()
protected void sendNote(boolean on, int note, int velocity)
protected void sendProgramChange(int program)
protected void sendInit()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |