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

#ifndef __javax_print_DocFlavor$INPUT_STREAM__
#define __javax_print_DocFlavor$INPUT_STREAM__

#pragma interface

#include <javax/print/DocFlavor.h>
extern "Java"
{
  namespace javax
  {
    namespace print
    {
        class DocFlavor$INPUT_STREAM;
    }
  }
}

class javax::print::DocFlavor$INPUT_STREAM : public ::javax::print::DocFlavor
{

public:
  DocFlavor$INPUT_STREAM(::java::lang::String *);
private:
  static const jlong serialVersionUID = -7045842700749194127LL;
public:
  static ::javax::print::DocFlavor$INPUT_STREAM * AUTOSENSE;
  static ::javax::print::DocFlavor$INPUT_STREAM * GIF;
  static ::javax::print::DocFlavor$INPUT_STREAM * JPEG;
  static ::javax::print::DocFlavor$INPUT_STREAM * PCL;
  static ::javax::print::DocFlavor$INPUT_STREAM * PDF;
  static ::javax::print::DocFlavor$INPUT_STREAM * PNG;
  static ::javax::print::DocFlavor$INPUT_STREAM * POSTSCRIPT;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_HTML_HOST;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_HTML_US_ASCII;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_HTML_UTF_16;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_HTML_UTF_16BE;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_HTML_UTF_16LE;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_HTML_UTF_8;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_PLAIN_HOST;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_PLAIN_US_ASCII;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_PLAIN_UTF_16;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_PLAIN_UTF_16BE;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_PLAIN_UTF_16LE;
  static ::javax::print::DocFlavor$INPUT_STREAM * TEXT_PLAIN_UTF_8;
  static ::java::lang::Class class$;
};

#endif // __javax_print_DocFlavor$INPUT_STREAM__
