WordDead.h

Go to the documentation of this file.
00001 //
00002 // WordDead.h
00003 //
00004 // NAME
00005 // 
00006 // list of documents that must be ignored and then deleted from the index.
00007 //
00008 // SYNOPSIS
00009 // 
00010 // Helper for the WordList class.
00011 // 
00012 // DESCRIPTION
00013 // 
00014 // WordDead is a list of WordKey entries describing deleted documents.
00015 // All inverted index entries that match a WordKey entry of the WordDead
00016 // list are treated as if they do not appear in the inverted index.
00017 //
00018 // 
00019 //
00020 // END
00021 //
00022 // Part of the ht://Dig package   <http://www.htdig.org/>
00023 // Copyright (c) 1999, 2000, 2001 The ht://Dig Group
00024 // For copyright details, see the file COPYING in your distribution
00025 // or the GNU General Public License version 2 or later
00026 // <http://www.gnu.org/copyleft/gpl.html>
00027 //
00028 // $Id: WordDead_8h-source.html,v 1.1 2008/06/08 10:13:08 sebdiaz Exp $
00029 //
00030 
00031 #ifndef _WordDead_h_
00032 #define _WordDead_h_
00033 
00034 #include <stdio.h>
00035 
00036 #include "htString.h"
00037 #include "WordDB.h"
00038 
00039 class WordList;
00040 class WordDeadCursor;
00041 
00042 class WordDead 
00043 {
00044  public:
00045   WordDead() { words = 0; db = 0; mask = 0; }
00046   ~WordDead();
00047 
00048   int Initialize(WordList* words);
00049 
00050   int Open();
00051   int Remove();
00052   int Close();
00053     
00054   int Mask(const WordKey& nmask) { *mask = nmask; return OK; }
00055 
00056   List* Words() const;
00057 
00058   int Normalize(WordKey& key) const;
00059   int Exists(const WordKey& key) const;
00060   int Put(const WordKey& key) const;
00061 
00062   WordDeadCursor* Cursor() const;
00063   int Next(WordDeadCursor* cursor, WordKey& key);
00064 
00065  private:
00066   WordList*                     words;
00067   WordDB*                       db;
00068   WordKey*                      mask;
00069 };
00070 #endif /* _WordDead_h_ */

Generated on Sun Jun 8 10:56:40 2008 for GNUmifluz by  doxygen 1.5.5