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

#ifndef __gnu_gcj_convert_IOConverter__
#define __gnu_gcj_convert_IOConverter__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace gnu
  {
    namespace gcj
    {
      namespace convert
      {
          class IOConverter;
      }
    }
  }
}

class gnu::gcj::convert::IOConverter : public ::java::lang::Object
{

public:
  IOConverter();
private:
  static jboolean iconv_init();
public: // actually protected
  static ::java::lang::String * canonicalize(::java::lang::String *);
private:
  static ::java::util::Hashtable * hash;
public: // actually protected
  static jboolean iconv_byte_swap;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_gcj_convert_IOConverter__
