public class CompositeActorMatcher extends TypedCompositeActor implements GTCompositeActor, GTEntity, ValueListener
TransformationRule
, this matcher can be customized by instances of
Criterion
. A PortCriterion
, for instance, customizes this
matcher with an additional port, whose type and name can be specified. In the
replacement of a TransformationRule
, operations can be specified for
this matcher with instances of Operation
. The operations will be
performed on the actor that is matched by the corresponding matcher in the
pattern, and is preserved after the transformation.AtomicActorMatcher
Red (tfeng) |
Yellow (tfeng) |
CompositeEntity.ContainedObjectsIterator
Modifier and Type | Field and Description |
---|---|
GTIngredientsAttribute |
criteria
The attribute containing all the criteria in a list
(
GTIngredientList ). |
GTIngredientsEditor.Factory |
editorFactory
The editor factory for ingredients in this matcher.
|
GTIngredientsAttribute |
operations
The attribute containing all the operations in a list
(
GTIngredientList ). |
PatternObjectAttribute |
patternObject
The attribute that specifies the name of the corresponding entity in the
pattern.
|
_actorFiringListeners, _causalityInterface, _derivedPiggybacks, _initializables, _notifyingActorFiring, _piggybacks, _publishedPorts, _publisherRelations, _stopRequested, _subscribedPorts
_levelCrossingLinks
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _deferChangeRequests, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
COMPLETED, NOT_READY, STOP_ITERATING
Constructor and Description |
---|
CompositeActorMatcher(CompositeEntity container,
java.lang.String name)
Construct an atomic actor matcher to be either contained in the pattern
of a
TransformationRule or in the replacement. |
Modifier and Type | Method and Description |
---|---|
protected void |
_exportMoMLContents(java.io.Writer output,
int depth)
Write a MoML description of the contents of this object, which
in this class are the attributes plus the ports.
|
GTIngredientsAttribute |
getCriteriaAttribute()
Return the attribute that stores all the criteria for this matcher.
|
java.lang.String |
getDefaultIconDescription()
Return a string that contains the SVG icon description
("<svg>...
|
GTIngredientsAttribute |
getOperationsAttribute()
Return the attribute that stores all the operations for this matcher.
|
PatternObjectAttribute |
getPatternObjectAttribute()
Return the attribute that stores the name of the corresponding entity in
the pattern of the same
TransformationRule , if this entity is in
the replacement, or null otherwise. |
java.util.Set<java.lang.String> |
labelSet()
Return the set of names of ingredients contained in this entity that can
be resolved.
|
boolean |
match(NamedObj object)
Test whether this CompositeActorMatcher can match the given object.
|
void |
updateAppearance(GTIngredientsAttribute attribute)
Update appearance of this entity.
|
void |
valueChanged(Settable settable)
React to the fact that the specified Settable has changed.
|
_addEntity, _addPort, _addRelation, _checkTypesFromTo, _destinationTypeConstraints, attributeChanged, attributeTypeChanged, isBackwardTypeInferenceEnabled, newPort, newRelation, resolveTypes, typeConstraintList, typeConstraints
_actorFiring, _actorFiring, _finishedAddEntity, _setDirector, _transferPortParameterInputs, addActorFiringListener, addInitializable, addPiggyback, clone, connectionsChanged, createReceivers, createSchedule, fire, getCausalityInterface, getDirector, getExecutiveDirector, getManager, getPublishedPort, getPublishedPortChannel, getPublishedPorts, getSubscribedPortChannel, inferringWidths, inferWidths, initialize, inputPortList, isFireFunctional, isOpaque, isPublishedPort, isStrict, iterate, linkToPublishedPort, linkToPublishedPort, linkToPublishedPort, linkToPublishedPort, needsWidthInference, newInsideReceiver, newReceiver, notifyConnectivityChange, outputPortList, postfire, prefire, preinitialize, recordFiring, registerPublisherPort, registerPublisherPort, removeActorFiringListener, removeInitializable, removePiggyback, requestChange, setContainer, setDirector, setManager, stop, stopFire, terminate, unlinkToPublishedPort, unlinkToPublishedPort, unlinkToPublishedPort, unlinkToPublishedPort, unregisterPublisherPort, unregisterPublisherPort, wrapup
_adjustDeferrals, _containedDecorators, _deepOpaqueEntityList, _description, _removeEntity, _removeRelation, _validateSettables, allAtomicEntityList, allowLevelCrossingConnect, classDefinitionList, connect, connect, containedObjectsIterator, deepCompositeEntityList, deepEntityList, deepGetEntities, deepNamedObjList, deepOpaqueEntityList, deepRelationSet, entityList, entityList, exportLinks, exportMoML, getAttribute, getEntities, getEntity, getPort, getRelation, getRelations, isAtomic, lazyAllAtomicEntityList, lazyAllCompositeEntityList, lazyAllCompositeTransparentAndOpaqueEntityList, lazyClassDefinitionList, lazyDeepEntityList, lazyEntityList, lazyRelationList, numberOfEntities, numberOfRelations, numEntities, numRelations, relationList, removeAllEntities, removeAllRelations, setClassDefinition, statistics, uniqueName
_checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName
_removePort, connectedPortList, connectedPorts, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts
_setParent, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _executeChangeRequests, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, addHierarchyListener, attributeDeleted, attributeList, attributeList, clone, 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, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, validateSettables, workspace
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
isBackwardTypeInferenceEnabled, typeConstraints
createReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortList
fire, isFireFunctional, isStrict, iterate, postfire, prefire, stop, stopFire, terminate
addInitializable, initialize, preinitialize, removeInitializable, wrapup
description, getContainer, getDisplayName, getFullName, getName, getName, setName
getDerivedLevel, getDerivedList, propagateValue
public GTIngredientsAttribute criteria
GTIngredientList
).public GTIngredientsEditor.Factory editorFactory
public GTIngredientsAttribute operations
GTIngredientList
).public PatternObjectAttribute patternObject
public CompositeActorMatcher(CompositeEntity container, java.lang.String name) throws IllegalActionException, NameDuplicationException
TransformationRule
or in the replacement.container
- The proposed container of this matcher.name
- The name of this matcher.IllegalActionException
- If this actor cannot be contained by
the proposed container.NameDuplicationException
- If the name coincides with an entity
already in the container.public GTIngredientsAttribute getCriteriaAttribute()
getCriteriaAttribute
in interface GTEntity
public java.lang.String getDefaultIconDescription()
getDefaultIconDescription
in interface GTEntity
public GTIngredientsAttribute getOperationsAttribute()
getOperationsAttribute
in interface GTEntity
public PatternObjectAttribute getPatternObjectAttribute()
TransformationRule
, if this entity is in
the replacement, or null otherwise.getPatternObjectAttribute
in interface GTEntity
labelSet()
public java.util.Set<java.lang.String> labelSet()
public boolean match(NamedObj object)
CompositeEntity
.public void updateAppearance(GTIngredientsAttribute attribute)
updateAppearance
in interface GTEntity
attribute
- The attribute containing ingredients of this entity.GTEntityUtils.updateAppearance(GTEntity, GTIngredientsAttribute)
public void valueChanged(Settable settable)
valueChanged
in interface ValueListener
settable
- The object that has changed value.GTEntityUtils.valueChanged(GTEntity, Settable)
protected void _exportMoMLContents(java.io.Writer output, int depth) throws java.io.IOException
_exportMoMLContents
in class CompositeEntity
output
- The output to write to.depth
- The depth in the hierarchy, to determine indenting.java.io.IOException
- If an I/O error occurs.NamedObj.exportMoML(Writer, int)