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

#ifndef __javax_print_DocFlavor$URL__
#define __javax_print_DocFlavor$URL__

#pragma interface

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

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

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

#endif // __javax_print_DocFlavor$URL__
