ptolemy.actor.lib.jai
Class JAIPNGWriter
java.lang.Object
ptolemy.kernel.util.NamedObj
ptolemy.kernel.InstantiableNamedObj
ptolemy.kernel.Entity
ptolemy.kernel.ComponentEntity
ptolemy.actor.AtomicActor
ptolemy.actor.TypedAtomicActor
ptolemy.actor.lib.Sink
ptolemy.actor.lib.jai.JAIWriter
ptolemy.actor.lib.jai.JAIPNGWriter
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, Actor, Executable, FiringsRecordable, Initializable, TypedActor, Changeable, Debuggable, DebugListener, Derivable, Instantiable, ModelErrorHandler, MoMLExportable, Moveable, Nameable
public class JAIPNGWriter
- extends JAIWriter
Write a javax.media.jai.RenderedOp to a specified PNG file.
The file is specified by the fileName attribute
using any form acceptable to FileParameter.
If the confirmOverwrite parameter has value false,
then this actor will overwrite the specified file if it exists without
asking. If true (the default), then if the file exists, then
this actor will ask for confirmation before overwriting.
- Since:
- Ptolemy II 4.0
- Version:
- $Id: JAIPNGWriter.java 57040 2010-01-27 20:52:32Z cxh $
- Author:
- James Yeh, Christopher Hylands Brooks
- See Also:
FileParameter
,
Serialized Form
- Accepted Rating:
- Proposed Rating:
Fields inherited from class ptolemy.actor.lib.Sink |
input |
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 |
JAIPNGWriter(CompositeEntity container,
java.lang.String name)
Construct an actor with the given container and name. |
Method Summary |
void |
attributeChanged(Attribute attribute)
Override the base class and attempt set either the fileName,
whether to overwrite an existing file or not, or how the data
will be written. |
boolean |
postfire()
Read an input JAIImageToken and write it to the file. |
Methods inherited from class ptolemy.actor.AtomicActor |
_actorFiring, _actorFiring, addActorFiringListener, addInitializable, clone, connectionsChanged, createReceivers, declareDelayDependency, fire, getCausalityInterface, getDirector, getExecutiveDirector, getManager, initialize, inputPortList, isFireFunctional, isStrict, iterate, newReceiver, outputPortList, prefire, preinitialize, pruneDependencies, recordFiring, removeActorFiringListener, removeDependency, removeInitializable, setContainer, stop, stopFire, terminate, wrapup |
Methods inherited from class ptolemy.kernel.ComponentEntity |
_adjustDeferrals, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, isAtomic, isOpaque, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName |
Methods inherited from class ptolemy.kernel.Entity |
_description, _exportMoMLContents, _removePort, _validateSettables, connectedPortList, connectedPorts, containedObjectsIterator, getAttribute, getPort, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts, setClassDefinition, uniqueName |
Methods inherited from class ptolemy.kernel.util.NamedObj |
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _propagateValue, _recordDecoratedAttributes, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, attributeList, attributeList, 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, propagateValue, propagateValues, removeChangeListener, removeDebugListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, validateSettables, workspace |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
adam7Interlacing
public Parameter adam7Interlacing
- If the Adam7 Interlacing option is false, pixels are stored
left to right and from top to bottom. If it is true (the
default), seven distinct passes are made over the image, each
transmitting a subset of the pixels.
background
public Parameter background
- If the setBackground parameter is false, then this parameter
is ignored. If it is true, this parameter sets the
background color of the image. Note that this will only show
up in images with transparency. If the image is a grayscale
image, only the first value of the array is used. The value
is an integer that should range from 0 to (2^bitdepth - 1).
The bitdepth is defined by the bitDepth parameter in this
actor. If the image is an RGB image, then the first 3 values
of the array are read. Each of these also range from
0 to (2^bitdepth - 1).
bitDepth
public Parameter bitDepth
- The bit depth. The initial default is an integer of value 8.
gamma
public Parameter gamma
- The gamma. The initial default is a double of value 0.455.
setBackground
public Parameter setBackground
- True if the background is to be set. The initial value is false.
setGamma
public Parameter setGamma
- True if the gamma parameter is to be used.
The initial value is false.
_bitDepth
private int _bitDepth
_adam7Interlacing
private boolean _adam7Interlacing
- The value of the storeTopDown parameter.
_setGamma
private boolean _setGamma
_gamma
private double _gamma
_setBackground
private boolean _setBackground
_initialArray
private IntToken[] _initialArray
_valueArray
private int[] _valueArray
JAIPNGWriter
public JAIPNGWriter(CompositeEntity container,
java.lang.String name)
throws IllegalActionException,
NameDuplicationException
- Construct an actor with the given container and name.
- Parameters:
container
- The container.name
- The name of this actor.
- Throws:
IllegalActionException
- If the actor cannot be contained
by the proposed container.
NameDuplicationException
- If the container already has an
actor with this name.
attributeChanged
public void attributeChanged(Attribute attribute)
throws IllegalActionException
- Override the base class and attempt set either the fileName,
whether to overwrite an existing file or not, or how the data
will be written.
- Overrides:
attributeChanged
in class NamedObj
- Parameters:
attribute
- The attribute that changed.
- Throws:
IllegalActionException
- If a contained method throws it.
postfire
public boolean postfire()
throws IllegalActionException
- Read an input JAIImageToken and write it to the file.
If the file does not exist then create it. If the file
already exists, then query the user for overwrite.
- Specified by:
postfire
in interface Executable
- Overrides:
postfire
in class JAIWriter
- Returns:
- True if the execution can continue.
- Throws:
IllegalActionException
- If the file cannot be opened
or created, if the user refuses to overwrite an existing file,
of if the image in unable to be encoded.