1 /////////////////////////////////////////////////////////////////////////////
2 // Copyright (c) 2009-2014 Alan Wright. All rights reserved.
3 // Distributable under the terms of either the Apache License (Version 2.0)
4 // or the GNU Lesser General Public License.
5 /////////////////////////////////////////////////////////////////////////////
6 
7 #ifndef FREQPROXTERMSWRITERPERTHREAD_H
8 #define FREQPROXTERMSWRITERPERTHREAD_H
9 
10 #include "TermsHashConsumerPerThread.h"
11 
12 namespace Lucene {
13 
14 class FreqProxTermsWriterPerThread : public TermsHashConsumerPerThread {
15 public:
16     FreqProxTermsWriterPerThread(const TermsHashPerThreadPtr& perThread);
17     virtual ~FreqProxTermsWriterPerThread();
18 
19     LUCENE_CLASS(FreqProxTermsWriterPerThread);
20 
21 public:
22     TermsHashPerThreadWeakPtr _termsHashPerThread;
23     DocStatePtr docState;
24 
25 public:
26     virtual TermsHashConsumerPerFieldPtr addField(const TermsHashPerFieldPtr& termsHashPerField, const FieldInfoPtr& fieldInfo);
27     virtual void startDocument();
28     virtual DocWriterPtr finishDocument();
29     virtual void abort();
30 };
31 
32 }
33 
34 #endif
35