ptolemy.actor.lib
Class Reader
java.lang.Object
ptolemy.kernel.util.NamedObj
ptolemy.kernel.InstantiableNamedObj
ptolemy.kernel.Entity
ptolemy.kernel.ComponentEntity
ptolemy.actor.AtomicActor
ptolemy.actor.TypedAtomicActor
ptolemy.actor.lib.Source
ptolemy.actor.lib.Reader
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, Actor, Executable, FiringsRecordable, Initializable, TypedActor, Changeable, Debuggable, DebugListener, Derivable, Instantiable, ModelErrorHandler, MoMLExportable, Moveable, Nameable
Deprecated. Use ExpressionReader instead.
public class Reader
- extends Source
This actor reads tokens from an URL, and output them. Each entry in
the file corresponds to one iteration. If there are multiple fires in
the iteration, the same token will be repeated. This actor has a
multiport, where each port corresponds to one column in the data file.
The file format at the URL is assumed as the following. A newline
character separates the rows, and a tab or a space character separates
the columns.
The sourceURL parameter should be set to the name of the
file, specified as a fully qualified URL. If the sourceURL
parameter is an empty string, then the System.in is used for input.
It is possible to load a file from the local file system by using the
prefix "file://" instead of "http://". Relative file paths are
allowed. To specify a file relative to the current directory, use
"../" or "./". For example, if the current directory contains a file
called "test.txt", then sourceURL should be set to
"file:./test.txt". If the parent directory contains a file called
"test.txt", then sourceURL should be set to
"file:../test.txt". To reference the file test.txt, located at
"/tmp/test.txt", sourceURL should be set to
"file:///tmp/test.txt" The default value is "file:///tmp/test.txt".
FIXME: The type of the output ports is set to Double for now.
It should read a line in the prefire() and refer the type
from there.
FIXME: Reader should read in expressions and serialized tokens
- Since:
- Ptolemy II 1.0
- Version:
- $Id: Reader.java,v 1.47 2007/12/06 18:18:01 cxh Exp $
- Author:
- Jie Liu
- 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 |
Reader(CompositeEntity container,
java.lang.String name)
Deprecated. Construct an actor with the given container and name. |
|
Method Summary |
void |
attributeChanged(Attribute attribute)
Deprecated. If the specified attribute is URL, then close
the current file (if there is one) and open the new one. |
void |
fire()
Deprecated. Output the data read in the prefire. |
void |
initialize()
Deprecated. Open the file at the URL, and set the width of the output. |
boolean |
prefire()
Deprecated. Read one row from the input and prepare for output them. |
void |
setReader(java.io.BufferedReader reader)
Deprecated. Set the reader. |
void |
wrapup()
Deprecated. Close the reader if there is one. |
| Methods inherited from class ptolemy.actor.AtomicActor |
_actorFiring, _actorFiring, _createReceivers, addActorFiringListener, addInitializable, clone, connectionsChanged, getDirector, getExecutiveDirector, getFunctionDependency, getManager, inputPortList, isFireFunctional, isStrict, iterate, newReceiver, outputPortList, postfire, preinitialize, pruneDependencies, recordFiring, removeActorFiringListener, removeDependency, removeInitializable, setContainer, stop, stopFire, terminate |
| 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, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, attributeList, attributeList, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttributes, getChangeListeners, getClassName, getDerivedLevel, getDerivedList, getDisplayName, getFullName, getModelErrorHandler, getName, getName, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, 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 |
sourceURL
public Parameter sourceURL
- Deprecated.
- The URL of the file to read from. This parameter contains
a StringToken. By default, it contains an empty string, which
is interpreted to mean that input should be directed to the
standard input.
FIXME: Should this bring up a dialog box to type (or select) a URL?
refresh
public Parameter refresh
- Deprecated.
- Refresh between each readings. Default is false.
Reader
public Reader(CompositeEntity container,
java.lang.String name)
throws IllegalActionException,
NameDuplicationException
- Deprecated.
- 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.
attributeChanged
public void attributeChanged(Attribute attribute)
throws IllegalActionException
- Deprecated.
- If the specified attribute is URL, then close
the current file (if there is one) and open the new one.
- Overrides:
attributeChanged in class NamedObj
- Parameters:
attribute - The attribute that has changed.
- Throws:
IllegalActionException - If the specified attribute
is URL and the file cannot be opened.
fire
public void fire()
throws IllegalActionException
- Deprecated.
- Output the data read in the prefire.
- Specified by:
fire in interface Executable- Overrides:
fire in class Source
- Throws:
IllegalActionException - If there's no director.
initialize
public void initialize()
throws IllegalActionException
- Deprecated.
- Open the file at the URL, and set the width of the output.
- Specified by:
initialize in interface Initializable- Overrides:
initialize in class AtomicActor
- Throws:
IllegalActionException - Not thrown in this base class
prefire
public boolean prefire()
throws IllegalActionException
- Deprecated.
- Read one row from the input and prepare for output them.
- Specified by:
prefire in interface Executable- Overrides:
prefire in class Source
- Returns:
- True, unless the trigger input is connected
and has no input.
- Throws:
IllegalActionException - If an IO error occurs.
setReader
public void setReader(java.io.BufferedReader reader)
throws IllegalActionException
- Deprecated.
- Set the reader. If there was a previous reader, close it.
To set standard input, call this method with argument null.
- Parameters:
reader - The reader to read to.
- Throws:
IllegalActionException - If an IO error occurs.
wrapup
public void wrapup()
throws IllegalActionException
- Deprecated.
- Close the reader if there is one.
- Specified by:
wrapup in interface Initializable- Overrides:
wrapup in class AtomicActor
- Throws:
IllegalActionException - If an IO error occurs.