public override RandomAccessDocIdSet GetRandomAccessDocIdSet(BoboSegmentReader reader)
        {
            int maxDoc = reader.MaxDoc;

            GeoFacetHandler.GeoFacetData dataCache = m_handler.GetFacetData <GeoFacetHandler.GeoFacetData>(reader);
            return(new GeoDocIdSet(dataCache.xValArray, dataCache.yValArray, dataCache.zValArray,
                                   m_lat, m_lon, m_rad, maxDoc, m_miles));
        }
        public override RandomAccessDocIdSet GetRandomAccessDocIdSet(BoboIndexReader reader)
        {
            FacetDataCache latDataCache  = _latFacetHandler.GetFacetData <FacetDataCache>(reader);
            FacetDataCache longDataCache = _longFacetHandler.GetFacetData <FacetDataCache>(reader);

            int[] latRange  = FacetRangeFilter.Parse(latDataCache, _latRangeString);
            int[] longRange = FacetRangeFilter.Parse(longDataCache, _longRangeString);
            if ((latRange == null) || (longRange == null))
            {
                return(null);
            }

            return(new GeoSimpleRandomAccessDocIdSet(latRange, longRange, latDataCache, longDataCache));
        }