java.awt.image
Class MemoryImageSource

java.lang.Object
  extended by java.awt.image.MemoryImageSource
All Implemented Interfaces:
ImageProducer

public class MemoryImageSource
extends Object
implements ImageProducer

An image producer that delivers image data from an array.


Constructor Summary
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
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.
 
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[] 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 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 Detail

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.

Parameters:
w - the image width.
h - the image height.
cm - the color model.
pix - the image data.
off - the offset to the first pixel in the array.
scan - the number of array elements from a pixel on one row to the corresponding pixel on the next row.
props - image properties (null permitted).

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

Parameters:
w - the image width.
h - the image height.
cm - the color model.
pix - the image data.
off - the offset to the first pixel in the array.
scan - the number of array elements from a pixel on one row to the corresponding pixel on the next row.
props - image properties (null permitted).

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.

Parameters:
w - the image width.
h - the image height.
pix - the image data.
off - the offset to the first pixel in the array.
scan - the number of array elements from a pixel on one row to the corresponding pixel on the next row.
props - image properties (null permitted).

MemoryImageSource

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

Parameters:
w - the image width.
h - the image height.
pix - the image data.
off - the offset to the first pixel in the array.
scan - the number of array elements from a pixel on one row to the corresponding pixel on the next row.
Method Detail

addConsumer

public void addConsumer(ImageConsumer ic)
Used to register an ImageConsumer with this ImageProducer.

Specified by:
addConsumer in interface ImageProducer
Parameters:
ic - the image consumer.

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
Parameters:
ic - the image consumer.

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
Parameters:
ic - the image consumer.

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

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
Parameters:
ic - the image consumer.

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

newPixels

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


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.

Parameters:
x - the x-coordinate.
y - the y-coordinate.
w - the width.
h - the height.

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.

Parameters:
x - the x-coordinate.
y - the y-coordinate.
w - the width.
h - the height.
framenotify - send notification?

newPixels

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

newPixels

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