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

#ifndef __gnu_javax_imageio_jpeg_JPEGFrame__
#define __gnu_javax_imageio_jpeg_JPEGFrame__

#pragma interface

#include <java/lang/Object.h>

extern "Java"
{
  namespace javax
  {
    namespace imageio
    {
      namespace plugins
      {
        namespace jpeg
        {
          class JPEGHuffmanTable;
        }
      }
    }
  }
  namespace gnu
  {
    namespace javax
    {
      namespace imageio
      {
        namespace jpeg
        {
          class JPEGFrame;
          class JPEGScan;
        }
      }
    }
  }
}

class gnu::javax::imageio::jpeg::JPEGFrame : public ::java::lang::Object
{
public:
  JPEGFrame ();
  virtual void addComponent (jbyte, jbyte, jbyte);
  virtual void setPrecision (jbyte);
  virtual void setScanLines (jshort);
  virtual void setSamplesPerLine (jshort);
  virtual void setColorMode (jbyte);
  virtual void setComponentCount (jbyte);
  virtual jbyte getComponentCount () { return componentCount; }
  virtual void setHuffmanTables (jbyte, ::javax::imageio::plugins::jpeg::JPEGHuffmanTable *, ::javax::imageio::plugins::jpeg::JPEGHuffmanTable *);
  static const jint JPEG_COLOR_GRAY = 1L;
  static const jint JPEG_COLOR_RGB = 2L;
  static const jint JPEG_COLOR_YCbCr = 3L;
  static const jint JPEG_COLOR_CMYK = 4L;
  jbyte __attribute__((aligned(__alignof__( ::java::lang::Object ))))  precision;
  jbyte colorMode;
  jbyte componentCount;
  jshort width;
  jshort height;
  ::gnu::javax::imageio::jpeg::JPEGScan *components;

  static ::java::lang::Class class$;
};

#endif /* __gnu_javax_imageio_jpeg_JPEGFrame__ */
