ptolemy.cg.adapter.generic.program.procedural.adapters.ptolemy.actor.lib
Class AddSubtract

java.lang.Object
  extended by ptolemy.kernel.util.NamedObj
      extended by ptolemy.cg.kernel.generic.CodeGeneratorAdapter
          extended by ptolemy.cg.kernel.generic.program.ProgramCodeGeneratorAdapter
              extended by ptolemy.cg.kernel.generic.program.NamedProgramCodeGeneratorAdapter
                  extended by ptolemy.cg.adapter.generic.program.procedural.adapters.ptolemy.actor.lib.AddSubtract
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Changeable, Debuggable, DebugListener, Derivable, ModelErrorHandler, MoMLExportable, Moveable, Nameable
Direct Known Subclasses:
AddSubtract, AddSubtract

public class AddSubtract
extends NamedProgramCodeGeneratorAdapter

A adapter class for ptolemy.actor.lib.AddSubtract.

Since:
Ptolemy II 7.1
Version:
$Id: AddSubtract.java 55577 2009-08-26 00:28:48Z rodiers $
Author:
Man-Kit (Jackie) Leung, Gang Zhou, Bert Rodiers
See Also:
Serialized Form
Accepted Rating:
Yellow (cxh)
Proposed Rating:
Yellow (mankit) Pending FIXME in AddSubtract.c: need to deallocate Tokens

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, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
 
Constructor Summary
AddSubtract(AddSubtract actor)
          Construct an AddSubtract adapter.
 
Method Summary
protected  java.lang.String _generateFireCode()
          Generate fire code.
 java.lang.String generatePreinitializeCode()
          Generate preinitialize code.
 
Methods inherited from class ptolemy.cg.kernel.generic.program.NamedProgramCodeGeneratorAdapter
_generateTypeConvertStatement, analyzeTypeConvert, copyFilesToCodeDirectory, generateFireCode, generateFireFunctionCode, generateInitializeCode, generateModeTransitionCode, generateName, generatePostfireCode, generatePrefireCode, generateSimpleName, generateTypeConvertFireCode, generateTypeConvertFireCode, generateVariableDeclaration, generateVariableInitialization, generateWrapupCode, getComponent, getDefaultBlocks, getHeaderFiles, getIncludeDirectories, getLibraries, getLibraryDirectories, getModifiedVariables, getName, getParameterValue, getReference, getReference, getSharedCode, getSinkChannels, getTypeConvertChannels, getTypeConvertReference, getTypeConvertSinkChannels, 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
createDecoratedAttributes, setTypesOfDecoratedVariables
 
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _description, _exportMoMLContents, _getContainedObject, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _propagateExistence, _propagateValue, _recordDecoratedAttributes, _removeAttribute, _splitName, _stripNumericSuffix, _validateSettables, addChangeListener, addDebugListener, attributeChanged, attributeList, attributeList, attributeTypeChanged, clone, clone, containedObjectsIterator, 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, propagateExistence, propagateValue, propagateValues, removeChangeListener, removeDebugListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setName, setPersistent, setSource, sortContainedObjects, toplevel, uniqueName, validateSettables, workspace
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AddSubtract

public AddSubtract(AddSubtract actor)
Construct an AddSubtract adapter.

Parameters:
actor - the associated actor
Method Detail

_generateFireCode

protected java.lang.String _generateFireCode()
                                      throws IllegalActionException
Generate fire code. The method generates code that loops through each input [multi-ports] and combines (add or subtract) them.

Overrides:
_generateFireCode in class NamedProgramCodeGeneratorAdapter
Returns:
The generated code.
Throws:
IllegalActionException - If the code stream encounters an error in processing the specified code block(s).

generatePreinitializeCode

public java.lang.String generatePreinitializeCode()
                                           throws IllegalActionException
Generate preinitialize code. Read the preinitBlock from AddSubtract.c, replace macros with their values and returns the processed code block.

Overrides:
generatePreinitializeCode in class NamedProgramCodeGeneratorAdapter
Returns:
The generated code.
Throws:
IllegalActionException - If the code stream encounters an error in processing the specified code block(s).