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

#ifndef __java_io_InputStream__
#define __java_io_InputStream__

#pragma interface

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


class java::io::InputStream : public ::java::lang::Object
{

public:
  InputStream();
  virtual jint available();
  virtual void close();
  virtual void mark(jint);
  virtual jboolean markSupported();
  virtual jint read() = 0;
  virtual jint read(JArray< jbyte > *);
  virtual jint read(JArray< jbyte > *, jint, jint);
  virtual void reset();
  virtual jlong skip(jlong);
  static ::java::lang::Class class$;
};

#endif // __java_io_InputStream__
