ptolemy.vergil.actor.lib
Class LEDMatrix
java.lang.Object
ptolemy.kernel.util.NamedObj
ptolemy.kernel.InstantiableNamedObj
ptolemy.kernel.Entity
ptolemy.kernel.ComponentEntity
ptolemy.actor.AtomicActor
ptolemy.actor.TypedAtomicActor
ptolemy.vergil.actor.lib.LEDMatrix
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, Actor, Executable, FiringsRecordable, Initializable, TypedActor, Changeable, Debuggable, DebugListener, Derivable, Instantiable, ModelErrorHandler, MoMLExportable, Moveable, Nameable
public class LEDMatrix
- extends TypedAtomicActor
An actor that displays an array of LEDs. The array display only
one color, red. This actor has two inputs, row and column which
are integers that identify the row and column of the LED to possibly be
illuminated and a control input which determines whether the
LED is illuminated or not.
- Since:
- Ptolemy II 8.0
- Version:
- $Id: LEDMatrix.java 57044 2010-01-27 22:41:05Z cxh $
- Author:
- Christopher Brooks, Based on MicaLeds byElaine Cheong
- See Also:
- Serialized Form
- Accepted Rating:
- Proposed Rating:
Fields inherited from class ptolemy.kernel.util.NamedObj |
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS |
Constructor Summary |
LEDMatrix(CompositeEntity container,
java.lang.String name)
Construct an actor with the given container and name. |
Method Summary |
private void |
_init()
Create the LED Array. |
void |
fire()
Read a token from the row and column ports and illuminate that
led until the next fire. |
void |
preinitialize()
Create receivers. |
Methods inherited from class ptolemy.actor.AtomicActor |
_actorFiring, _actorFiring, addActorFiringListener, addInitializable, clone, connectionsChanged, createReceivers, declareDelayDependency, getCausalityInterface, getDirector, getExecutiveDirector, getManager, initialize, inputPortList, isFireFunctional, isStrict, iterate, newReceiver, outputPortList, postfire, prefire, pruneDependencies, recordFiring, removeActorFiringListener, removeDependency, removeInitializable, setContainer, stop, stopFire, terminate, wrapup |
Methods inherited from class ptolemy.kernel.ComponentEntity |
_adjustDeferrals, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, isAtomic, isOpaque, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName |
Methods inherited from class ptolemy.kernel.Entity |
_description, _exportMoMLContents, _removePort, _validateSettables, connectedPortList, connectedPorts, containedObjectsIterator, getAttribute, getPort, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts, setClassDefinition, uniqueName |
Methods inherited from class ptolemy.kernel.util.NamedObj |
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _propagateValue, _recordDecoratedAttributes, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, attributeChanged, attributeList, attributeList, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getFullName, getModelErrorHandler, getName, getName, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, propagateValue, propagateValues, removeChangeListener, removeDebugListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, validateSettables, workspace |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
column
public TypedIOPort column
- The column of the LED to be illuminated. The columns are 0-based,
to address the first column, the value of this port should be 0.
The token type is integer.
control
public TypedIOPort control
- True if the LED is to be illuminated. The token type is Boolean.
row
public TypedIOPort row
- The row of the LED to be illuminated. The columns are 0-based,
to address the first row, the value of this port should be 0.
The token type is integer.
columns
public Parameter columns
- The number of columns. The number must be a positive integer,
the initial default value is 10.
rows
public Parameter rows
- The number of rows. The number must be a positive integer,
the initial default value is 10.
_leds
private RectangleAttribute[][] _leds
- Graphical icons for LED Array;
_ledArray_icon
EditorIcon _ledArray_icon
- The icon.
LEDMatrix
public LEDMatrix(CompositeEntity container,
java.lang.String name)
throws NameDuplicationException,
IllegalActionException
- Construct an actor with the given container and name.
- Parameters:
container
- The container.name
- The name of this actor.
- Throws:
IllegalActionException
- If the actor cannot be contained
by the proposed container.
NameDuplicationException
- If the container already has an
actor with this name.
fire
public void fire()
throws IllegalActionException
- Read a token from the row and column ports and illuminate that
led until the next fire.
- Specified by:
fire
in interface Executable
- Overrides:
fire
in class AtomicActor
- Throws:
IllegalActionException
- If the row or column ports
cannot be read.
preinitialize
public void preinitialize()
throws IllegalActionException
- Description copied from class:
AtomicActor
- Create receivers. Derived classes
can override this method to perform additional initialization
functions, but they should call this base class methods or
create the receivers themselves.
This method gets executed exactly once prior to any other
action methods. It cannot produce output data since type
resolution is typically not yet done. It also gets invoked
prior to any static scheduling that might occur in the domain,
so it can change scheduling information.
- Specified by:
preinitialize
in interface Initializable
- Overrides:
preinitialize
in class AtomicActor
- Throws:
IllegalActionException
- Not thrown in this base class.
_init
private void _init()
throws IllegalActionException,
NameDuplicationException
- Create the LED Array.
- Throws:
IllegalActionException
NameDuplicationException