|
|||||||||
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.Port
ptolemy.kernel.ComponentPort
ptolemy.actor.IOPort
ptolemy.actor.TypedIOPort
ptolemy.domains.fsm.modal.RefinementPort
ptolemy.domains.fsm.modal.TransitionRefinementPort
public class TransitionRefinementPort
A port for transition refinements in modal models. This port mirrors certain changes to it in the ports of the container of the container. That container in turn mirrors those changes in other refinements and/or controllers.
For output ports, this class creates a sibling "input" port. The sibling port is normally treated like any other port but mirrors changes via it's output sibling. This is so that TransitionRefinement instances can get the outputs from the State refinements without having the port be an input/output. This sibling port is labeled as "port_in" where port is the name of the corresponding output port.
ModalPort
,
TransitionRefinement
,
Serialized Form
Red (liuxj) |
Red (eal) |
Nested Class Summary |
---|
Nested classes/interfaces inherited from class ptolemy.kernel.util.NamedObj |
---|
NamedObj.ContainedObjectsIterator |
Field Summary | |
---|---|
protected boolean |
_hasSibling
Flag indicating if this port has a sibling. |
Fields inherited from class ptolemy.domains.fsm.modal.RefinementPort |
---|
_automaticallyInput, _mirrorDisable |
Fields inherited from class ptolemy.actor.TypedIOPort |
---|
TYPE |
Fields inherited from class ptolemy.actor.IOPort |
---|
_hasPortEventListeners, _portEventListeners, CONFIGURATION, RECEIVERS, REMOTERECEIVERS |
Fields inherited from class ptolemy.kernel.Port |
---|
_insideLinks, _relationsList |
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 | |
---|---|
TransitionRefinementPort(ComponentEntity container,
java.lang.String name)
Construct a port with a containing actor and a name that is neither an input nor an output. |
|
TransitionRefinementPort(Workspace workspace)
Construct a port in the given workspace. |
Method Summary | |
---|---|
void |
link(Relation relation)
Override the base class to avoid linking a sibling input port to the same relation as the sibling output port multiple times. |
int |
moveDown()
Move this object down by one in the list of attributes of its container. |
int |
moveToFirst()
Move this object to the first position in the list of attributes of the container. |
int |
moveToIndex(int index)
Move this object to the specified position in the list of attributes of the container. |
int |
moveToLast()
Move this object to the last position in the list of attributes of the container. |
int |
moveUp()
Move this object up by one in the list of attributes of the container. |
void |
setContainer(Entity container)
Override the base class so that if the port is being removed from the current container, then it is also removed from the controller and from each of the refinements. |
void |
setInput(boolean isInput)
If the argument is true, make the port an input port. |
void |
setMultiport(boolean isMultiport)
If the argument is true, make the port a multiport. |
void |
setName(java.lang.String name)
Set the name of the port, and mirror the change in all the mirror ports. |
void |
setOutput(boolean isOutput)
If the argument is true, make the port an output port. |
Methods inherited from class ptolemy.domains.fsm.modal.RefinementPort |
---|
isTypeAcceptable, setMirrorDisable |
Methods inherited from class ptolemy.actor.TypedIOPort |
---|
_checkContainer, _checkLiberalLink, _checkLink, _checkType, _description, addTypeListener, attributeChanged, broadcast, broadcast, clone, convert, getType, getTypeTerm, removeTypeListener, send, send, sendInside, setTypeAtLeast, setTypeAtLeast, setTypeAtMost, setTypeEquals, setTypeSameAs, typeConstraintList, typeConstraints |
Methods inherited from class ptolemy.kernel.ComponentPort |
---|
_deepConnectedPortList, _deepConnectedPorts, _deepInsidePortList, _deepInsidePorts, _isInsideLinkable, deepConnectedPortList, deepConnectedPorts, deepInsidePortList, deepInsidePorts, insertInsideLink, insidePortList, insidePorts, insideRelationList, insideRelations, isDeeplyConnected, isInsideGroupLinked, isInsideLinked, isOpaque, numInsideLinks |
Methods inherited from class ptolemy.kernel.Port |
---|
_getContainedObject, _propagateExistence, connectedPortList, connectedPorts, getContainer, isGroupLinked, isLinked, linkedRelationList, linkedRelations, numLinks |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected boolean _hasSibling
Constructor Detail |
---|
public TransitionRefinementPort(Workspace workspace)
workspace
- The workspace.public TransitionRefinementPort(ComponentEntity container, java.lang.String name) throws IllegalActionException, NameDuplicationException
container
- The container actor.name
- The name of the port.
IllegalActionException
- If the port is not of an acceptable
class for the container, or if the container does not implement the
TypedActor interface.
NameDuplicationException
- If the name coincides with
a port already in the container.Method Detail |
---|
public void link(Relation relation) throws IllegalActionException
link
in class RefinementPort
relation
- The relation to link to.
IllegalActionException
- If the link crosses levels of
the hierarchy, or the port has no container, or the relation
is not an instance of IORelation.public int moveDown() throws IllegalActionException
moveDown
in interface Moveable
moveDown
in class RefinementPort
IllegalActionException
- If this object has
no container.public int moveToFirst() throws IllegalActionException
moveToFirst
in interface Moveable
moveToFirst
in class RefinementPort
IllegalActionException
- If this object has
no container.public int moveToIndex(int index) throws IllegalActionException
moveToIndex
in interface Moveable
moveToIndex
in class RefinementPort
index
- The position to move this object to.
IllegalActionException
- If this object has
no container or if the index is out of bounds.public int moveToLast() throws IllegalActionException
moveToLast
in interface Moveable
moveToLast
in class RefinementPort
IllegalActionException
- If this object has
no container.public int moveUp() throws IllegalActionException
moveUp
in interface Moveable
moveUp
in class RefinementPort
IllegalActionException
- If this object has
no container.public void setContainer(Entity container) throws IllegalActionException, NameDuplicationException
setContainer
in class RefinementPort
container
- The proposed container.
IllegalActionException
- If the proposed container is not a
ComponentEntity, doesn't implement Actor, or has no name,
or the port and container are not in the same workspace. Or
it's not null
NameDuplicationException
- If the container already has
a port with the name of this port.Port.getContainer()
,
Port._checkContainer(Entity)
public void setInput(boolean isInput) throws IllegalActionException
setInput
in class RefinementPort
isInput
- True to make the port an input.
IllegalActionException
- If changing the port status is
not permitted.public void setMultiport(boolean isMultiport) throws IllegalActionException
setMultiport
in class RefinementPort
isMultiport
- True to make the port a multiport.
IllegalActionException
- If changing the port status is
not permitted.public void setName(java.lang.String name) throws IllegalActionException, NameDuplicationException
setName
in interface Nameable
setName
in class RefinementPort
name
- The new name.
IllegalActionException
- If the name has a period.
NameDuplicationException
- If there is already a port
with the same name in the container.NamedObj.getName()
,
NamedObj.getName(NamedObj)
public void setOutput(boolean isOutput) throws IllegalActionException
setOutput
in class RefinementPort
isOutput
- True to make the port an output.
IllegalActionException
- If changing the port status is
not permitted.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |