#include <CQuery.h>
Classes | |
class | lCChild |
A child of this. More... | |
Public Member Functions | |
CQuery () | |
default constructor | |
virtual | ~CQuery () |
destructor | |
CQuery (CAccessorAdminCollection &inAccessorAdminCollection, CAlgorithm &inAlgorithm) | |
this constructor takes all the information ANY CQuery needs to configure itself. | |
void | addChild (CQuery *inChild, double inWeight=1) |
adding a child to this. | |
virtual CXMLElement * | query (const CXMLElement &inQuery) |
do a query | |
virtual CIDRelevanceLevelPairList * | fastQuery (const CXMLElement &inQuery, int inNumberOfInterestingImages, double inDifferenceToBest)=0 |
a query which returns ID/RelevanceLevel pairs instead of instead of URL/RelevanceLevel pairs | |
virtual CXMLElement * | getRandomImages (int inNumberOfInterestingImages) const |
get some random images (handed through to accessor) | |
virtual CIDRelevanceLevelPairList * | getRandomIDs (int inNumberOfInterestingImages) const |
get some random images (handed through to accessor) | |
virtual list< TID > * | getAllIDs () const |
get the IDs of all images (handed through to accessor) | |
virtual list< CAccessorElement > * | getAllAccessorElements () const |
get the IDs of all images (handed through to accessor) | |
virtual bool | setAlgorithm (CAlgorithm &inAlgorithm) |
set the Algorithm. | |
const CAlgorithm & | getAlgorithm () const |
get the Algorithm. | |
virtual void | finishInit () |
it might be necessary to wait until all the children are added before ending the initialisation phase. | |
Protected Types | |
typedef list< lCChild > | lCChildren |
type for children of this | |
Protected Member Functions | |
virtual void | init ()=0 |
Initializer, used by both construcors. | |
Protected Attributes | |
CAccessor * | mAccessor |
needed to translate URLs to IDs this is a pointer, only because we cannot change references it does not imply any destruction responsability | |
CAccessorAdmin * | mAccessorAdmin |
This is where the the Accessor comes from. | |
CAccessorAdminCollection * | mAccessorAdminCollection |
Where to get CAccessorAdmins from. | |
CAlgorithm * | mAlgorithm |
the structure containing everything we know about the algorithm used do not destroy this | |
lCChildren | mChildren |
The children of this. |
CQuery::CQuery | ( | ) |
default constructor
virtual CQuery::~CQuery | ( | ) | [virtual] |
destructor
CQuery::CQuery | ( | CAccessorAdminCollection & | inAccessorAdminCollection, | |
CAlgorithm & | inAlgorithm | |||
) |
void CQuery::addChild | ( | CQuery * | inChild, | |
double | inWeight = 1 | |||
) |
adding a child to this.
We expect children to be nonzero and initialised when they are entered. this assumes no destruction responsabilities for the entered data.
virtual CIDRelevanceLevelPairList* CQuery::fastQuery | ( | const CXMLElement & | inQuery, | |
int | inNumberOfInterestingImages, | |||
double | inDifferenceToBest | |||
) | [pure virtual] |
a query which returns ID/RelevanceLevel pairs instead of instead of URL/RelevanceLevel pairs
Implemented in CQMultiple, CQParallel, CQInvertedFile, and CQHierarchy.
virtual void CQuery::finishInit | ( | ) | [virtual] |
it might be necessary to wait until all the children are added before ending the initialisation phase.
This function is called by CAlgorithm.
Reimplemented in CQParallel, and CQInvertedFile.
const CAlgorithm& CQuery::getAlgorithm | ( | ) | const |
get the Algorithm.
same scheme as in setCollection
virtual list<CAccessorElement>* CQuery::getAllAccessorElements | ( | ) | const [virtual] |
get the IDs of all images (handed through to accessor)
virtual list<TID>* CQuery::getAllIDs | ( | ) | const [virtual] |
virtual CIDRelevanceLevelPairList* CQuery::getRandomIDs | ( | int | inNumberOfInterestingImages | ) | const [virtual] |
get some random images (handed through to accessor)
virtual CXMLElement* CQuery::getRandomImages | ( | int | inNumberOfInterestingImages | ) | const [virtual] |
virtual void CQuery::init | ( | ) | [protected, pure virtual] |
Initializer, used by both construcors.
Implemented in CQMultiple, CQParallel, CQInvertedFile, and CQHierarchy.
virtual CXMLElement* CQuery::query | ( | const CXMLElement & | inQuery | ) | [virtual] |
virtual bool CQuery::setAlgorithm | ( | CAlgorithm & | inAlgorithm | ) | [virtual] |
set the Algorithm.
set a new algorithm. Build a new query if necessary.
Reimplemented in CQMultiple, CQParallel, CQInvertedFile, and CQHierarchy.
CAccessorAdmin* CQuery::mAccessorAdmin [protected] |
This is where the the Accessor comes from.
Also the AccessorAdmin is not to be deleted by this.