Package ptolemy.domains.de.lib
Class NonInterruptibleTimer
- java.lang.Object
-
- ptolemy.kernel.util.NamedObj
-
- ptolemy.kernel.InstantiableNamedObj
-
- ptolemy.kernel.Entity<T>
-
- ptolemy.kernel.ComponentEntity<T>
-
- ptolemy.actor.AtomicActor<TypedIOPort>
-
- ptolemy.actor.TypedAtomicActor
-
- ptolemy.domains.de.kernel.DEActor
-
- ptolemy.domains.de.lib.DETransformer
-
- ptolemy.domains.de.lib.Timer
-
- ptolemy.domains.de.lib.NonInterruptibleTimer
-
- All Implemented Interfaces:
java.lang.Cloneable
,Actor
,Executable
,FiringsRecordable
,Initializable
,SequenceActor
,TimedActor
,TypedActor
,Changeable
,Debuggable
,DebugListener
,Derivable
,Instantiable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
@Deprecated public class NonInterruptibleTimer extends Timer
Deprecated.Use ptolemy.actor.lib.ResettableTimer.A NonInterruptibleTimer actor works similar to theTimer
actor, except that if a NonInterruptibleTimer actor has not finished processing the previous input, a new input has to be delayed for processing. In other words, it can not be interrupted to respond new inputs. Instead, the new inputs will be queued and processed in a first come first serve (FCFS) fashion. This actor extends the Timer actor.The key difference between the NonInterruptibleTimer actor and the Server actor is how the service time is specified. In the NonInterruptibleTimer actor, whenever an input arrives, the value of the input token specifies the service time. This actor will guarantee that much service time to be given to that input. In the Server actor, service times for inputs ar decided by the ServiceTime parameter, which may change any time during an execution. In particular, how much service time an input actually gets is decided the value of the ServiceTime parameter at the time the server is ready to serve that input.
- Since:
- Ptolemy II 4.1
- Version:
- $Id$
- Author:
- Haiyang Zheng
- See Also:
Timer
- Pt.AcceptedRating:
- Red (hyzheng)
- Pt.ProposedRating:
- Yellow (hyzheng)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ptolemy.kernel.Entity
Entity.ContainedObjectsIterator
-
-
Field Summary
-
Fields inherited from class ptolemy.domains.de.lib.Timer
_causalityInterface, _currentInput, _currentOutput, _delay, _delayedOutputTokens, value
-
Fields inherited from class ptolemy.domains.de.lib.DETransformer
input, output
-
Fields inherited from class ptolemy.actor.TypedAtomicActor
_typesValid
-
Fields inherited from class ptolemy.actor.AtomicActor
_actorFiringListeners, _initializables, _notifyingActorFiring, _stopRequested
-
Fields inherited from class ptolemy.kernel.util.NamedObj
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _deferChangeRequests, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
-
Fields inherited from interface ptolemy.actor.Executable
COMPLETED, NOT_READY, STOP_ITERATING
-
-
Constructor Summary
Constructors Constructor Description NonInterruptibleTimer(CompositeEntity container, java.lang.String name)
Deprecated.Construct an actor with the specified container and name.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
fire()
Deprecated.Read one token from the input.void
initialize()
Deprecated.Reset the states of the server to indicate that the timer is not processing any inputs.boolean
postfire()
Deprecated.If there are delayed inputs that are not processed and the timer is not busy, begin processing the earliest input and schedule a future firing to produce it.-
Methods inherited from class ptolemy.domains.de.lib.Timer
clone, declareDelayDependency
-
Methods inherited from class ptolemy.actor.TypedAtomicActor
_containedTypeConstraints, _customTypeConstraints, _defaultTypeConstraints, _fireAt, _fireAt, attributeTypeChanged, clone, isBackwardTypeInferenceEnabled, newPort, typeConstraintList, typeConstraints
-
Methods inherited from class ptolemy.actor.AtomicActor
_actorFiring, _actorFiring, _declareDelayDependency, addActorFiringListener, addInitializable, connectionsChanged, createReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, isFireFunctional, isStrict, iterate, newReceiver, outputPortList, prefire, 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
_addPort, _description, _exportMoMLContents, _removePort, _validateSettables, connectedPortList, connectedPorts, containedObjectsIterator, getAttribute, getPort, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts, setClassDefinition, uniqueName
-
Methods inherited from class ptolemy.kernel.InstantiableNamedObj
_setParent, exportMoML, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition
-
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _containedDecorators, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _executeChangeRequests, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, addHierarchyListener, attributeChanged, attributeDeleted, attributeList, attributeList, decorators, 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, notifyOfNameChange, propagateValue, propagateValues, removeAttribute, removeChangeListener, removeDebugListener, removeHierarchyListener, 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
-
Methods inherited from interface ptolemy.actor.Actor
createReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortList
-
Methods inherited from interface ptolemy.kernel.util.Derivable
getDerivedLevel, getDerivedList, propagateValue
-
Methods inherited from interface ptolemy.actor.Executable
isFireFunctional, isStrict, iterate, prefire, stop, stopFire, terminate
-
Methods inherited from interface ptolemy.actor.Initializable
addInitializable, preinitialize, removeInitializable, wrapup
-
Methods inherited from interface ptolemy.kernel.util.Nameable
description, getContainer, getDisplayName, getFullName, getName, getName, setName
-
-
-
-
Constructor Detail
-
NonInterruptibleTimer
public NonInterruptibleTimer(CompositeEntity container, java.lang.String name) throws NameDuplicationException, IllegalActionException
Deprecated.Construct an actor with the specified container and name.- Parameters:
container
- The container.name
- The name of this actor.- Throws:
IllegalActionException
- If the entity cannot be contained by the proposed container.NameDuplicationException
- If the container already has an actor with this name.
-
-
Method Detail
-
fire
public void fire() throws IllegalActionException
Deprecated.Read one token from the input. Send out a token that is scheduled to produce at the current time to the output.- Specified by:
fire
in interfaceExecutable
- Overrides:
fire
in classTimer
- Throws:
IllegalActionException
- If the delay value is negative, or this actor can not send tokens to ports, or this actor can not get tokens from ports.
-
initialize
public void initialize() throws IllegalActionException
Deprecated.Reset the states of the server to indicate that the timer is not processing any inputs.- Specified by:
initialize
in interfaceInitializable
- Overrides:
initialize
in classTimer
- Throws:
IllegalActionException
- If the base class throws it.
-
postfire
public boolean postfire() throws IllegalActionException
Deprecated.If there are delayed inputs that are not processed and the timer is not busy, begin processing the earliest input and schedule a future firing to produce it.- Specified by:
postfire
in interfaceExecutable
- Overrides:
postfire
in classTimer
- Returns:
- True if execution can continue into the next iteration.
- Throws:
IllegalActionException
- If there is no director or can not schedule future firings to handle delayed input events.
-
-