00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
class CXMLElement;
00027
00050
#ifndef _CINVERTEDFILEACCESSOR
00051
#define _CINVERTEDFILEACCESSOR
00052
#include "libGIFTAcInvertedFile/include/uses-declarations.h"
00053
#include <string>
00054
#include "libMRML/include/TID.h"
00055
#include "libMRML/include/CSelfDestroyPointer.h"
00056
#include "libMRML/include/CArraySelfDestroyPointer.h"
00057
#include "libGIFTAcInvertedFile/include/CDocumentFrequencyList.h"
00058
#include "CCollectionFrequencyList.h"
00059
#include "libGIFTAcInvertedFile/include/CADIHash.h"
00060
#include "libGIFTAcURL2FTS/include/CAcURL2FTS.h"
00061
#include <iostream>
00062
#include <fstream>
00063
#include <map>
00064
#include <vector>
00065
#ifdef HAS_HASH_MAP
00066
#include <hash_map>
00067
#else
00068
#define hash_map map
00069
#endif
00070
#include <functional>
00071
#include <algorithm>
00072
00073
#include "libMRML/include/CMagic.h"
00074
00075
00076
typedef TID TFeatureID ;
00077
00084 class CAcInvertedFileAbstraction{
00085
00086
public:
00088
virtual bool operator()()
const =0;
00089
00104
CAcInvertedFileAbstraction(
const CXMLElement& inCollectionElement);
00106
~CAcInvertedFileAbstraction();
00107
00111
virtual string
IDToURL(TID inID)
const =0;
00112
00114
virtual TID
URLToID(
const string& inURL)
const =0;
00115
00132
virtual CDocumentFrequencyList*
FeatureToList(TFeatureID inFID)
const =0;
00133
00135
virtual CDocumentFrequencyList*
URLToFeatureList(string inURL)
const =0;
00136
00138
virtual CDocumentFrequencyList*
DIDToFeatureList(TID inDID)
const =0;
00139
00152
00153
00157
virtual double FeatureToCollectionFrequency(TFeatureID)
const =0;
00158
00160
virtual unsigned int getFeatureDescription(TID inFeatureID)
const =0;
00162
00166
virtual double DIDToMaxDocumentFrequency(TID)
const =0;
00167
00169
virtual double DIDToDFSquareSum(TID)
const =0;
00170
00172
virtual double DIDToSquareDFLogICFSum(TID)
const =0;
00174
00175
00177
00180
virtual bool generateInvertedFile() =0;
00181
00184
virtual bool checkConsistency() =0;
00185
00187
00195
virtual list<TID>*
getAllFeatureIDs()
const =0;
00196 };
00197
00198
#endif