
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __java_awt_image_MemoryImageSource__
#define __java_awt_image_MemoryImageSource__

#pragma interface

#include <java/lang/Object.h>
#include <gcj/array.h>

extern "Java"
{
  namespace java
  {
    namespace awt
    {
      namespace image
      {
          class ColorModel;
          class ImageConsumer;
          class MemoryImageSource;
      }
    }
  }
}

class java::awt::image::MemoryImageSource : public ::java::lang::Object
{

public:
  MemoryImageSource(jint, jint, ::java::awt::image::ColorModel *, JArray< jbyte > *, jint, jint);
  MemoryImageSource(jint, jint, ::java::awt::image::ColorModel *, JArray< jbyte > *, jint, jint, ::java::util::Hashtable *);
  MemoryImageSource(jint, jint, ::java::awt::image::ColorModel *, JArray< jint > *, jint, jint);
  MemoryImageSource(jint, jint, ::java::awt::image::ColorModel *, JArray< jint > *, jint, jint, ::java::util::Hashtable *);
  MemoryImageSource(jint, jint, JArray< jint > *, jint, jint, ::java::util::Hashtable *);
  MemoryImageSource(jint, jint, JArray< jint > *, jint, jint);
  virtual void addConsumer(::java::awt::image::ImageConsumer *);
  virtual jboolean isConsumer(::java::awt::image::ImageConsumer *);
  virtual void removeConsumer(::java::awt::image::ImageConsumer *);
  virtual void startProduction(::java::awt::image::ImageConsumer *);
  virtual void requestTopDownLeftRightResend(::java::awt::image::ImageConsumer *);
  virtual void setAnimated(jboolean);
  virtual void setFullBufferUpdates(jboolean);
  virtual void newPixels();
private:
  void sendPicture(::java::awt::image::ImageConsumer *);
public:
  virtual void newPixels(jint, jint, jint, jint);
  virtual void newPixels(jint, jint, jint, jint, jboolean);
  virtual void newPixels(JArray< jbyte > *, ::java::awt::image::ColorModel *, jint, jint);
  virtual void newPixels(JArray< jint > *, ::java::awt::image::ColorModel *, jint, jint);
private:
  jboolean __attribute__((aligned(__alignof__( ::java::lang::Object)))) animated;
  jboolean fullbuffers;
  JArray< jint > * pixeli;
  jint width;
  jint height;
  jint offset;
  jint scansize;
  JArray< jbyte > * pixelb;
  ::java::awt::image::ColorModel * cm;
  ::java::util::Hashtable * props;
  ::java::util::Vector * consumers;
public:
  static ::java::lang::Class class$;
};

#endif // __java_awt_image_MemoryImageSource__
