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

#ifndef __org_apache_lucene_index_SegmentTermDocs__
#define __org_apache_lucene_index_SegmentTermDocs__

#pragma interface

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

extern "Java"
{
  namespace org
  {
    namespace apache
    {
      namespace lucene
      {
        namespace util
        {
          class BitVector;
        }
        namespace store
        {
          class IndexInput;
        }
        namespace index
        {
          class SegmentTermDocs;
          class TermInfo;
          class TermEnum;
          class Term;
          class SegmentReader;
        }
      }
    }
  }
}

class org::apache::lucene::index::SegmentTermDocs : public ::java::lang::Object
{
public:  // actually protected
  SegmentTermDocs (::org::apache::lucene::index::SegmentReader *);
public:
  virtual void seek (::org::apache::lucene::index::Term *);
  virtual void seek (::org::apache::lucene::index::TermEnum *);
public: // actually package-private
  virtual void seek (::org::apache::lucene::index::TermInfo *);
public:
  virtual void close ();
  jint doc () { return doc__; }
  jint freq () { return freq__; }
public:  // actually protected
  virtual void skippingDoc () { }
public:
  virtual jboolean next ();
  virtual jint read (jintArray, jintArray);
public:  // actually protected
  virtual void skipProx (jlong) { }
public:
  virtual jboolean skipTo (jint);
public:  // actually protected
  ::org::apache::lucene::index::SegmentReader * __attribute__((aligned(__alignof__( ::java::lang::Object )))) parent;
  ::org::apache::lucene::store::IndexInput *freqStream;
  jint count;
  jint df;
  ::org::apache::lucene::util::BitVector *deletedDocs;
public: // actually package-private
  jint doc__;
  jint freq__;
private:
  jint skipInterval;
  jint numSkips;
  jint skipCount;
  ::org::apache::lucene::store::IndexInput *skipStream;
  jint skipDoc;
  jlong freqPointer;
  jlong proxPointer;
  jlong skipPointer;
  jboolean haveSkipped;
public:

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

#endif /* __org_apache_lucene_index_SegmentTermDocs__ */
