Lucene.Net
3.0.3
Lucene.Net is a .NET port of the Java Lucene Indexing Library
Main Page
Packages
Classes
Files
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Properties
core
Search
HitQueue.cs
Go to the documentation of this file.
1
/*
2
* Licensed to the Apache Software Foundation (ASF) under one or more
3
* contributor license agreements. See the NOTICE file distributed with
4
* this work for additional information regarding copyright ownership.
5
* The ASF licenses this file to You under the Apache License, Version 2.0
6
* (the "License"); you may not use this file except in compliance with
7
* the License. You may obtain a copy of the License at
8
*
9
* http://www.apache.org/licenses/LICENSE-2.0
10
*
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
16
*/
17
18
using
System;
19
using
Lucene.Net.Util;
20
21
namespace
Lucene.Net.Search
22
{
23
24
public
sealed
class
HitQueue
:
PriorityQueue
<ScoreDoc>
25
{
26
27
private
bool
prePopulate;
28
68
public
/*internal*/
HitQueue
(
int
size,
bool
prePopulate)
69
{
70
this.prePopulate = prePopulate;
71
Initialize(size);
72
}
73
74
// Returns null if prePopulate is false.
75
76
protected
internal
override
ScoreDoc
SentinelObject
77
{
78
get
79
{
80
// Always set the doc Id to MAX_VALUE so that it won't be favored by
81
// lessThan. This generally should not happen since if score is not NEG_INF,
82
// TopScoreDocCollector will always add the object to the queue.
83
return
!prePopulate ? null :
new
ScoreDoc
(System.Int32.MaxValue, System.Single.NegativeInfinity);
84
}
85
}
86
87
public
override
bool
LessThan(
ScoreDoc
hitA,
ScoreDoc
hitB)
88
{
89
if
(hitA.
Score
== hitB.
Score
)
90
return
hitA.
Doc
> hitB.
Doc
;
91
else
92
return
hitA.
Score
< hitB.
Score
;
93
}
94
}
95
}
Generated on Thu Jan 3 2013 02:12:46 for Lucene.Net by
1.8.3