Changeset 1688


Ignore:
Timestamp:
2000-11-22T14:49:44+13:00 (23 years ago)
Author:
kjm18
Message:

Added actualNumDocs variable to QueryResult - records the total number of
docs found by the query (before pruning to the size of maxdocs)

Location:
trunk/gsdl/src/mgpp/text
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/gsdl/src/mgpp/text/MGQuery.cpp

    r1300 r1688  
    635635  if (resultsSize == 0 || resultsSize > result.docs.size())
    636636    resultsSize = result.docs.size();
    637  
     637
     638  result.actualNumDocs = result.docs.size(); // the total number of docs
     639                                   //returned, before pruning based on maxDocs
     640
    638641  // sort results by rank if needed
    639642  GTRank gtRank;
     
    681684    result.ranks.erase(result.ranks.begin()+resultsSize, result.ranks.end());
    682685  }
     686
     687  // remove extra docs that are unwanted
    683688  result.docs.erase(result.docs.begin()+resultsSize, result.docs.end());
    684689}
     
    704709  realresult.ranks = result.ranks;
    705710  realresult.termFreqs = result.termFreqs;
     711  realresult.actualNumDocs = result.actualNumDocs;
    706712
    707713  if (queryInfo.docLevel == level || level.empty()) {
  • trunk/gsdl/src/mgpp/text/Terms.cpp

    r1300 r1688  
    6767  ranks.erase (ranks.begin(), ranks.end());
    6868  termFreqs.erase (termFreqs.begin(), termFreqs.end());
     69  actualNumDocs = 0;
    6970}
    7071
     
    8889  for (i=0; i<r.termFreqs.size(); i++)
    8990    s << r.termFreqs[i] << ", ";
     91
     92  s << "\nactual number of docs found: " << r.actualNumDocs;
    9093  s << "\n\n";
    9194
     
    97100  return ((r1.docs == r2.docs) &&
    98101      (r1.ranks == r2.ranks) &&
    99       (r1.termFreqs == r2.termFreqs));
     102      (r1.termFreqs == r2.termFreqs) &&
     103      (r1.actualNumDocs == r2.actualNumDocs));
    100104}
    101105
     
    107111  ranks.erase (ranks.begin(), ranks.end());
    108112  termFreqs.erase (termFreqs.begin(), termFreqs.end());
     113  actualNumDocs = 0;
    109114}
    110115
     
    131136  for (i=0; i<r.termFreqs.size(); i++)
    132137    s << r.termFreqs[i] << ", ";
     138  s << "\nactual number of docs found: " << r.actualNumDocs;
    133139  s << "\n\n";
    134140
     
    141147      (r1.levels == r2.levels) &&
    142148      (r1.ranks == r2.ranks) &&
    143       (r1.termFreqs == r2.termFreqs));
     149      (r1.termFreqs == r2.termFreqs) &&
     150      (r1.actualNumDocs == r2.actualNumDocs));
    144151}
    145152
  • trunk/gsdl/src/mgpp/text/Terms.h

    r1300 r1688  
    8181 
    8282  TermFreqArray termFreqs;
    83  
     83
     84  unsigned long actualNumDocs;
    8485  void Clear ();
    8586  QueryResult ();
Note: See TracChangeset for help on using the changeset viewer.