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

#ifndef __java_awt_Panel$AccessibleAWTPanel__
#define __java_awt_Panel$AccessibleAWTPanel__

#pragma interface

#include <java/awt/Container$AccessibleAWTContainer.h>
extern "Java"
{
  namespace java
  {
    namespace awt
    {
        class Panel;
        class Panel$AccessibleAWTPanel;
    }
  }
  namespace javax
  {
    namespace accessibility
    {
        class AccessibleRole;
    }
  }
}

class java::awt::Panel$AccessibleAWTPanel : public ::java::awt::Container$AccessibleAWTContainer
{

public: // actually protected
  Panel$AccessibleAWTPanel(::java::awt::Panel *);
public:
  virtual ::javax::accessibility::AccessibleRole * getAccessibleRole();
private:
  static const jlong serialVersionUID = -6409552226660031050LL;
public: // actually package-private
  ::java::awt::Panel * __attribute__((aligned(__alignof__( ::java::awt::Container$AccessibleAWTContainer)))) this$0;
public:
  static ::java::lang::Class class$;
};

#endif // __java_awt_Panel$AccessibleAWTPanel__
