summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/clucene/src/CLucene/index/TermInfo.h
blob: 5baf6bc2805ecf86561e187ec8d1631c3c65e321 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
/*------------------------------------------------------------------------------
* Copyright (C) 2003-2006 Ben van Klinken and the CLucene Team
* 
* Distributable under the terms of either the Apache License (Version 2.0) or 
* the GNU Lesser General Public License, as specified in the COPYING file.
*
* Changes are Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
------------------------------------------------------------------------------*/
#ifndef _lucene_index_TermInfo
#define _lucene_index_TermInfo

#if defined(_LUCENE_PRAGMA_ONCE)
# pragma once
#endif

CL_NS_DEF(index)

// A TermInfo is the record of information stored for a term.
class TermInfo : LUCENE_BASE
{
public:
    // The number of documents which contain the term. 
    int32_t docFreq;

    //A pointer into the TermFreqs file (.frq)
    //The .frq file contains the lists of documents which contain each term, 
    //along with the frequency of the term in that document.
    int64_t freqPointer;

    //A pointer into the TermPosition file (.prx).
    //The .prx file contains the lists of positions that each term 
    //occurs at within documents.
    int64_t proxPointer;

    int32_t skipOffset;

    //Constructor
    TermInfo();

    //Constructor
    TermInfo(int32_t df, int64_t fp, int64_t pp);

    //Constructor
    //Initialises this instance by copying the values of another TermInfo ti
    TermInfo(const TermInfo* ti);

    //Destructor
    ~TermInfo();

    //Sets a new document frequency, a new freqPointer and a new proxPointer
    void set(int32_t docFreq, int64_t freqPointer, int64_t proxPointer,
        int32_t skipOffset);

    //Sets a new document frequency, a new freqPointer and a new proxPointer
    //by copying these values from another instance of TermInfo
    void set(const TermInfo* ti);
};

CL_NS_END

#endif