Package ptolemy.domains.petrinet.kernel
Class PetriNetActor
- java.lang.Object
- 
- ptolemy.kernel.util.NamedObj
- 
- ptolemy.kernel.InstantiableNamedObj
- 
- ptolemy.kernel.Entity<T>
- 
- ptolemy.kernel.ComponentEntity
- 
- ptolemy.kernel.CompositeEntity
- 
- ptolemy.actor.CompositeActor
- 
- ptolemy.actor.TypedCompositeActor
- 
- ptolemy.domains.petrinet.kernel.PetriNetActor
 
 
 
 
 
 
 
 
- 
- All Implemented Interfaces:
- java.lang.Cloneable,- Actor,- Executable,- FiringsRecordable,- Initializable,- TypedActor,- Changeable,- Debuggable,- DebugListener,- Derivable,- Instantiable,- ModelErrorHandler,- MoMLExportable,- Moveable,- Nameable
 
 public class PetriNetActor extends TypedCompositeActor A Petri net ActorAs defined in the PetriNetDirector.java, a PetriNetActor is a directed and weighted graph G = (V, E) containing three kinds of nodes: Places p_i, Transitions t_i, and PetriNetActors PA_i, i.e., V = {p_i} union {t_i} union {PA_i} , where each PA_i itself is again defined as a PetriNetActor. Each node of V is called a component of the PetriNetActor G. A PetriNetActor is implemented as an extension of TypedCompositeActor. The current file contains two main methods: fire() and prefire(). More details of PetriNetActor can be found in PetriNetDirector.java. - Since:
- Ptolemy II 2.0
- Version:
- $Id$
- Author:
- Yuke Wang
- Pt.AcceptedRating:
- Red (cxh)
- Pt.ProposedRating:
- Red (cxh)
 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class ptolemy.kernel.CompositeEntityCompositeEntity.ContainedObjectsIterator
 
- 
 - 
Field Summary- 
Fields inherited from class ptolemy.actor.CompositeActor_actorFiringListeners, _causalityInterface, _derivedPiggybacks, _initializables, _notifyingActorFiring, _piggybacks, _publishedPorts, _publisherRelations, _stopRequested, _subscribedPorts
 - 
Fields inherited from class ptolemy.kernel.CompositeEntity_levelCrossingLinks
 - 
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
 - 
Fields inherited from interface ptolemy.actor.ExecutableCOMPLETED, NOT_READY, STOP_ITERATING
 
- 
 - 
Constructor SummaryConstructors Constructor Description PetriNetActor()Construct a PetriNetActor in the default workspace with an empty string as its name.PetriNetActor(CompositeEntity container, java.lang.String name)Create a PetriNetActor in the specified container with the specified name.PetriNetActor(Workspace workspace)Construct a PetriNetActor in the specified workspace with an empty string as its name.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objectclone(Workspace workspace)Clone the actor into the specified workspace.booleanprefire()This method tests whether the PetriNetActor or its component contains any enabled Transitions or not.- 
Methods inherited from class ptolemy.actor.TypedCompositeActor_addEntity, _addPort, _addRelation, _checkTypesFromTo, _destinationTypeConstraints, attributeChanged, attributeTypeChanged, isBackwardTypeInferenceEnabled, newPort, newRelation, resolveTypes, typeConstraintList, typeConstraints
 - 
Methods inherited from class ptolemy.actor.CompositeActor_actorFiring, _actorFiring, _finishedAddEntity, _setDirector, _transferPortParameterInputs, addActorFiringListener, addInitializable, addPiggyback, 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, preinitialize, recordFiring, registerPublisherPort, registerPublisherPort, removeActorFiringListener, removeInitializable, removePiggyback, requestChange, setContainer, setDirector, setManager, stop, stopFire, terminate, unlinkToPublishedPort, unlinkToPublishedPort, unlinkToPublishedPort, unlinkToPublishedPort, unregisterPublisherPort, unregisterPublisherPort, wrapup
 - 
Methods inherited from class ptolemy.kernel.CompositeEntity_adjustDeferrals, _containedDecorators, _deepOpaqueEntityList, _description, _exportMoMLContents, _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
 - 
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 ptolemy.kernel.util.NamedObj_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
 - 
Methods inherited from class java.lang.Objectequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 - 
Methods inherited from interface ptolemy.actor.ActorcreateReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortList
 - 
Methods inherited from interface ptolemy.kernel.util.DerivablegetDerivedLevel, getDerivedList, propagateValue
 - 
Methods inherited from interface ptolemy.actor.Executablefire, isFireFunctional, isStrict, iterate, postfire, stop, stopFire, terminate
 - 
Methods inherited from interface ptolemy.actor.InitializableaddInitializable, initialize, preinitialize, removeInitializable, wrapup
 - 
Methods inherited from interface ptolemy.kernel.util.Nameabledescription, getContainer, getDisplayName, getFullName, getName, getName, setName
 
- 
 
- 
- 
- 
Constructor Detail- 
PetriNetActorpublic PetriNetActor() Construct a PetriNetActor in the default workspace with an empty string as its name. Add the actor to the workspace directory. Increment the version number of the workspace.
 - 
PetriNetActorpublic PetriNetActor(Workspace workspace) Construct a PetriNetActor in the specified workspace with an empty string as its name. You can then change the name with setName(). If the workspace argument is null, then use the default workspace. Add the actor to the workspace directory. Increment the version number of the workspace.- Parameters:
- workspace- The workspace that will list the actor.
 
 - 
PetriNetActorpublic PetriNetActor(CompositeEntity container, java.lang.String name) throws IllegalActionException, NameDuplicationException Create a PetriNetActor in the specified container with the specified name. The name must be unique within the container or an exception is thrown. The container argument must not be null, or a NullPointerException will be thrown.- Parameters:
- container- The container.
- name- The name of this actor within the container.
- Throws:
- IllegalActionException- If the entity cannot be contained by the proposed container.
- NameDuplicationException- If the name coincides with an entity already in the container.
 
 
- 
 - 
Method Detail- 
clonepublic java.lang.Object clone(Workspace workspace) throws java.lang.CloneNotSupportedException Clone the actor into the specified workspace.- Overrides:
- clonein class- CompositeActor
- Parameters:
- workspace- The workspace for the new actor.
- Returns:
- A new PetriNetActor.
- Throws:
- java.lang.CloneNotSupportedException- If a derived class contains an attribute that cannot be cloned.
- See Also:
- NamedObj.exportMoML(Writer, int, String),- NamedObj.setDeferringChangeRequests(boolean)
 
 - 
prefirepublic boolean prefire() throws IllegalActionExceptionThis method tests whether the PetriNetActor or its component contains any enabled Transitions or not. If any of the components is enabled, the method returns true, otherwise returns false.- Specified by:
- prefirein interface- Executable
- Overrides:
- prefirein class- CompositeActor
- Returns:
- true or false, a PetriNetActor is ready to fire or not.
- Throws:
- IllegalActionException- If testReadyTransition throws exception.
 
 
- 
 
-