java.awt.image

Class MemoryImageSource

Implemented Interfaces:
ImageProducer

public class MemoryImageSource
extends Object
implements ImageProducer

Constructor Summary

MemoryImageSource(int w, int h, int[] pix, int off, int scan)
Constructs an ImageProducer from memory using the default RGB ColorModel
MemoryImageSource(int w, int h, int[] pix, int off, int scan, Hashtable props)
Constructs an ImageProducer from memory using the default RGB ColorModel
MemoryImageSource(int w, int h, ColorModel cm, byte[] pix, int off, int scan)
Construct an image producer that reads image data from a byte array.
MemoryImageSource(int w, int h, ColorModel cm, byte[] pix, int off, int scan, Hashtable props)
Constructs an ImageProducer from memory
MemoryImageSource(int w, int h, ColorModel cm, int[] pix, int off, int scan)
Construct an image producer that reads image data from an integer array.
MemoryImageSource(int w, int h, ColorModel cm, int[] pix, int off, int scan, Hashtable props)
Constructs an ImageProducer from memory

Method Summary

void
addConsumer(ImageConsumer ic)
Used to register an ImageConsumer with this ImageProducer.
boolean
isConsumer(ImageConsumer ic)
Used to determine if the given ImageConsumer is already registered with this ImageProducer.
void
newPixels()
Send an animation frame to the image consumers.
void
newPixels(byte[] newpix, ColorModel newmodel, int offset, int scansize)
void
newPixels(int x, int y, int w, int h)
Send an animation frame to the image consumers containing the specified pixels unless setFullBufferUpdates is set.
void
newPixels(int x, int y, int w, int h, boolean framenotify)
Send an animation frame to the image consumers containing the specified pixels unless setFullBufferUpdates is set.
void
newPixels(int[] newpix, ColorModel newmodel, int offset, int scansize)
void
removeConsumer(ImageConsumer ic)
Used to remove an ImageConsumer from the list of registered consumers for this ImageProducer.
void
requestTopDownLeftRightResend(ImageConsumer ic)
Used to register an ImageConsumer with this ImageProducer and then request that this producer resend the image data in the order top-down, left-right.
void
setAnimated(boolean animated)
Changes a flag to indicate whether this MemoryImageSource supports animations.
void
setFullBufferUpdates(boolean fullbuffers)
A flag to indicate whether or not to send full buffer updates when sending animation.
void
startProduction(ImageConsumer ic)
Used to register an ImageConsumer with this ImageProducer and then immediately start reconstruction of the image data to be delivered to all registered consumers.

Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

MemoryImageSource

public MemoryImageSource(int w,
                         int h,
                         int[] pix,
                         int off,
                         int scan)
Constructs an ImageProducer from memory using the default RGB ColorModel

MemoryImageSource

public MemoryImageSource(int w,
                         int h,
                         int[] pix,
                         int off,
                         int scan,
                         Hashtable props)
Constructs an ImageProducer from memory using the default RGB ColorModel

MemoryImageSource

public MemoryImageSource(int w,
                         int h,
                         ColorModel cm,
                         byte[] pix,
                         int off,
                         int scan)
Construct an image producer that reads image data from a byte array.
Parameters:
w - width of image
h - height of image
cm - the color model used to represent pixel values
pix - a byte array of pixel values
off - the offset into the array at which the first pixel is stored
scan - the number of array elements that represents a single pixel row

MemoryImageSource

public MemoryImageSource(int w,
                         int h,
                         ColorModel cm,
                         byte[] pix,
                         int off,
                         int scan,
                         Hashtable props)
Constructs an ImageProducer from memory

MemoryImageSource

public MemoryImageSource(int w,
                         int h,
                         ColorModel cm,
                         int[] pix,
                         int off,
                         int scan)
Construct an image producer that reads image data from an integer array.
Parameters:
w - width of image
h - height of image
cm - the color model used to represent pixel values
pix - an integer array of pixel values
off - the offset into the array at which the first pixel is stored
scan - the number of array elements that represents a single pixel row

MemoryImageSource

public MemoryImageSource(int w,
                         int h,
                         ColorModel cm,
                         int[] pix,
                         int off,
                         int scan,
                         Hashtable props)
Constructs an ImageProducer from memory

Method Details

addConsumer

public void addConsumer(ImageConsumer ic)
Used to register an ImageConsumer with this ImageProducer.
Specified by:
addConsumer in interface ImageProducer

isConsumer

public boolean isConsumer(ImageConsumer ic)
Used to determine if the given ImageConsumer is already registered with this ImageProducer.
Specified by:
isConsumer in interface ImageProducer

newPixels

public void newPixels()
Send an animation frame to the image consumers.

newPixels

public void newPixels(byte[] newpix,
                      ColorModel newmodel,
                      int offset,
                      int scansize)

newPixels

public void newPixels(int x,
                      int y,
                      int w,
                      int h)
Send an animation frame to the image consumers containing the specified pixels unless setFullBufferUpdates is set.

newPixels

public void newPixels(int x,
                      int y,
                      int w,
                      int h,
                      boolean framenotify)
Send an animation frame to the image consumers containing the specified pixels unless setFullBufferUpdates is set. If framenotify is set then a notification is sent when the frame is sent otherwise no status is sent.

newPixels

public void newPixels(int[] newpix,
                      ColorModel newmodel,
                      int offset,
                      int scansize)

removeConsumer

public void removeConsumer(ImageConsumer ic)
Used to remove an ImageConsumer from the list of registered consumers for this ImageProducer.
Specified by:
removeConsumer in interface ImageProducer

requestTopDownLeftRightResend

public void requestTopDownLeftRightResend(ImageConsumer ic)
Used to register an ImageConsumer with this ImageProducer and then request that this producer resend the image data in the order top-down, left-right.
Specified by:
requestTopDownLeftRightResend in interface ImageProducer

setAnimated

public void setAnimated(boolean animated)
Changes a flag to indicate whether this MemoryImageSource supports animations.
Parameters:
animated - A flag indicating whether this class supports animations

setFullBufferUpdates

public void setFullBufferUpdates(boolean fullbuffers)
A flag to indicate whether or not to send full buffer updates when sending animation. If this flag is set then full buffers are sent in the newPixels methods instead of just regions.
Parameters:
fullbuffers - - a flag indicating whether to send the full buffers

startProduction

public void startProduction(ImageConsumer ic)
Used to register an ImageConsumer with this ImageProducer and then immediately start reconstruction of the image data to be delivered to all registered consumers.
Specified by:
startProduction in interface ImageProducer

MemoryImageSource.java -- Java class for providing image data Copyright (C) 1999, 2004 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.