CQInvertedFile Class

# CQInvertedFile Class Reference

[CADIHash.h Index] [CADIHash.h Hierarchy]

The Query manager for Queries on inverted Files More...

`#include <>`

Inherits: CQuery

## Public Members

- void finishInit ()
- CQInvertedFile (CAccessorCollection& inAccessorCollection, CAlgorithm& inAlgorithm)
- virtual bool setAlgorithm (CAlgorithm& inAlgorithm)
- virtual CIDRelevanceLevelPairList* fastQuery (const CXMLElement& inQuery, int inNumberOfInterestingImages, double inDifferenceToBest)
- virtual CIDRelevanceLevelPairList* fastQueryByFeature (const CWeightingFunctionPointerList& inQuery, int inNumberOfInterestingImages, double inDifferenceToBest)
- double DIDToScore (TID inDID, const CWeightingFunctionPointerHash& inQuery)
- double URLToScore (const string& inURL, const CWeightingFunctionPointerHash& inQuery)
- double FeatureListToScore (TID inDID, const CDocumentFrequencyList& inFeatureList, const CWeightingFunctionPointerHash& inQuery)
- void buildNormalizedQueryHash (const CRelevanceLevel& inQuery, CWeightingFunctionPointerHash& outQueryFeatureWeighters)
- bool mBlockingOn
- void activateBlockingFeatures ()
- void releaseBlockingFeatures ()
- bool featuresBlocked ()
- void blockFeatureGroup (const int featureNumber)
- void unblockFeatureGroup (const int featureNumber)
- bool isBlocked (const int featureNumber)
- bool mPruningUsed
- bool mScoreBoardPruningUsed
- double stopAfterFeature
- double reduceTo
- int mNumberofUsedScoreBoardPrunings
- bool mFeaturePruningUsed
- double mPercentageofFeatures
- bool mTimePruningUsed
- double mStoppingTime
- bool mEvaluateAfterPruning
- void releaseAllPrunings ()
- void useFeaturePruning (double percentage)
- void releaseFeaturePruning ()
- void useTimePruning (double inTimeCutoffPoint)
- void releaseTimePruning ()
- void useScoreBoardPruning (double inCutAfterFraction, double inReduceToFactor)
- void releaseScoreBoardPruning ()
- void useEvaluateAfterPruning ()
- void releaseEvaluateAfterPruning ()
- CWeighter& getWeighter ()

## Protected Members

- int mModulo
- int mModuloClass
- CWeighterFactory mWeighterFactory
- mQueryFeatureWeighters
- double keepScore (CScoreBoard& inoutScoreBoard, const CWeightingFunctionPointerList& inFeatures, bool lPositive)
- double keepScorePruning (CScoreBoard& inoutScoreBoard, const CWeightingFunctionPointerList& inFeatures, bool inPositive, int inDesiredNumberOfDocuments)
- void buildQueryHash (CRelevanceLevelList& inQuery, CWeightingFunctionPointerHash& outQueryFeatureWeighters)
- void buildNormalizedQueryList (double inPositiveRelevanceSum, double inNegativeRelevanceSum, CWeightingFunctionPointerHash& inQFW, CWeightingFunctionPointerList& outQFW)
- void buildNormalizedQueryHash (double inPositiveRelevanceSum, double inNegativeRelevanceSum, CWeightingFunctionPointerHash& inQFW)
- void init ()

## void finishInit()

finish the initialisation phase make the weighting function know who its normalizers are

## CQInvertedFile(CAccessorCollection& inAccessorCollection, CAlgorithm& inAlgorithm)

New constructor, taking as parameter the algorithm structure, which contains all the algorithm configuration

## virtual bool setAlgorithm(CAlgorithm& inAlgorithm)

set the Algorithm. same scheme as in setCollection

## virtual CIDRelevanceLevelPairList* fastQuery(const CXMLElement& inQuery, int inNumberOfInterestingImages, double inDifferenceToBest)

instead of URL/RelevanceLevel pairs; this is faster for merging tasks (to explain the name) queries for URLs are answered by query (in herited)

