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

#ifndef __org_apache_lucene_analysis_cn_ChineseTokenizer__
#define __org_apache_lucene_analysis_cn_ChineseTokenizer__

#pragma interface

#include <org/apache/lucene/analysis/Tokenizer.h>
#include <gcj/array.h>

extern "Java"
{
  namespace org
  {
    namespace apache
    {
      namespace lucene
      {
        namespace analysis
        {
          namespace cn
          {
            class ChineseTokenizer;
          }
          class Token;
        }
      }
    }
  }
}

class org::apache::lucene::analysis::cn::ChineseTokenizer : public ::org::apache::lucene::analysis::Tokenizer
{
public:
  ChineseTokenizer (::java::io::Reader *);
private:
  void push (jchar);
  ::org::apache::lucene::analysis::Token *flush ();
public:
  ::org::apache::lucene::analysis::Token *next ();
private:
  jint __attribute__((aligned(__alignof__( ::org::apache::lucene::analysis::Tokenizer ))))  offset;
  jint bufferIndex;
  jint dataLen;
  static const jint MAX_WORD_LEN = 255L;
  static const jint IO_BUFFER_SIZE = 1024L;
  jcharArray buffer;
  jcharArray ioBuffer;
  jint length;
  jint start;
public:

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

#endif /* __org_apache_lucene_analysis_cn_ChineseTokenizer__ */
