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

#ifndef __javax_imageio_event_IIOReadWarningListener__
#define __javax_imageio_event_IIOReadWarningListener__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace javax
  {
    namespace imageio
    {
        class ImageReader;
      namespace event
      {
          class IIOReadWarningListener;
      }
    }
  }
}

class javax::imageio::event::IIOReadWarningListener : public ::java::lang::Object
{

public:
  virtual void warningOccurred(::javax::imageio::ImageReader *, ::java::lang::String *) = 0;
  static ::java::lang::Class class$;
} __attribute__ ((java_interface));

#endif // __javax_imageio_event_IIOReadWarningListener__