## virtual CIDRelevanceLevelPairList* fastQueryByFeature(const CWeightingFunctionPointerList& inQuery, int inNumberOfInterestingImages, double inDifferenceToBest)

Assuming that a correct CWeightingFunctionPointerHash has been built by fastQuery (or another function), this function will do the rest

## double DIDToScore(TID inDID, const CWeightingFunctionPointerHash& inQuery)

Returns the score for one image in the query

## double URLToScore(const string& inURL, const CWeightingFunctionPointerHash& inQuery)

Returns the score for one image in the query

## double FeatureListToScore(TID inDID, const CDocumentFrequencyList& inFeatureList, const CWeightingFunctionPointerHash& inQuery)

Turns the featurelist of a document into a score.

## void activateBlockingFeatures()

activateBlockingFeatures - sets the variable to block groups of features

## void releaseBlockingFeatures()

releaseBlockingFeatures - this turns off the blocking of features

## bool featuresBlocked()

featuresBlocked - returns true if the features are blocked

## void blockFeatureGroup(const int featureNumber)

blockFeatureGroup - this blocks one special group of features

## void unblockFeatureGroup(const int featureNumber)

unblockFeatureGroup - this releases the blocking of one feature group

## bool isBlocked(const int featureNumber)

isBlocked - returns true if the feature is blocked and false if not

## bool mPruningUsed

Shows if any pruning is used

## bool mScoreBoardPruningUsed

true if the scoreboardis Pruned

## double reduceTo

reduce the scoreboard to a factor of the number of images you want to retrieve

## int mNumberofUsedScoreBoardPrunings

@Author Henning Müller

## double mPercentageofFeatures

@Author Henning Müller

## double mStoppingTime

@Author Henning Müller

## void releaseAllPrunings()

sets back all the variables for the pruning

@Author Henning Müller

## void useFeaturePruning(double percentage)

activates the feature pruning with evaluating a certain percentage of the features

@Author Henning Müller

## void releaseFeaturePruning()

set the variables back to its normal status

@Author Henning Müller

## void useTimePruning(double inTimeCutoffPoint)

activates the time pruning with the give cuOffPoint

@Author Henning Müller

## void releaseTimePruning()

releases the timePruning

@Author Henning Müller

## void useScoreBoardPruning(double inCutAfterFraction, double inReduceToFactor)

creates one entry in the scoreboardPruning

@Author Henning Müller

## void releaseScoreBoardPruning()

releases all the settings for the ScorboardPruning

@Author Henning Müller

## void useEvaluateAfterPruning()

activates the evaluation after the scoreboardPruning

@Author Henning Müller

## void releaseEvaluateAfterPruning()

releases the evaluation after the scoreboard pruning

@Author Henning Müller

## CWeighter& getWeighter()

For FerDeLance queries

## int mModulo

You can choose to use only every lModulo-th feature

## int mModuloClass

Every lModulo-th feature, starting at lModuloClass

## CWeighterFactory mWeighterFactory

This is a factory for weighters. With this we can find the weighters

## mQueryFeatureWeighters

object of this type to have a list of the features with the weights

## double keepScore(CScoreBoard& inoutScoreBoard, const CWeightingFunctionPointerList& inFeatures, bool lPositive)

calculates the score for all the images based on a list of features

## double keepScorePruning(CScoreBoard& inoutScoreBoard, const CWeightingFunctionPointerList& inFeatures, bool inPositive, int inDesiredNumberOfDocuments)

calculates the results for the images using some sort of pruning

## void buildQueryHash(CRelevanceLevelList& inQuery, CWeightingFunctionPointerHash& outQueryFeatureWeighters)

are in one or more of the query images should be replaced by a version which operates on IDs not URLs

## void buildNormalizedQueryList(double inPositiveRelevanceSum, double inNegativeRelevanceSum, CWeightingFunctionPointerHash& inQFW, CWeightingFunctionPointerList& outQFW)

Building a list of normalized WF from a hash of Weighting functions

## void buildNormalizedQueryHash(double inPositiveRelevanceSum, double inNegativeRelevanceSum, CWeightingFunctionPointerHash& inQFW)

Building a list of normalized WF from a hash of Weighting functions

## void init()

Initializer, used by both construcors

| Kdoc