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

#ifndef __java_awt_Window$WindowBltBufferStrategy__
#define __java_awt_Window$WindowBltBufferStrategy__

#pragma interface

#include <java/awt/Component$BltBufferStrategy.h>
extern "Java"
{
  namespace java
  {
    namespace awt
    {
        class Window;
        class Window$WindowBltBufferStrategy;
    }
  }
}

class java::awt::Window$WindowBltBufferStrategy : public ::java::awt::Component$BltBufferStrategy
{

public: // actually package-private
  Window$WindowBltBufferStrategy(::java::awt::Window *, jint, jboolean);
  ::java::awt::Window * __attribute__((aligned(__alignof__( ::java::awt::Component$BltBufferStrategy)))) this$0;
public:
  static ::java::lang::Class class$;
};

#endif // __java_awt_Window$WindowBltBufferStrategy__
