|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object ptolemy.kernel.util.NamedObj ptolemy.kernel.InstantiableNamedObj ptolemy.kernel.Entity ptolemy.kernel.ComponentEntity ptolemy.kernel.CompositeEntity ptolemy.actor.CompositeActor ptolemy.actor.TypedCompositeActor ptolemy.domains.modal.modal.Refinement
public class Refinement
This typed composite actor supports mirroring of its ports in its container (which is required to be a ModalModel), which in turn assures mirroring of ports in each of the refinements and the controller. Refinements fulfills the CTStepSizeControlActor interface so that it can be used to construct hybrid systems using the CT domain. Refinements also fulfills the CTEventGenerator interface so that they can report events generated inside.
Red (reviewmoderator) |
Red (eal) |
Nested Class Summary |
---|
Nested classes/interfaces inherited from class ptolemy.kernel.CompositeEntity |
---|
CompositeEntity.ContainedObjectsIterator |
Field Summary | |
---|---|
private Time |
_accumulatedSuspendTime
Accumulated time that this actor has been suspended since initialize(). |
private Time |
_lastSuspendTime
The environment time when this refinement was last suspended (that is, the enclosing state was exited). |
protected boolean |
_mirrorDisable
Indicator that we are processing a newPort request. |
Fields inherited from class ptolemy.actor.CompositeActor |
---|
_actorFiringListeners, _causalityInterface, _initializables, _notifyingActorFiring, _publishedPorts, _publisherRelations, _stopRequested |
Fields inherited from class ptolemy.kernel.CompositeEntity |
---|
_levelCrossingLinks |
Fields inherited from class ptolemy.kernel.util.NamedObj |
---|
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _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 | |
---|---|
Refinement(CompositeEntity container,
java.lang.String name)
Construct a modal controller with a name and a container. |
Method Summary | |
---|---|
protected void |
_checkContainer(Entity container)
Override the base class to ensure that the proposed container is a ModalModel or null. |
Time |
accumulatedSuspendTime()
Return the accumulated time that the actor has been suspended since the last call to initialize(), or null if it has never been suspended. |
void |
addRefinement(State state,
java.lang.String name,
Entity template,
java.lang.String className,
Configuration configuration)
Perform no action but throw an IllegalActionException because a refinement cannot be created in an arbitrary actor-oriented refinement. |
State |
getRefinedState()
Get the state in any ModalController within this ModalModel that has this refinement as its refinement, if any. |
void |
initialize()
Initialize this actor. |
Port |
newPort(java.lang.String name)
Create a new port with the specified name in the container of this refinement, which in turn creates a port in this refinement all other refinements, and the controller. |
void |
resume(Time time)
Resume the actor at the specified time. |
void |
setMirrorDisable(int disable)
Control whether adding a port should be mirrored in the modal model and the mode controller. |
void |
suspend(Time time)
Suspend the actor at the specified time. |
Methods inherited from class ptolemy.actor.TypedCompositeActor |
---|
_addEntity, _addPort, _addRelation, _checkTypesFromTo, _typeConstraintsFromTo, newRelation, resolveTypes, typeConstraintList, typeConstraints |
Methods inherited from class ptolemy.kernel.ComponentEntity |
---|
_checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName |
Methods inherited from class ptolemy.kernel.Entity |
---|
_removePort, connectedPortList, connectedPorts, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts |
Methods inherited from class ptolemy.kernel.InstantiableNamedObj |
---|
_setParent, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface ptolemy.actor.TypedActor |
---|
typeConstraints |
Methods inherited from interface ptolemy.actor.Actor |
---|
createReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortList |
Methods inherited from interface ptolemy.actor.Executable |
---|
fire, isFireFunctional, isStrict, iterate, postfire, 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 |
Methods inherited from interface ptolemy.kernel.util.Derivable |
---|
getDerivedLevel, getDerivedList, propagateValue |
Field Detail |
---|
protected boolean _mirrorDisable
private Time _accumulatedSuspendTime
private Time _lastSuspendTime
Constructor Detail |
---|
public Refinement(CompositeEntity container, java.lang.String name) throws IllegalActionException, NameDuplicationException
container
- The container.name
- The name of this actor.
IllegalActionException
- If the container is incompatible
with this actor.
NameDuplicationException
- If the name coincides with
an actor already in the container.Method Detail |
---|
public Time accumulatedSuspendTime()
accumulatedSuspendTime
in interface Suspendable
public void addRefinement(State state, java.lang.String name, Entity template, java.lang.String className, Configuration configuration) throws IllegalActionException
addRefinement
in interface RefinementActor
state
- The state that will contain the new refinement.name
- The name of the composite entity that stores the refinement.template
- The template used to create the refinement, or null if
template is not used.className
- The class name for the refinement, which is used when
template is null.configuration
- The configuration that is used to open the
refinement (as a look-inside action) after it is created, or null if it
is not needed to open the refinement.
IllegalActionException
- If error occurs while creating the
refinement.public State getRefinedState() throws IllegalActionException
getRefinedState
in interface RefinementActor
IllegalActionException
- If the specified refinement cannot be
found in a state, or if a comma-separated list is malformed.public void initialize() throws IllegalActionException
initialize
in interface Initializable
initialize
in class CompositeActor
IllegalActionException
- If there is no director, or
if the director's initialize() method throws it, or if the
actor is not opaque.public Port newPort(java.lang.String name) throws NameDuplicationException
newPort
in class TypedCompositeActor
name
- The name to assign to the newly created port.
NameDuplicationException
- If the entity already has a port
with the specified name.public void resume(Time time) throws IllegalActionException
resume
in interface Suspendable
time
- The time at which the actor is resumed.
IllegalActionException
- If the resume cannot be completed.public void suspend(Time time) throws IllegalActionException
suspend
in interface Suspendable
time
- The time at which the actor is suspended.
IllegalActionException
- If the suspend cannot be completed.public void setMirrorDisable(int disable)
setMirrorDisable
in interface RefinementActor
disable
- 0 if mirroring should occur, -1
if mirroring should not occur downwards in the hierarchy,
1 if mirroring should not occur upwards in the hierarchy.protected void _checkContainer(Entity container) throws IllegalActionException
container
- The proposed container.
IllegalActionException
- If the proposed container is not a
TypedActor, or if the base class throws it.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |