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

#ifndef __gnu_awt_xlib_XCanvasPeer$DoMap__
#define __gnu_awt_xlib_XCanvasPeer$DoMap__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace gnu
  {
    namespace awt
    {
      namespace xlib
      {
          class XCanvasPeer$DoMap;
      }
    }
    namespace gcj
    {
      namespace xlib
      {
          class Window;
      }
    }
  }
}

class gnu::awt::xlib::XCanvasPeer$DoMap : public ::java::lang::Object
{

public:
  XCanvasPeer$DoMap(::gnu::gcj::xlib::Window *);
  virtual void run();
public: // actually package-private
  ::gnu::gcj::xlib::Window * __attribute__((aligned(__alignof__( ::java::lang::Object)))) window;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_awt_xlib_XCanvasPeer$DoMap__
