<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Lucene.Net.Contrib.Spatial.NTS</name>
    </assembly>
    <members>
        <member name="T:Lucene.Net.Spatial.BBox.AreaSimilarity">
             <summary>
             The algorithm is implemented as envelope on envelope overlays rather than
             complex polygon on complex polygon overlays.
             <p/>
             <p/>
             Spatial relevance scoring algorithm:
             <p/>
             <br/>  queryArea = the area of the input query envelope
             <br/>  targetArea = the area of the target envelope (per Lucene document)
             <br/>  intersectionArea = the area of the intersection for the query/target envelopes
             <br/>  queryPower = the weighting power associated with the query envelope (default = 1.0)
             <br/>  targetPower =  the weighting power associated with the target envelope (default = 1.0)
             <p/>
             <br/>  queryRatio  = intersectionArea / queryArea;
             <br/>  targetRatio = intersectionArea / targetArea;
             <br/>  queryFactor  = Math.pow(queryRatio,queryPower);
             <br/>  targetFactor = Math.pow(targetRatio,targetPower);
             <br/>  score = queryFactor /// targetFactor;
             <p/>
             Based on Geoportal's
             <a href="http://geoportal.svn.sourceforge.net/svnroot/geoportal/Geoportal/trunk/src/com/esri/gpt/catalog/lucene/SpatialRankingValueSource.java">
               SpatialRankingValueSource</a>.
            
             @lucene.experimental
             </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.BBox.BBoxSimilarity">
            <summary>
            Abstraction of the calculation used to determine how similar two Bounding Boxes are.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.SpatialStrategy">
            <summary>
            The SpatialStrategy encapsulates an approach to indexing and searching based on shapes.
            <p/>
            Note that a SpatialStrategy is not involved with the Lucene stored field values of shapes, which is
            immaterial to indexing and search.
            <p/>
            Thread-safe.
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.SpatialStrategy.#ctor(Spatial4n.Core.Context.SpatialContext,System.String)">
            <summary>
            Constructs the spatial strategy with its mandatory arguments.
            </summary>
            <param name="ctx"></param>
            <param name="fieldName"> </param>
        </member>
        <member name="M:Lucene.Net.Spatial.SpatialStrategy.GetFieldName">
            <summary>
            The name of the field or the prefix of them if there are multiple
            fields needed internally.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Lucene.Net.Spatial.SpatialStrategy.CreateIndexableFields(Spatial4n.Core.Shapes.Shape)">
            <summary>
            Returns the IndexableField(s) from the <c>shape</c> that are to be
            added to the {@link org.apache.lucene.document.Document}.  These fields
            are expected to be marked as indexed and not stored.
            <p/>
            Note: If you want to <i>store</i> the shape as a string for retrieval in search
            results, you could add it like this:
            <pre>document.add(new StoredField(fieldName,ctx.toString(shape)));</pre>
            The particular string representation used doesn't matter to the Strategy since it
            doesn't use it.
            </summary>
            <param name="shape"></param>
            <returns>Not null nor will it have null elements.</returns>
        </member>
        <member name="M:Lucene.Net.Spatial.SpatialStrategy.MakeDistanceValueSource(Spatial4n.Core.Shapes.Point)">
            <summary>
            Make a ValueSource returning the distance between the center of the
            indexed shape and {@code queryPoint}.  If there are multiple indexed shapes
            then the closest one is chosen.
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.SpatialStrategy.MakeQuery(Lucene.Net.Spatial.Queries.SpatialArgs)">
            <summary>
            Make a (ConstantScore) Query based principally on {@link org.apache.lucene.spatial.query.SpatialOperation}
            and {@link Shape} from the supplied {@code args}.
            The default implementation is
            <pre>return new ConstantScoreQuery(makeFilter(args));</pre>
            </summary>
            <param name="args"></param>
            <returns></returns>
        </member>
        <member name="M:Lucene.Net.Spatial.SpatialStrategy.MakeFilter(Lucene.Net.Spatial.Queries.SpatialArgs)">
            <summary>
            Make a Filter based principally on {@link org.apache.lucene.spatial.query.SpatialOperation}
            and {@link Shape} from the supplied {@code args}.
            <p />
            If a subclasses implements
            {@link #makeQuery(org.apache.lucene.spatial.query.SpatialArgs)}
            then this method could be simply:
            <pre>return new QueryWrapperFilter(makeQuery(args).getQuery());</pre>
            </summary>
            <param name="args"></param>
            <returns></returns>
        </member>
        <member name="M:Lucene.Net.Spatial.SpatialStrategy.MakeRecipDistanceValueSource(Spatial4n.Core.Shapes.Shape)">
            <summary>
            Returns a ValueSource with values ranging from 1 to 0, depending inversely
            on the distance from {@link #makeDistanceValueSource(com.spatial4j.core.shape.Point)}.
            The formula is <c>c/(d + c)</c> where 'd' is the distance and 'c' is
            one tenth the distance to the farthest edge from the center. Thus the
            scores will be 1 for indexed points at the center of the query shape and as
            low as ~0.1 at its furthest edges.
            </summary>
            <param name="queryShape"></param>
            <returns></returns>
        </member>
        <member name="M:Lucene.Net.Spatial.BBox.BBoxStrategy.MakeContains(Spatial4n.Core.Shapes.Rectangle)">
            <summary>
            Constructs a query to retrieve documents that fully contain the input envelope.
            </summary>
            <param name="bbox"></param>
            <returns>The spatial query</returns>
        </member>
        <member name="M:Lucene.Net.Spatial.BBox.BBoxStrategy.MakeDisjoint(Spatial4n.Core.Shapes.Rectangle)">
            <summary>
            Constructs a query to retrieve documents that are disjoint to the input envelope.
            </summary>
            <param name="bbox"></param>
            <returns>the spatial query</returns>
        </member>
        <member name="M:Lucene.Net.Spatial.BBox.BBoxStrategy.MakeIntersects(Spatial4n.Core.Shapes.Rectangle)">
            <summary>
            Constructs a query to retrieve documents that intersect the input envelope.
            </summary>
            <param name="bbox"></param>
            <returns>the spatial query</returns>
        </member>
        <member name="T:Lucene.Net.Spatial.BBox.DistanceSimilarity">
            <summary>
            Returns the distance between the center of the indexed rectangle and the
            query shape.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.PointPrefixTreeFieldCacheProvider">
            <summary>
            Implementation of {@link ShapeFieldCacheProvider} designed for {@link PrefixTreeStrategy}s.
            
            Note, due to the fragmented representation of Shapes in these Strategies, this implementation
            can only retrieve the central {@link Point} of the original Shapes.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.ShapeFieldCacheProvider`1">
            <summary>
            Provides access to a {@link ShapeFieldCache} for a given {@link AtomicReader}.
            
            If a Cache does not exist for the Reader, then it is built by iterating over
            the all terms for a given field, reconstructing the Shape from them, and adding
            them to the Cache.
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.PrefixTreeStrategy">
            <summary>
            Abstract SpatialStrategy which provides common functionality for those 
            Strategys which use {@link SpatialPrefixTree}s
            </summary>
        </member>
        <member name="P:Lucene.Net.Spatial.Prefix.PrefixTreeStrategy.DistErrPct">
            <summary>
            The default measure of shape precision affecting indexed and query shapes.
            Specific shapes at index and query time can use something different.
            @see org.apache.lucene.spatial.query.SpatialArgs#getDistErrPct()
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.PrefixTreeStrategy.CellTokenStream">
            <summary>
            Outputs the tokenString of a cell, and if its a leaf, outputs it again with the leaf byte.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.RecursivePrefixTreeFilter">
            <summary>
            Performs a spatial intersection filter against a field indexed with {@link SpatialPrefixTree}, a Trie.
            SPT yields terms (grids) at length 1 and at greater lengths corresponding to greater precisions.
            This filter recursively traverses each grid length and uses methods on {@link Shape} to efficiently know
            that all points at a prefix fit in the shape or not to either short-circuit unnecessary traversals or to efficiently
            load all enclosed points.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.RecursivePrefixTreeStrategy">
            <summary>
            Based on {@link RecursivePrefixTreeFilter}.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.TermQueryPrefixTreeStrategy">
            <summary>
            A basic implementation using a large {@link TermsFilter} of all the nodes from
            {@link SpatialPrefixTree#getNodes(com.spatial4j.core.shape.Shape, int, boolean)}.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.Tree.GeohashPrefixTree">
            <summary>
            A SpatialPrefixGrid based on Geohashes.  Uses {@link GeohashUtils} to do all the geohash work.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.Tree.SpatialPrefixTree">
            <summary>
            A spatial Prefix Tree, or Trie, which decomposes shapes into prefixed strings at variable lengths corresponding to
            variable precision.  Each string corresponds to a spatial region.
            
            Implementations of this class should be thread-safe and immutable once initialized. 
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Prefix.Tree.SpatialPrefixTree.GetLevelForDistance(System.Double)">
            <summary>
            Returns the level of the largest grid in which its longest side is less
            than or equal to the provided distance (in degrees). Consequently {@link
            dist} acts as an error epsilon declaring the amount of detail needed in the
            grid, such that you can get a grid with just the right amount of
            precision.
            </summary>
            <param name="dist">>= 0</param>
            <returns>level [1 to maxLevels]</returns>
        </member>
        <member name="M:Lucene.Net.Spatial.Prefix.Tree.GeohashPrefixTree.GetMaxLevelsPossible">
            <summary>
            Any more than this and there's no point (double lat and lon are the same).
            </summary>
            <returns></returns>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.Tree.GeohashPrefixTree.Factory">
            <summary>
            Factory for creating {@link GeohashPrefixTree} instances with useful defaults
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.Tree.SpatialPrefixTreeFactory">
            <summary>
            Abstract Factory for creating {@link SpatialPrefixTree} instances with useful
            defaults and passed on configurations defined in a Map.
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Prefix.Tree.SpatialPrefixTreeFactory.MakeSPT(System.Collections.Generic.Dictionary{System.String,System.String},Spatial4n.Core.Context.SpatialContext)">
            <summary>
            The factory  is looked up via "prefixTree" in args, expecting "geohash" or "quad".
            If its neither of these, then "geohash" is chosen for a geo context, otherwise "quad" is chosen.
            </summary>
            <param name="args"></param>
            <param name="ctx"></param>
            <returns></returns>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.Tree.QuadPrefixTree">
            <summary>
            Implementation of {@link SpatialPrefixTree} which uses a quad tree
            (http://en.wikipedia.org/wiki/Quadtree)
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Prefix.Tree.QuadPrefixTree.Factory">
            <summary>
            Factory for creating {@link QuadPrefixTree} instances with useful defaults
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Queries.SpatialArgs.CalcDistanceFromErrPct(Spatial4n.Core.Shapes.Shape,System.Double,Spatial4n.Core.Context.SpatialContext)">
            <summary>
            Computes the distance given a shape and the {@code distErrPct}.  The
            algorithm is the fraction of the distance from the center of the query
            shape to its furthest bounding box corner.
            </summary>
            <param name="shape">Mandatory.</param>
            <param name="distErrPct">0 to 0.5</param>
            <param name="ctx">Mandatory</param>
            <returns>A distance (in degrees).</returns>
        </member>
        <member name="M:Lucene.Net.Spatial.Queries.SpatialArgs.ResolveDistErr(Spatial4n.Core.Context.SpatialContext,System.Double)">
            <summary>
            Gets the error distance that specifies how precise the query shape is. This
            looks at {@link #getDistErr()}, {@link #getDistErrPct()}, and {@code
            defaultDistErrPct}.
            </summary>
            <param name="ctx"></param>
            <param name="defaultDistErrPct">0 to 0.5</param>
            <returns>>= 0</returns>
        </member>
        <member name="M:Lucene.Net.Spatial.Queries.SpatialArgs.Validate">
            <summary>
            Check if the arguments make sense -- throw an exception if not
            </summary>
        </member>
        <member name="P:Lucene.Net.Spatial.Queries.SpatialArgs.DistErrPct">
            <summary>
            A measure of acceptable error of the shape as a fraction. This effectively
            inflates the size of the shape but should not shrink it.
            <p/>
            The default is {@link #DEFAULT_DIST_PRECISION}
            </summary>
            <returns>0 to 0.5</returns>
        </member>
        <member name="P:Lucene.Net.Spatial.Queries.SpatialArgs.DistErr">
            <summary>
            The acceptable error of the shape.  This effectively inflates the
            size of the shape but should not shrink it.
            </summary>
            <returns>>= 0</returns>
        </member>
        <member name="M:Lucene.Net.Spatial.Queries.SpatialArgsParser.WriteSpatialArgs(Lucene.Net.Spatial.Queries.SpatialArgs)">
            <summary>
            Writes a close approximation to the parsed input format.
            </summary>
            <param name="args"></param>
            <returns></returns>
        </member>
        <member name="M:Lucene.Net.Spatial.Queries.SpatialArgsParser.Parse(System.String,Spatial4n.Core.Context.SpatialContext)">
            <summary>
            Parses a string such as "Intersects(-10,20,-8,22) distErrPct=0.025".
            </summary>
            <param name="v"></param>
            <param name="ctx"></param>
            <returns></returns>
        </member>
        <member name="M:Lucene.Net.Spatial.Queries.SpatialArgsParser.ParseMap(System.String)">
            <summary>
            Parses "a=b c=d f" (whitespace separated) into name-value pairs. If there
            is no '=' as in 'f' above then it's short for f=f.
            </summary>
            <param name="body"></param>
            <returns></returns>
        </member>
        <member name="F:Lucene.Net.Spatial.Queries.SpatialOperation.BBoxIntersects">
            <summary>
            Bounding box of the *indexed* shape.
            </summary>
        </member>
        <member name="F:Lucene.Net.Spatial.Queries.SpatialOperation.BBoxWithin">
            <summary>
            Bounding box of the *indexed* shape.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.IBits">
            <summary>
            Interface for Bitset-like structures.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.Bits">
            <summary>
            Empty implementation, basically just so we can provide EMPTY_ARRAY
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.MatchAllBits">
            <summary>
            Bits impl of the specified length with all bits set.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.MatchNoBits">
            <summary>
            Bits impl of the specified length with no bits set. 
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.ReciprocalFloatFunction.#ctor(Lucene.Net.Search.Function.ValueSource,System.Single,System.Single,System.Single)">
            <summary>
            f(source) = a/(m*float(source)+b)
            </summary>
            <param name="source"></param>
            <param name="m"></param>
            <param name="a"></param>
            <param name="b"></param>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.ShapeFieldCacheDistanceValueSource">
            <summary>
            An implementation of the Lucene ValueSource model to support spatial relevance ranking.
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.CompatibilityExtensions.PurgeSpatialCaches(Lucene.Net.Search.FieldCache)">
            <summary> <p/>
            EXPERT: Instructs the FieldCache to forcibly expunge all entries 
            from the underlying caches.  This is intended only to be used for 
            test methods as a way to ensure a known base state of the Cache 
            (with out needing to rely on GC to free WeakReferences).  
            It should not be relied on for "Cache maintenance" in general 
            application code.
            <p/>
            <p/>
            <b>EXPERIMENTAL API:</b> This API is considered extremely advanced 
            and experimental.  It may be removed or altered w/o warning in future 
            releases 
            of Lucene.
            <p/>
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.CompatibilityExtensions.BitUtilNlz(System.Int64)">
            <summary>
            Returns the number of leading zero bits.
            </summary>
            <param name="x"></param>
            <returns></returns>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.Entry">
            <summary>
            Expert: Every composite-key in the internal cache is of this type.
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.FixedBitSet.bits2words(System.Int32)">
            <summary>
            returns the number of 64 bit words it would take to hold numBits
            </summary>
            <param name="numBits"></param>
            <returns></returns>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.FixedBitSet.#ctor(Lucene.Net.Spatial.Util.FixedBitSet)">
            <summary>
            Makes full copy.
            </summary>
            <param name="other"></param>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.FixedBitSet.Cardinality">
            <summary>
            Returns number of set bits.  NOTE: this visits every
            long in the backing bits array, and the result is not
            internally cached!
            </summary>
            <returns></returns>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.FixedBitSet.NextSetBit(System.Int32)">
            <summary>
            Returns the index of the first set bit starting at the index specified.
            -1 is returned if there are no more set bits.
            </summary>
            <param name="index"></param>
            <returns></returns>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.FixedBitSet.FixedBitSetIterator">
            <summary>
            A FixedBitSet Iterator implementation
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.FunctionQuery">
            <summary>
            Port of Solr's FunctionQuery (v1.4)
            
            Returns a score for each document based on a ValueSource,
            often some function of the value of a field.
            
            <b>Note: This API is experimental and may change in non backward-compatible ways in the future</b>
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.FunctionQuery.GetValueSource">
            <summary>
            
            </summary>
            <returns>The associated ValueSource</returns>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.ShapeFieldCache`1">
            <summary>
            Bounded Cache of Shapes associated with docIds.  Note, multiple Shapes can be
            associated with a given docId
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.TermsEnumCompatibility">
            <summary>
            Wraps Lucene 3 TermEnum to make it look like a Lucene 4 TermsEnum
            SOLR-2155
            @author dsmiley
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.TermsEnumCompatibility.SeekCeil(System.String)">
            <summary>
            Seeks to the specified term, if it exists, or to the
            next (ceiling) term.  Returns SeekStatus to
            indicate whether exact term was found, a different
            term was found, or EOF was hit.  The target term may
            be before or after the current term.  If this returns
            SeekStatus.END, the enum is unpositioned.
            </summary>
            <param name="value"></param>
            <returns></returns>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.TermsEnumCompatibility.GetDocCount">
            <summary>
            Returns the number of documents that have at least one
            term for this field, or -1 if this measure isn't
            stored by the codec.  Note that, just like other term
            measures, this measure does not take deleted documents
            into account.
            </summary>
            <returns></returns>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.TermsFilter">
            <summary>
            Constructs a filter for docs matching any of the terms added to this class.
            Unlike a RangeFilter this can be used for filtering on multiple terms that are not necessarily in
            a sequence. An example might be a collection of primary keys from a database query result or perhaps
            a choice of "category" labels picked by the end user. As a filter, this is much faster than the
            equivalent query (a BooleanQuery with many "should" TermQueries)
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Util.TermsFilter.AddTerm(Lucene.Net.Index.Term)">
            <summary>
            Adds a term to the list of acceptable terms
            </summary>
            <param name="term"></param>
        </member>
        <member name="T:Lucene.Net.Spatial.Util.ValueSourceFilter">
            <summary>
            Filter that matches all documents where a valuesource is
            in between a range of <c>min</c> and <c>max</c> inclusive.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Vector.DistanceValueSource">
            <summary>
            An implementation of the Lucene ValueSource model that returns the distance.
            </summary>
        </member>
        <member name="T:Lucene.Net.Spatial.Vector.PointVectorStrategy">
            <summary>
            Simple {@link SpatialStrategy} which represents Points in two numeric {@link DoubleField}s.
            
            Note, currently only Points can be indexed by this Strategy.  At query time, the bounding
            box of the given Shape is used to create {@link NumericRangeQuery}s to efficiently
            find Points within the Shape.
            
            Due to the simple use of numeric fields, this Strategy provides support for sorting by
            distance through {@link DistanceValueSource}
            </summary>
        </member>
        <member name="M:Lucene.Net.Spatial.Vector.PointVectorStrategy.MakeWithin(Spatial4n.Core.Shapes.Rectangle)">
            <summary>
            Constructs a query to retrieve documents that fully contain the input envelope.
            </summary>
            <param name="bbox"></param>
        </member>
        <member name="M:Lucene.Net.Spatial.Vector.PointVectorStrategy.MakeDisjoint(Spatial4n.Core.Shapes.Rectangle)">
            <summary>
            Constructs a query to retrieve documents that fully contain the input envelope.
            </summary>
            <param name="bbox"></param>
        </member>
    </members>
</doc>
