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

#ifndef __gnu_java_awt_font_opentype_truetype_GlyphLocator$FourByte__
#define __gnu_java_awt_font_opentype_truetype_GlyphLocator$FourByte__

#pragma interface

#include <gnu/java/awt/font/opentype/truetype/GlyphLocator.h>
extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace awt
      {
        namespace font
        {
          namespace opentype
          {
            namespace truetype
            {
                class GlyphLocator$FourByte;
            }
          }
        }
      }
    }
  }
  namespace java
  {
    namespace nio
    {
        class ByteBuffer;
        class IntBuffer;
    }
  }
}

class gnu::java::awt::font::opentype::truetype::GlyphLocator$FourByte : public ::gnu::java::awt::font::opentype::truetype::GlyphLocator
{

public: // actually package-private
  GlyphLocator$FourByte(::java::nio::ByteBuffer *, ::java::nio::ByteBuffer *);
public:
  ::java::nio::ByteBuffer * getGlyphData(jint);
public: // actually package-private
  ::java::nio::IntBuffer * __attribute__((aligned(__alignof__( ::gnu::java::awt::font::opentype::truetype::GlyphLocator)))) indexToLoc;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_java_awt_font_opentype_truetype_GlyphLocator$FourByte__
