|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectfr.emn.reactiveinput.AbstractDevice
fr.emn.reactiveinput.MissingDevice
A device that was not found. Not executable.
| Field Summary |
| Fields inherited from class fr.emn.reactiveinput.AbstractDevice |
currIndex, ins, outs |
| Fields inherited from interface fr.emn.reactiveinput.Device |
AUTO_PROPERTIES |
| Constructor Summary | |
MissingDevice(java.lang.String name)
|
|
| Method Summary | |
In |
addAbsentIn(java.lang.String name)
Adds an inSlot. |
Out |
addAbsentOut(java.lang.String name)
Adds an outSlot to the device. |
java.lang.String |
getError()
Subclass this method to return the current error message (FAILED state). |
void |
init()
Initializes device's output values. |
boolean |
isOpenable()
Returns true if the device can be opened. |
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. |
void |
update()
Updates device's output values. |
| Methods inherited from class fr.emn.reactiveinput.AbstractDevice |
addIn, addIn, addOut, close, copy, doDisable, doEnable, finalize, getIndex, getInfo, getIns, getName, getOuts, getProperties, hasExternalInput, hasExternalOutput, insertAt, insertAtEnd, insertBefore, isCopiable, isEnabled, setEnabled, setInfo, setInfo, setLastError, setName |
| Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public MissingDevice(java.lang.String name)
| Method Detail |
public final In addAbsentIn(java.lang.String name)
public final Out addAbsentOut(java.lang.String name)
public java.lang.String getError()
AbstractDevice
getError in interface DevicegetError in class AbstractDevicepublic void init()
AbstractDeviceSubclass init() and update() methods if you want the device to process the data itself. Otherwise, subclass getProcessor() method to use extern processors. By default, this method calls update(). Subclass this method if you'd like to make a specific initialization routine.
init in interface Processorinit in class AbstractDeviceProcessor.init()public boolean isOpenable()
AbstractDeviceBy default, returns true if all obligatory input slots are valid. Subclass this method to add more conditions.
isOpenable in interface DeviceisOpenable in class AbstractDevicepublic Processor open(OpenContext context)
AbstractDeviceBy 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 Deviceopen in class AbstractDeviceProcessor,
Device.open()public void update()
AbstractDeviceSubclass 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 Processorupdate in class AbstractDeviceProcessor.update()
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||