Class PtidesBasicReceiver
- java.lang.Object
-
- ptolemy.kernel.util.NamedObj
-
- ptolemy.cg.kernel.generic.CodeGeneratorAdapter
-
- ptolemy.cg.kernel.generic.program.ProgramCodeGeneratorAdapter
-
- ptolemy.cg.adapter.generic.program.procedural.adapters.ptolemy.actor.Receiver
-
- ptolemy.cg.adapter.generic.program.procedural.c.adapters.ptolemy.domains.ptides.kernel.PtidesBasicReceiver
-
- All Implemented Interfaces:
java.lang.Cloneable
,Changeable
,Debuggable
,DebugListener
,Derivable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
- Direct Known Subclasses:
PtidesBasicReceiver
,PtidesBasicReceiver
public class PtidesBasicReceiver extends Receiver
The adapter for ptides basic receiver.- Since:
- Ptolemy II 10.0
- Version:
- $Id$
- Author:
- Jia Zou, Man-Kit Leung, Isaac Liu
- Pt.AcceptedRating:
- Red (jiazou)
- Pt.ProposedRating:
- Red (jiazou)
-
-
Nested Class Summary
-
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.kernel.generic.program.ProgramCodeGeneratorAdapter
_component, _defaultBlocks, _eol, _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 PtidesBasicReceiver(PtidesReceiver receiver)
Construct a ptides basic receiver.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.String
_generateTypeConvertStatement(ProgramCodeGeneratorAdapter.Channel source)
Generate the type conversion statement for the particular offset of the two given channels.java.lang.String
generateGetCode(java.lang.String offset)
Generate code for getting tokens from the receiver.java.lang.String
generateHasTokenCode(java.lang.String offset)
Generate code to check if the receiver has a token.java.lang.String
generatePutCode(IOPort sourcePort, java.lang.String offset, java.lang.String token)
Generate code for putting tokens into the receiver.-
Methods inherited from class ptolemy.cg.adapter.generic.program.procedural.adapters.ptolemy.actor.Receiver
_getDirectorForReceiver, _removeSink, generateInitializeCode, getComponent, getName
-
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
-
PtidesBasicReceiver
public PtidesBasicReceiver(PtidesReceiver receiver) throws IllegalActionException
Construct a ptides basic receiver.- Parameters:
receiver
- The ptolemy.domains.ptides.kernel.PtidesBasicReceiver that corresponds with this adapter.- Throws:
IllegalActionException
- If throw by the superclass.
-
-
Method Detail
-
generateGetCode
public java.lang.String generateGetCode(java.lang.String offset) throws IllegalActionException
Generate code for getting tokens from the receiver.- Specified by:
generateGetCode
in classReceiver
- Parameters:
offset
- The offset in the array representation of the port.- Returns:
- generate get code.
- Throws:
IllegalActionException
- If the receiver adapter is not found or it encounters an error while generating the get code.
-
generateHasTokenCode
public java.lang.String generateHasTokenCode(java.lang.String offset) throws IllegalActionException
Generate code to check if the receiver has a token.- Specified by:
generateHasTokenCode
in classReceiver
- Parameters:
offset
- The offset in the array representation of the port.- Returns:
- generate hasToken code.
- Throws:
IllegalActionException
- If an error occurs when getting the receiver adapters or generating their initialize code.
-
generatePutCode
public java.lang.String generatePutCode(IOPort sourcePort, java.lang.String offset, java.lang.String token) throws IllegalActionException
Generate code for putting tokens into the receiver.- Specified by:
generatePutCode
in classReceiver
- Parameters:
sourcePort
- The port for which to generate the send code.offset
- The offset in the array representation of the port.token
- The token to be sent.- Returns:
- generate type conversion as well as put code.
- Throws:
IllegalActionException
- If the receiver adapter is not found or it encounters an error while generating the send code.
-
_generateTypeConvertStatement
protected java.lang.String _generateTypeConvertStatement(ProgramCodeGeneratorAdapter.Channel source) throws IllegalActionException
Generate the type conversion statement for the particular offset of the two given channels. This assumes that the offset is the same for both channel. Advancing the offset of one has to advance the offset of the other.- Specified by:
_generateTypeConvertStatement
in classReceiver
- Parameters:
source
- The given source channel.- Returns:
- The type convert statement for assigning the converted source variable to the sink variable with the given offset.
- Throws:
IllegalActionException
- If there is a problem getting the adapters for the ports or if the conversion cannot be handled.
-
-