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

#ifndef __java_awt_Canvas$CanvasBltBufferStrategy__
#define __java_awt_Canvas$CanvasBltBufferStrategy__

#pragma interface

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

class java::awt::Canvas$CanvasBltBufferStrategy : public ::java::awt::Component$BltBufferStrategy
{

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

#endif // __java_awt_Canvas$CanvasBltBufferStrategy__
