1 /*------------------------------------------------------------------------------ 2 * Copyright (C) 2003-2006 Ben van Klinken and the CLucene Team 3 * 4 * Distributable under the terms of either the Apache License (Version 2.0) or 5 * the GNU Lesser General Public License, as specified in the COPYING file. 6 ------------------------------------------------------------------------------*/ 7 #ifndef _lucene_index_TermInfo 8 #define _lucene_index_TermInfo 9 10 CL_NS_DEF(index)11CL_NS_DEF(index) 12 13 // A TermInfo is the record of information stored for a term. 14 class TermInfo: LUCENE_BASE{ 15 public: 16 // The number of documents which contain the term. 17 int32_t docFreq; 18 19 //A pointer into the TermFreqs file (.frq) 20 //The .frq file contains the lists of documents which contain each term, 21 //along with the frequency of the term in that document. 22 int64_t freqPointer; 23 24 //A pointer into the TermPosition file (.prx). 25 //The .prx file contains the lists of positions that each term 26 //occurs at within documents. 27 int64_t proxPointer; 28 29 int32_t skipOffset; 30 31 //Constructor 32 TermInfo(); 33 34 //Constructor 35 TermInfo(const int32_t df, const int64_t fp, const int64_t pp); 36 37 //Constructor 38 //Initialises this instance by copying the values of another TermInfo ti 39 TermInfo(const TermInfo* ti); 40 41 //Destructor 42 ~TermInfo(); 43 44 //Sets a new document frequency, a new freqPointer and a new proxPointer 45 void set(const int32_t docFreq, const int64_t freqPointer, const int64_t proxPointer, int32_t skipOffset); 46 47 //Sets a new document frequency, a new freqPointer and a new proxPointer 48 //by copying these values from another instance of TermInfo 49 void set(const TermInfo* ti); 50 }; 51 CL_NS_END 52 #endif 53