Class ModalController
- java.lang.Object
-
- ptolemy.kernel.util.NamedObj
-
- ptolemy.cg.kernel.generic.CodeGeneratorAdapter
-
- ptolemy.cg.kernel.generic.program.ProgramCodeGeneratorAdapter
-
- ptolemy.cg.kernel.generic.program.NamedProgramCodeGeneratorAdapter
-
- ptolemy.cg.adapter.generic.program.procedural.adapters.ptolemy.domains.modal.modal.ModalController
-
- ptolemy.cg.adapter.generic.program.procedural.c.adapters.ptolemy.domains.modal.modal.ModalController
-
- All Implemented Interfaces:
java.lang.Cloneable
,Changeable
,Debuggable
,DebugListener
,Derivable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
public class ModalController extends ModalController
Code generator helper for modal controller.- Since:
- Ptolemy II 10.0
- Version:
- $Id$
- Author:
- William Lucas
- Pt.AcceptedRating:
- Red (wlc)
- Pt.ProposedRating:
- Red (wlc)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ptolemy.cg.kernel.generic.program.NamedProgramCodeGeneratorAdapter
NamedProgramCodeGeneratorAdapter.VariableScope
-
Nested classes/interfaces inherited from class ptolemy.cg.kernel.generic.program.ProgramCodeGeneratorAdapter
ProgramCodeGeneratorAdapter.Channel
-
Nested classes/interfaces inherited from class ptolemy.kernel.util.NamedObj
NamedObj.ContainedObjectsIterator
-
-
Field Summary
-
Fields inherited from class ptolemy.cg.adapter.generic.program.procedural.adapters.ptolemy.domains.modal.modal.ModalController
_eol, _myController
-
Fields inherited from class ptolemy.cg.kernel.generic.program.ProgramCodeGeneratorAdapter
_component, _defaultBlocks, _templateParser
-
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 ModalController(ModalController component)
Construct the code generator helper associated with the given modal controller.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
_generateRefinementCode(java.lang.StringBuffer code)
Generate code for the firing of refinements.java.lang.String
generateFireCode()
Generate the fire code of the associated controller.java.lang.String
generatePostfireCode()
Generate the postfire code of the associated controller.java.lang.String
generateVariableDeclaration()
Generate variable declarations for inputs and outputs and parameters.-
Methods inherited from class ptolemy.cg.adapter.generic.program.procedural.adapters.ptolemy.domains.modal.modal.ModalController
_updateConnectedPortsOffset, _updatePortOffset, generateFireFunctionCode, generatePreinitializeCode, generateTransferInputsCode, generateTransferOutputsCode
-
Methods inherited from class ptolemy.cg.kernel.generic.program.NamedProgramCodeGeneratorAdapter
_generateFireCode, _generateTypeConvertStatement, analyzeTypeConvert, copyFilesToCodeDirectory, generateInitializeCode, generateMainLoop, generateModeTransitionCode, generatePrefireCode, generatePreinitializeMethodBodyCode, generateSimpleName, generateTypeConvertFireCode, generateTypeConvertFireCode, generateVariableInitialization, generateWrapupCode, getAddTimeString, getBufferSize, getBufferSize, getComponent, getDeclareSharedCode, getDefaultBlocks, getFireFunctionParameters, getHeaderFiles, getIncludeDirectories, getLibraries, getLibraryDirectories, getModifiedVariables, getName, getParameterValue, getReference, getReference, getSharedCode, getSinkChannels, getSourceTimeString, getTimeSourcePortName, getTypeConvertChannels, getTypeConvertReference, getTypeConvertSinkChannels, setupAdapter, targetType
-
Methods inherited from class ptolemy.cg.kernel.generic.program.ProgramCodeGeneratorAdapter
_generateBlockByName, getAdapter, getCodeGenerator, getTemplateParser, processCode, setCodeGenerator, setTemplateParser, toString
-
Methods inherited from class ptolemy.cg.kernel.generic.CodeGeneratorAdapter
createDecoratorAttributes, generateName
-
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _containedDecorators, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _description, _executeChangeRequests, _exportMoMLContents, _getContainedObject, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateExistence, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, _validateSettables, addChangeListener, addDebugListener, addHierarchyListener, attributeChanged, attributeDeleted, attributeList, attributeList, attributeTypeChanged, clone, clone, containedObjectsIterator, decorators, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttribute, getAttributes, getChangeListeners, getClassName, getContainer, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getElementName, getFullName, getModelErrorHandler, getName, getPrototypeList, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, notifyOfNameChange, propagateExistence, propagateValue, propagateValues, removeAttribute, removeChangeListener, removeDebugListener, removeHierarchyListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setName, setPersistent, setSource, sortContainedObjects, toplevel, uniqueName, validateSettables, workspace
-
-
-
-
Constructor Detail
-
ModalController
public ModalController(ModalController component)
Construct the code generator helper associated with the given modal controller.- Parameters:
component
- The associated component.
-
-
Method Detail
-
generateFireCode
public java.lang.String generateFireCode() throws IllegalActionException
Generate the fire code of the associated controller. All the steps are described below It is slightly different from the super class in order to take into account the receivers (if embedded in a DE model)- Overrides:
generateFireCode
in classModalController
- Returns:
- The fire code of the associated controller.
- Throws:
IllegalActionException
- If the adapter associated with an actor throws it while generating fire code for the actor
-
generatePostfireCode
public java.lang.String generatePostfireCode() throws IllegalActionException
Generate the postfire code of the associated controller. We generate a switch because we only need to call the postfire method of the current state.- Overrides:
generatePostfireCode
in classNamedProgramCodeGeneratorAdapter
- Returns:
- The postfire code of the associated controller.
- Throws:
IllegalActionException
- If the adapter associated with an actor throws it while generating postfire code for the actor
-
generateVariableDeclaration
public java.lang.String generateVariableDeclaration() throws IllegalActionException
Description copied from class:NamedProgramCodeGeneratorAdapter
Generate variable declarations for inputs and outputs and parameters. Append the declarations to the given string buffer.- Overrides:
generateVariableDeclaration
in classNamedProgramCodeGeneratorAdapter
- Returns:
- code The generated code.
- Throws:
IllegalActionException
- If the adapter class for the model director cannot be found.
-
_generateRefinementCode
protected boolean _generateRefinementCode(java.lang.StringBuffer code) throws IllegalActionException
Generate code for the firing of refinements.- Overrides:
_generateRefinementCode
in classModalController
- Parameters:
code
- The string buffer that the generated code is appended to.- Returns:
- true if any of the states had refinements.
- Throws:
IllegalActionException
- If the helper associated with an actor throws it while generating fire code for the actor.
-
-