|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectptolemy.kernel.util.NamedObj
ptolemy.kernel.util.Attribute
ptolemy.actor.sched.Scheduler
ptolemy.domains.sdf.kernel.BaseSDFScheduler
public abstract class BaseSDFScheduler
This class factors code out of the SDF domain, for use in different schedulers, so that they can be implemented in a consistent fashion.
Red (neuendor) |
Red (neuendor) |
Nested Class Summary |
---|
Nested classes/interfaces inherited from class ptolemy.kernel.util.NamedObj |
---|
NamedObj.ContainedObjectsIterator |
Field Summary | |
---|---|
protected static boolean |
VERBOSE
If true, then print verbose messages. |
Fields inherited from class ptolemy.actor.sched.Scheduler |
---|
_DEFAULT_SCHEDULER_NAME |
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 | |
---|---|
BaseSDFScheduler()
Construct a scheduler with no container(director) in the default workspace, the name of the scheduler is "Scheduler". |
|
BaseSDFScheduler(Director container,
java.lang.String name)
Construct a scheduler in the given container with the given name. |
|
BaseSDFScheduler(Workspace workspace)
Construct a scheduler in the given workspace with the name "Scheduler". |
Method Summary | |
---|---|
protected void |
_declareDependency(ConstVariableModelAnalysis analysis,
Port port,
java.lang.String name,
java.util.List dependents)
Add a DependencyDeclaration (with the name "_SDFRateDependencyDeclaration") to the variable with the given name in the given port that declares the variable is dependent on the given list of variables. |
protected void |
_saveBufferSizes(java.util.Map minimumBufferSizes)
Create and set a parameter in each relation according to the buffer sizes calculated for this system. |
protected void |
_saveContainerRates(java.util.Map externalRates)
Push the rates calculated for this system up to the contained Actor, but only if the ports do not have a set rates. |
protected void |
_saveFiringCounts(java.util.Map entityToFiringsPerIteration)
Create and set a parameter in each actor according to the number of times it will fire in one execution of the schedule. |
abstract void |
declareRateDependency()
Declare the rate dependency on any external ports of the model. |
Methods inherited from class ptolemy.actor.sched.Scheduler |
---|
_getSchedule, clone, getSchedule, isValid, setContainer, setValid |
Methods inherited from class ptolemy.kernel.util.Attribute |
---|
_checkContainer, _getContainedObject, _propagateExistence, getContainer, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, setName, updateContent |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected static final boolean VERBOSE
Constructor Detail |
---|
public BaseSDFScheduler()
public BaseSDFScheduler(Workspace workspace)
workspace
- Object for synchronization and version tracking.public BaseSDFScheduler(Director container, java.lang.String name) throws IllegalActionException, NameDuplicationException
container
- The container.name
- The name of this attribute.
IllegalActionException
- If the attribute is not of an
acceptable class for the container, or if the name contains a period.
NameDuplicationException
- If the name coincides with
an attribute already in the container.Method Detail |
---|
public abstract void declareRateDependency() throws IllegalActionException
IllegalActionException
- If there is a problem setting
the rate dependency on an external port.protected void _declareDependency(ConstVariableModelAnalysis analysis, Port port, java.lang.String name, java.util.List dependents) throws IllegalActionException
analysis
- The ConstVariableModelAnalysisport
- The port that gets the DependencyDeclaration.name
- The name of the DependencyDeclaration.dependents
- The dependents.
IllegalActionException
- If there is a problem setting
the rate dependency on a portprotected void _saveBufferSizes(java.util.Map minimumBufferSizes)
minimumBufferSizes
- A map from relation
to the minimum possible buffer size of that relation.protected void _saveContainerRates(java.util.Map externalRates) throws NotSchedulableException, IllegalActionException
externalRates
- A map from external port to the rate of that
port.
IllegalActionException
- If any called method throws it.
NotSchedulableException
- If an external port is both
an input and an output, or neither an input or an output, or
connected on the inside to ports that have different
tokenInitProduction.protected void _saveFiringCounts(java.util.Map entityToFiringsPerIteration)
entityToFiringsPerIteration
- A map from actor to firing count.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |