public class CompiledCompositeActor extends TypedCompositeActor
CompositeEntity.ContainedObjectsIterator| Modifier and Type | Field and Description |
|---|---|
FileParameter |
codeDirectory
The directory in which to put the generated code.
|
Parameter |
executeEmbeddedCode
If true, then invoke the generated code in the action methods
(fire(), etc.).
|
StringParameter |
generatorPackage
The name of the package in which to look for adapter class
code generators.
|
Parameter |
inline
If true, generate file with no functions.
|
Parameter |
overwriteFiles
If true, overwrite preexisting files.
|
_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, LINKSCOMPLETED, NOT_READY, STOP_ITERATING| Constructor and Description |
|---|
CompiledCompositeActor()
Construct a CodeGenerationCompositeActor in the default workspace
with no container and an empty string as its name.
|
CompiledCompositeActor(CompositeEntity container,
java.lang.String name)
Create an actor with a name and a container.
|
CompiledCompositeActor(Workspace workspace)
Construct a CodeGenerationCompositeActor in the specified workspace
with no container and an empty string as a name.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
_compileJNICode()
Compile the Java code.
|
protected void |
_generateAndCompileEmbeddedCode()
Generate and compile Java code.
|
protected void |
_generateAndCompileJNICode()
Generate and compile the JNI code.
|
protected static void |
_transferOutputs(TypedCompositeActor compositeActor,
IOPort port,
java.lang.Object outputTokens)
Transfer the outputs.
|
void |
fire()
If executeEmbeddedCode is true, then execute the fire() method
of the generated code.
|
java.lang.String |
getSanitizedName()
Return the sanitized file name of this actor.
|
void |
initialize()
If executeEmbeddedCode is true, then generate and compile the
code (if necessary), and then execute the initialize() method
of the generated code.
|
void |
wrapup()
If executeEmbeddedCode is true, then execute the wrapup() method
of the generated code.
|
_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, getCausalityInterface, getDirector, getExecutiveDirector, getManager, getPublishedPort, getPublishedPortChannel, getPublishedPorts, getSubscribedPortChannel, inferringWidths, inferWidths, 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_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_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, workspaceequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitcreateReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortListisFireFunctional, isStrict, iterate, postfire, prefire, stop, stopFire, terminateaddInitializable, preinitialize, removeInitializabledescription, getContainer, getDisplayName, getFullName, getName, getName, setNamegetDerivedLevel, getDerivedList, propagateValuepublic FileParameter codeDirectory
public StringParameter generatorPackage
public Parameter inline
public Parameter executeEmbeddedCode
public Parameter overwriteFiles
public CompiledCompositeActor()
public CompiledCompositeActor(CompositeEntity container, java.lang.String name) throws IllegalActionException, NameDuplicationException
container - The container actor.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.public CompiledCompositeActor(Workspace workspace)
workspace - The workspace that will list the actor.public void fire()
throws IllegalActionException
fire in interface Executablefire in class CompositeActorIllegalActionException - If thrown by the super
class, or if there are problems invoking the fire() method of
wrapper class.public java.lang.String getSanitizedName()
StringUtilities.sanitizeName(String),
removing underscores and appending a version number.
The version number is necessary so that we can reload the
shared object.public void initialize()
throws IllegalActionException
initialize in interface Initializableinitialize in class CompositeActorIllegalActionException - If there is no director, or
if the director's initialize() method throws it, or if the
actor is not opaque.public void wrapup()
throws IllegalActionException
wrapup in interface Initializablewrapup in class CompositeActorIllegalActionException - If there is no director,
or if the director's wrapup() method throws it, or if this
actor is not opaque.protected void _compileJNICode()
throws IllegalActionException
javac and javah commands are
executed on the the java file.IllegalActionException - If there is a problem reading
the codeDirectory parameter.protected void _generateAndCompileEmbeddedCode()
throws IllegalActionException
IllegalActionException - If the adapter class cannot
be found, or if the static generateCode(TypedCompositeActor)
method in the adapter class cannot be found or invoked.protected void _generateAndCompileJNICode()
throws IllegalActionException
IllegalActionException - If thrown while getting the path
to the shared object, while writing the Java file, or while
compiling the Java file.protected static void _transferOutputs(TypedCompositeActor compositeActor, IOPort port, java.lang.Object outputTokens) throws IllegalActionException
compositeActor - The composite actor transferring the
outputs.port - The port on which the output is to be transferredoutputTokens - The tokens to be transferred.IllegalActionException - If there are problems
getting the class or otherwise transferring the tokens.