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

#ifndef __gnu_java_awt_BitMaskExtent__
#define __gnu_java_awt_BitMaskExtent__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace awt
      {
          class BitMaskExtent;
      }
    }
  }
}

class gnu::java::awt::BitMaskExtent : public ::java::lang::Object
{

public:
  BitMaskExtent();
  void setMask(jlong);
  jlong toMask();
  jbyte __attribute__((aligned(__alignof__( ::java::lang::Object)))) leastSignificantBit;
  jbyte bitWidth;
  static ::java::lang::Class class$;
};

#endif // __gnu_java_awt_BitMaskExtent__
