ptolemy.domains.sdf.lib
Class UpSample
java.lang.Object
ptolemy.kernel.util.NamedObj
ptolemy.kernel.InstantiableNamedObj
ptolemy.kernel.Entity
ptolemy.kernel.ComponentEntity
ptolemy.actor.AtomicActor
ptolemy.actor.TypedAtomicActor
ptolemy.domains.sdf.lib.SDFTransformer
ptolemy.domains.sdf.lib.UpSample
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, Actor, Executable, FiringsRecordable, Initializable, SequenceActor, TypedActor, Changeable, Debuggable, DebugListener, Derivable, Instantiable, ModelErrorHandler, MoMLExportable, Moveable, Nameable
public class UpSample
- extends SDFTransformer
This actor upsamples an input stream by an integer factor by inserting
tokens with value zero. The upsample factor is given by the
factor parameter. On each firing, this actor reads one
token from the input produces factor tokens on the output
port. All but one of these is a zero-valued token of the same type
as the input. The remaining one is the token read from the input.
The position of this remaining one is determined by the phase
parameter. This parameter has a value between 0 and factor-1.
If it is 0, then the input token is the first output token, followed
by zeros. If it is factor-1, then it is the last output.
Thus, if this actor is followed by the DownSample actor with the same
factor, and the two phase parameters have a sum of
factor-1, the combination has no effect.
By default, factor is 2, and phase is the expression
"factor-1". This means that by default, the input token that is read
is the last one produced at the output.
This actor is data polymorphic. It can accept any token
type on the input that supports the zero() method,
and it sends output tokens of that type.
- Since:
- Ptolemy II 1.0
- Version:
- $Id: UpSample.java 57040 2010-01-27 20:52:32Z cxh $
- Author:
- Steve Neuendorffer, Edward A. Lee
- See Also:
DownSample
,
Serialized Form
- Accepted Rating:
- Proposed Rating:
Field Summary |
Parameter |
factor
The number of output tokens to produced per input token read. |
Parameter |
phase
The phase of the output with respect to the input. |
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 |
UpSample(CompositeEntity container,
java.lang.String name)
Construct an actor with the given container and name. |
Method Summary |
void |
attributeChanged(Attribute attribute)
Ensure that the factor and phase parameters are both positive. |
void |
fire()
Consume the input Token and produce the same token on the output. |
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, preinitialize, 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, 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 |
factor
public Parameter factor
- The number of output tokens to produced per input token read.
This is an integer that defaults to 2 and must be greater than
zero.
phase
public Parameter phase
- The phase of the output with respect to the input.
This is an integer that defaults to factor-1 and must be
between 0 and factor-1. If phase = 0, the input
is the first output, while if phase = factor-1
then the input is the last output.
UpSample
public UpSample(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.
attributeChanged
public void attributeChanged(Attribute attribute)
throws IllegalActionException
- Ensure that the factor and phase parameters are both positive.
- Overrides:
attributeChanged
in class NamedObj
- Parameters:
attribute
- The attribute that has changed.
- Throws:
IllegalActionException
- If the parameters are out of range.
fire
public void fire()
throws IllegalActionException
- Consume the input Token and produce the same token on the output.
Then create a number of zero tokens of the same type as the
input token on the output port, so that output.tokenProductionRate
tokens are created in total. If there is not token on the input,
then this method throws a NoTokenException (which is a runtime
exception).
- Specified by:
fire
in interface Executable
- Overrides:
fire
in class AtomicActor
- Throws:
IllegalActionException
- If a runtime type conflict occurs.