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

#ifndef __java_awt_dnd_peer_DropTargetPeer__
#define __java_awt_dnd_peer_DropTargetPeer__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace java
  {
    namespace awt
    {
      namespace dnd
      {
          class DropTarget;
        namespace peer
        {
            class DropTargetPeer;
        }
      }
    }
  }
}

class java::awt::dnd::peer::DropTargetPeer : public ::java::lang::Object
{

public:
  virtual void addDropTarget(::java::awt::dnd::DropTarget *) = 0;
  virtual void removeDropTarget(::java::awt::dnd::DropTarget *) = 0;
  static ::java::lang::Class class$;
} __attribute__ ((java_interface));

#endif // __java_awt_dnd_peer_DropTargetPeer__
