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

#ifndef __javax_swing_plaf_basic_BasicLookAndFeel$6__
#define __javax_swing_plaf_basic_BasicLookAndFeel$6__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace javax
  {
    namespace swing
    {
        class UIDefaults;
      namespace plaf
      {
        namespace basic
        {
            class BasicLookAndFeel;
            class BasicLookAndFeel$6;
        }
      }
    }
  }
}

class javax::swing::plaf::basic::BasicLookAndFeel$6 : public ::java::lang::Object
{

public: // actually package-private
  BasicLookAndFeel$6(::javax::swing::plaf::basic::BasicLookAndFeel *);
public:
  ::java::lang::Object * createValue(::javax::swing::UIDefaults *);
public: // actually package-private
  ::javax::swing::plaf::basic::BasicLookAndFeel * __attribute__((aligned(__alignof__( ::java::lang::Object)))) this$0;
public:
  static ::java::lang::Class class$;
};

#endif // __javax_swing_plaf_basic_BasicLookAndFeel$6__
