Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

BasicIndexWithCat Class Reference

A basic implementation of IndexWithCat based on two Index's. More...

#include <BasicIndexWithCat.hpp>

Inheritance diagram for BasicIndexWithCat:

IndexWithCat Index List of all members.

Public Methods

 BasicIndexWithCat (Index &wordIndex, Index &categoryIndex, bool catIsTerm=true)
 opens the indices. catIsTerm indicates whether a category is actually indexed as a "term" or a "document" in categoryIndex.

 ~BasicIndexWithCat ()
bool open (const char *)
 to be implemented later

Spelling and index conversion
virtual int term (const char *word)
 Convert a term spelling to a termID.

virtual const char * term (int termID)
 Convert a termID to its spelling.

virtual int document (const char *docIDStr)
 Convert a spelling to docID.

virtual const char * document (int docID)
 Convert a docID to its spelling.

virtual int category (const char *catIDStr)
 Convert a spelling to catID.

virtual const char * category (int catID)
 Convert a catID to its spelling.

Summary counts
virtual int docCount ()
 Total count (i.e., number) of documents in collection.

virtual int termCountUnique ()
 Total count of unique terms in collection.

virtual int termCount (int termID) const
 Total counts of a term in collection.

virtual int termCount () const
 Total counts of all terms in collection.

virtual float docLengthAvg ()
 Average document length.

virtual int docCount (int termID)
 Total counts of doc with a given term.

virtual int docLength (int docID) const
 Total counts of terms in a document.

virtual int catCount ()
 Total counts of categories.

virtual int docCountInCat (int catID)
 Total counts of documents in a category.

Base Index entry access (Term X Doc)
virtual DocInfoListdocInfoList (int termID)
 doc entries in a term index,
See also:
DocList


virtual TermInfoListtermInfoList (int docID)
 word entries in a document index,
See also:
TermList


Category Index entry access (Cat X Doc)
virtual void startCatIDIteration (int docID)
virtual bool hasMoreCatID ()
virtual int nextCatID ()
 Iteration over all category ids that a doc belongs to.

virtual void startDocIDIteration (int catID)
virtual bool hasMoreDocID ()
virtual int nextDocID ()
 Iteration over all doc ids that belong to a given category.


Private Attributes

IndexbaseIndex
 base index (word X doc)

IndexcatIndex
 label/category index (cat X doc)

bool catAsTerm
TermInfoListtmInfoBuffer
 buffers for iteration support

DocInfoListdocInfoBuffer
TermInfotmInfo
DocInfodocInfo
int * base2cat
 synchronized doc id lexicons

int * cat2base

Static Private Attributes

const char OOVSTRING [] = "[OOV]"

Detailed Description

A basic implementation of IndexWithCat based on two Index's.

BasicIndexWithCat is a wrapper that manages two separate Index's: one for word X doc index and one for category X doc index. It synchronizes the document index in both indices.


Constructor & Destructor Documentation

BasicIndexWithCat::BasicIndexWithCat Index   wordIndex,
Index   categoryIndex,
bool    catIsTerm = true
 

opens the indices. catIsTerm indicates whether a category is actually indexed as a "term" or a "document" in categoryIndex.

BasicIndexWithCat::~BasicIndexWithCat   [inline]
 


Member Function Documentation

int BasicIndexWithCat::catCount   [inline, virtual]
 

Total counts of categories.

Implements IndexWithCat.

const char * BasicIndexWithCat::category int    catID [inline, virtual]
 

Convert a catID to its spelling.

Implements IndexWithCat.

int BasicIndexWithCat::category const char *    catIDStr [inline, virtual]
 

Convert a spelling to catID.

Implements IndexWithCat.

virtual int BasicIndexWithCat::docCount int    termID [inline, virtual]
 

Total counts of doc with a given term.

Implements Index.

virtual int BasicIndexWithCat::docCount   [inline, virtual]
 

Total count (i.e., number) of documents in collection.

Implements Index.

int BasicIndexWithCat::docCountInCat int    catID [inline, virtual]
 

Total counts of documents in a category.

Implements IndexWithCat.

virtual DocInfoList* BasicIndexWithCat::docInfoList int    termID [inline, virtual]
 

doc entries in a term index,

See also:
DocList

Implements Index.

virtual int BasicIndexWithCat::docLength int    docID const [inline, virtual]
 

Total counts of terms in a document.

Implements Index.

virtual float BasicIndexWithCat::docLengthAvg   [inline, virtual]
 

Average document length.

Implements Index.

virtual const char* BasicIndexWithCat::document int    docID [inline, virtual]
 

Convert a docID to its spelling.

Implements Index.

virtual int BasicIndexWithCat::document const char *    docIDStr [inline, virtual]
 

Convert a spelling to docID.

Implements Index.

bool BasicIndexWithCat::hasMoreCatID   [virtual]
 

Implements IndexWithCat.

bool BasicIndexWithCat::hasMoreDocID   [virtual]
 

Implements IndexWithCat.

int BasicIndexWithCat::nextCatID   [virtual]
 

Iteration over all category ids that a doc belongs to.

startCatIDIteration, hasMoreCatID, and nextCatID go together to support iteration over category ids that a document has

Implements IndexWithCat.

int BasicIndexWithCat::nextDocID   [virtual]
 

Iteration over all doc ids that belong to a given category.

startDocIDIteration, hasMoreDocID, and nextDocID go together to support iteration over all doc ids in a given category

Implements IndexWithCat.

bool BasicIndexWithCat::open const char *    [inline, virtual]
 

to be implemented later

Implements Index.

void BasicIndexWithCat::startCatIDIteration int    docID [virtual]
 

Implements IndexWithCat.

void BasicIndexWithCat::startDocIDIteration int    catID [virtual]
 

Implements IndexWithCat.

virtual const char* BasicIndexWithCat::term int    termID [inline, virtual]
 

Convert a termID to its spelling.

Implements Index.

virtual int BasicIndexWithCat::term const char *    word [inline, virtual]
 

Convert a term spelling to a termID.

Implements Index.

virtual int BasicIndexWithCat::termCount   const [inline, virtual]
 

Total counts of all terms in collection.

Implements Index.

virtual int BasicIndexWithCat::termCount int    termID const [inline, virtual]
 

Total counts of a term in collection.

Implements Index.

virtual int BasicIndexWithCat::termCountUnique   [inline, virtual]
 

Total count of unique terms in collection.

Implements Index.

virtual TermInfoList* BasicIndexWithCat::termInfoList int    docID [inline, virtual]
 

word entries in a document index,

See also:
TermList

Implements Index.


Member Data Documentation

int* BasicIndexWithCat::base2cat [private]
 

synchronized doc id lexicons

Index* BasicIndexWithCat::baseIndex [private]
 

base index (word X doc)

int* BasicIndexWithCat::cat2base [private]
 

bool BasicIndexWithCat::catAsTerm [private]
 

Index* BasicIndexWithCat::catIndex [private]
 

label/category index (cat X doc)

DocInfo* BasicIndexWithCat::docInfo [private]
 

DocInfoList* BasicIndexWithCat::docInfoBuffer [private]
 

const char BasicIndexWithCat::OOVSTRING = "[OOV]" [static, private]
 

TermInfo* BasicIndexWithCat::tmInfo [private]
 

TermInfoList* BasicIndexWithCat::tmInfoBuffer [private]
 

buffers for iteration support


The documentation for this class was generated from the following files:
Generated on Fri Feb 6 07:11:58 2004 for LEMUR by doxygen1.2.16