Lucene++ - a full-featured, c++ search engine
API Documentation
Main Page
Related Pages
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
include
Similarity.h
Go to the documentation of this file.
1
// Copyright (c) 2009-2011 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.
6
7
#ifndef SIMILARITY_H
8
#define SIMILARITY_H
9
10
#include "
Explanation.h
"
11
12
namespace
Lucene
13
{
427
class
LPPAPI
Similarity
:
public
LuceneObject
428
{
429
public
:
430
Similarity
();
431
virtual
~
Similarity
();
432
433
LUCENE_CLASS
(
Similarity
);
434
435
protected
:
436
static
const
int32_t NO_DOC_ID_PROVIDED;
437
438
protected
:
439
static
const
Collection<double>
NORM_TABLE();
440
441
public
:
446
static
SimilarityPtr
getDefault();
447
450
static
double
decodeNorm(uint8_t b);
451
454
static
const
Collection<double>
getNormDecoder();
455
468
virtual
double
computeNorm(
const
String& fieldName,
FieldInvertStatePtr
state);
469
485
virtual
double
lengthNorm(
const
String& fieldName, int32_t numTokens) = 0;
486
498
virtual
double
queryNorm(
double
sumOfSquaredWeights) = 0;
499
509
static
uint8_t encodeNorm(
double
f);
510
522
virtual
double
tf(int32_t freq);
523
534
virtual
double
sloppyFreq(int32_t distance) = 0;
535
545
virtual
double
tf(
double
freq) = 0;
546
562
virtual
IDFExplanationPtr
idfExplain(
TermPtr
term,
SearcherPtr
searcher);
563
572
virtual
IDFExplanationPtr
idfExplain(
Collection<TermPtr>
terms,
SearcherPtr
searcher);
573
584
virtual
double
idf(int32_t docFreq, int32_t numDocs) = 0;
585
596
virtual
double
coord(int32_t overlap, int32_t maxOverlap) = 0;
597
612
virtual
double
scorePayload(int32_t docId,
const
String& fieldName, int32_t start, int32_t end, ByteArray payload, int32_t offset, int32_t length);
613
};
614
}
615
616
#endif
clucene.sourceforge.net