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

#ifndef __gnu_classpath_jdwp_event_Event__
#define __gnu_classpath_jdwp_event_Event__

#pragma interface

#include <java/lang/Object.h>

extern "Java"
{
  namespace gnu
  {
    namespace classpath
    {
      namespace jdwp
      {
        namespace transport
        {
          class JdwpPacket;
        }
        namespace event
        {
          class Event;
          class EventRequest;
        }
      }
    }
  }
}

class gnu::classpath::jdwp::event::Event : public ::java::lang::Object
{
public:
  Event (jbyte);
  virtual jbyte getEventKind () { return _eventKind; }
public:  // actually protected
  virtual void _writeData (::java::io::DataOutputStream *) = 0;
public:
  virtual ::java::lang::Object *getParameter (jint) = 0;
  virtual ::gnu::classpath::jdwp::transport::JdwpPacket *toPacket (::java::io::DataOutputStream *, ::gnu::classpath::jdwp::event::EventRequest *);
  static const jint EVENT_CLASS = 1L;
  static const jint EVENT_THREAD = 2L;
  static const jint EVENT_LOCATION = 3L;
  static const jint EVENT_INSTANCE = 4L;
  static const jint EVENT_FIELD = 5L;
  static const jint EVENT_EXCEPTION_CLASS = 6L;
  static const jint EVENT_EXCEPTION_CAUGHT = 7L;
private:
  jbyte __attribute__((aligned(__alignof__( ::java::lang::Object ))))  _eventKind;
public:

  static ::java::lang::Class class$;
};

#endif /* __gnu_classpath_jdwp_event_Event__ */
