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

#ifndef __org_apache_lucene_search_TermScorer__
#define __org_apache_lucene_search_TermScorer__

#pragma interface

#include <org/apache/lucene/search/Scorer.h>
#include <gcj/array.h>

extern "Java"
{
  namespace org
  {
    namespace apache
    {
      namespace lucene
      {
        namespace index
        {
          class TermDocs;
        }
        namespace search
        {
          class TermScorer;
          class Explanation;
          class HitCollector;
          class Similarity;
          class Weight;
        }
      }
    }
  }
}

class org::apache::lucene::search::TermScorer : public ::org::apache::lucene::search::Scorer
{
public: // actually package-private
  TermScorer (::org::apache::lucene::search::Weight *, ::org::apache::lucene::index::TermDocs *, ::org::apache::lucene::search::Similarity *, jbyteArray);
public:
  void score (::org::apache::lucene::search::HitCollector *);
public:  // actually protected
  jboolean score (::org::apache::lucene::search::HitCollector *, jint);
public:
  jint doc () { return doc__; }
  jboolean next ();
  jfloat score ();
  jboolean skipTo (jint);
  ::org::apache::lucene::search::Explanation *explain (jint);
  ::java::lang::String *toString ();
private:
  ::org::apache::lucene::search::Weight * __attribute__((aligned(__alignof__( ::org::apache::lucene::search::Scorer )))) weight;
  ::org::apache::lucene::index::TermDocs *termDocs;
  jbyteArray norms;
  jfloat weightValue;
  jint doc__;
  jintArray docs;
  jintArray freqs;
  jint pointer;
  jint pointerMax;
  static const jint SCORE_CACHE_SIZE = 32L;
  jfloatArray scoreCache;
public:

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

#endif /* __org_apache_lucene_search_TermScorer__ */
