Package ptolemy.distributed.actor
Class DistributedTypedIORelation
- java.lang.Object
-
- ptolemy.kernel.util.NamedObj
-
- ptolemy.kernel.Relation
-
- ptolemy.kernel.ComponentRelation
-
- ptolemy.actor.IORelation
-
- ptolemy.actor.TypedIORelation
-
- ptolemy.distributed.actor.DistributedTypedIORelation
-
- All Implemented Interfaces:
java.lang.Cloneable
,Changeable
,Debuggable
,DebugListener
,Derivable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
public class DistributedTypedIORelation extends TypedIORelation
Extension of TypedIORelation for distributed environments. It overrides the deepReceivers method that returns the connected receivers to this relation. In this case, the relation only contains (is connected to) one DistributedReceiver in charge of forwarding tokens to the distributed services that are connected.- Since:
- Ptolemy II 5.1
- Version:
- $Id$
- Author:
- Daniel Lazaro Cuadrado (kapokasa@kom.aau.dk)
- See Also:
DistributedReceiver
- Pt.AcceptedRating:
- Red (cxh)
- Pt.ProposedRating:
- Red (kapokasa)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ptolemy.kernel.util.NamedObj
NamedObj.ContainedObjectsIterator
-
-
Field Summary
-
Fields inherited from class ptolemy.actor.IORelation
_USE_NEW_WIDTH_INFERENCE_ALGO, CONFIGURATION, width, WIDTH_TO_INFER
-
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
-
-
Constructor Summary
Constructors Constructor Description DistributedTypedIORelation()
Construct a relation in the default workspace with an empty string as its name.DistributedTypedIORelation(CompositeEntity container, java.lang.String name)
Construct a relation with the given name contained by the specified entity.DistributedTypedIORelation(Workspace workspace)
Construct a relation in the specified workspace with an empty string as a name.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Receiver[][]
deepReceivers(IOPort except)
Return the receivers of all input ports linked to this relation.void
setServicesReceiversListMap(java.util.HashMap servicesReceiversListMap)
Specify the servicesReceiversListMap for the internal DistributedReceiver.-
Methods inherited from class ptolemy.actor.TypedIORelation
_checkContainer, _checkPort, _checkRelation
-
Methods inherited from class ptolemy.actor.IORelation
_description, _skipWidthInference, attributeChanged, clone, getWidth, isWidthFixed, linkedDestinationPortList, linkedDestinationPortList, linkedDestinationPorts, linkedDestinationPorts, linkedSourcePortList, linkedSourcePortList, linkedSourcePorts, linkedSourcePorts, needsWidthInference, setContainer, setWidth
-
Methods inherited from class ptolemy.kernel.ComponentRelation
_propagateExistence, deepLinkedPortList, deepLinkedPorts, getContainer, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, setName, unlinkAll
-
Methods inherited from class ptolemy.kernel.Relation
_getContainedObject, link, linkedObjectsList, linkedPortList, linkedPortList, linkedPorts, linkedPorts, numLinks, relationGroupList, unlink
-
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _containedDecorators, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _executeChangeRequests, _exportMoMLContents, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, _validateSettables, addChangeListener, addDebugListener, addHierarchyListener, attributeDeleted, attributeList, attributeList, attributeTypeChanged, clone, containedObjectsIterator, decorators, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getElementName, getFullName, getModelErrorHandler, getName, getName, getPrototypeList, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, notifyOfNameChange, propagateExistence, propagateValue, propagateValues, removeAttribute, removeChangeListener, removeDebugListener, removeHierarchyListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, uniqueName, validateSettables, workspace
-
-
-
-
Constructor Detail
-
DistributedTypedIORelation
public DistributedTypedIORelation()
Construct a relation in the default workspace with an empty string as its name. Add the relation to the directory of the workspace.
-
DistributedTypedIORelation
public DistributedTypedIORelation(Workspace workspace)
Construct a relation in the specified workspace with an empty string as a name. You can then change the name with setName(). If the workspace argument is null, then use the default workspace. Add the relation to the workspace directory.- Parameters:
workspace
- The workspace that will list the relation.
-
DistributedTypedIORelation
public DistributedTypedIORelation(CompositeEntity container, java.lang.String name) throws IllegalActionException, NameDuplicationException
Construct a relation with the given name contained by the specified entity. The container argument must not be null, or a NullPointerException will be thrown. This relation will use the workspace of the container for synchronization and version counts. If the name argument is null, then the name is set to the empty string. This constructor write-synchronizes on the workspace.- Parameters:
container
- The container.name
- The name of the relation.- Throws:
IllegalActionException
- If the container is incompatible with this relation.NameDuplicationException
- If the name coincides with a relation already in the container.
-
-
Method Detail
-
deepReceivers
public Receiver[][] deepReceivers(IOPort except)
Return the receivers of all input ports linked to this relation.- Overrides:
deepReceivers
in classIORelation
- Parameters:
except
- The port to exclude.- Returns:
- The receivers associated with this relation.
- See Also:
IOPort.getRemoteReceivers()
-
setServicesReceiversListMap
public void setServicesReceiversListMap(java.util.HashMap servicesReceiversListMap)
Specify the servicesReceiversListMap for the internal DistributedReceiver.- Parameters:
servicesReceiversListMap
- for the internal DistributedReceiver.
-
-