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

#ifndef __gnu_classpath_jdwp_exception_InvalidThreadGroupException__
#define __gnu_classpath_jdwp_exception_InvalidThreadGroupException__

#pragma interface

#include <gnu/classpath/jdwp/exception/JdwpException.h>
extern "Java"
{
  namespace gnu
  {
    namespace classpath
    {
      namespace jdwp
      {
        namespace exception
        {
            class InvalidThreadGroupException;
        }
      }
    }
  }
}

class gnu::classpath::jdwp::exception::InvalidThreadGroupException : public ::gnu::classpath::jdwp::exception::JdwpException
{

public:
  InvalidThreadGroupException(jlong);
  InvalidThreadGroupException(::java::lang::Throwable *);
  static ::java::lang::Class class$;
};

#endif // __gnu_classpath_jdwp_exception_InvalidThreadGroupException__
