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

#ifndef __org_apache_lucene_search_highlight_TokenGroup__
#define __org_apache_lucene_search_highlight_TokenGroup__

#pragma interface

#include <java/lang/Object.h>
#include <gcj/array.h>

extern "Java"
{
  namespace org
  {
    namespace apache
    {
      namespace lucene
      {
        namespace search
        {
          namespace highlight
          {
            class TokenGroup;
          }
        }
        namespace analysis
        {
          class Token;
        }
      }
    }
  }
}

class org::apache::lucene::search::highlight::TokenGroup : public ::java::lang::Object
{
public:
  TokenGroup ();
public: // actually package-private
  virtual void addToken (::org::apache::lucene::analysis::Token *, jfloat);
  virtual jboolean isDistinct (::org::apache::lucene::analysis::Token *);
  virtual void clear ();
public:
  virtual ::org::apache::lucene::analysis::Token *getToken (jint);
  virtual jfloat getScore (jint);
  virtual jint getEndOffset () { return endOffset; }
  virtual jint getNumTokens () { return numTokens; }
  virtual jint getStartOffset () { return startOffset; }
  virtual jfloat getTotalScore () { return tot; }
private:
  static const jint MAX_NUM_TOKENS_PER_GROUP = 50L;
public: // actually package-private
  JArray< ::org::apache::lucene::analysis::Token *> * __attribute__((aligned(__alignof__( ::java::lang::Object )))) tokens;
  jfloatArray scores;
  jint numTokens;
  jint startOffset;
  jint endOffset;
  jfloat tot;
  jint matchStartOffset;
  jint matchEndOffset;
public:

  static ::java::lang::Class class$;
};

#endif /* __org_apache_lucene_search_highlight_TokenGroup__ */
