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

#ifndef __java_beans_IndexedPropertyChangeEvent__
#define __java_beans_IndexedPropertyChangeEvent__

#pragma interface

#include <java/beans/PropertyChangeEvent.h>
extern "Java"
{
  namespace java
  {
    namespace beans
    {
        class IndexedPropertyChangeEvent;
    }
  }
}

class java::beans::IndexedPropertyChangeEvent : public ::java::beans::PropertyChangeEvent
{

public:
  IndexedPropertyChangeEvent(::java::lang::Object *, ::java::lang::String *, ::java::lang::Object *, ::java::lang::Object *, jint);
  virtual jint getIndex();
private:
  static const jlong serialVersionUID = -320227448495806870LL;
  jint __attribute__((aligned(__alignof__( ::java::beans::PropertyChangeEvent)))) index;
public:
  static ::java::lang::Class class$;
};

#endif // __java_beans_IndexedPropertyChangeEvent__
