#include <Matcher.h>
Public Member Functions | |
virtual | ~Matcher () |
virtual String const & | getName () const =0 |
bool | hasFilter () const |
virtual void | getReady () |
virtual void | finished () |
virtual void | doFilter () |
virtual Object const * | nextActiveObject ()=0 |
virtual Object const * | nextTestObject ()=0 |
virtual double | getLowerBound (Object const *testObject)=0 |
virtual double | getUpperBound (Object const *testObject)=0 |
virtual void | addActiveObject (Object const *activeObject)=0 |
virtual bool | test (Object const *activeObject, Object const *testObject) |
virtual void | test (Object const *testObject)=0 |
virtual void | reportActiveNoMatch (Object const *activeObject)=0 |
virtual void | reportTestNoMatch (Object const *testObject)=0 |
virtual void | flushActiveObjects (double lowerBound)=0 |
virtual void | flushActiveObjects (Object const *activeObject)=0 |
Protected Member Functions | |
Matcher (ObjectPairConsumer *pairCons, bool hasFilter=false) | |
Object const * | nextObject (ObjectProducer *producer) |
void | reportNoMatch (ObjectConsumer *cons, Object const *obj) |
Protected Attributes | |
ObjectPairConsumer * | pairCons |
Profiler * | profiler |
Private Member Functions | |
Matcher () | |
Matcher (Matcher const &) | |
Matcher & | operator= (Matcher const &) |
void | incObjectCount () |
Private Attributes | |
bool | hasOwnFilter |
unsigned long long | numObjects |
Definition at line 56 of file Matcher.h.
Matcher::~Matcher | ( | ) | [virtual] |
Definition at line 25 of file Matcher.cpp.
Matcher::Matcher | ( | ObjectPairConsumer * | pairCons, | |
bool | hasFilter = false | |||
) | [protected] |
Definition at line 17 of file Matcher.cpp.
Matcher::Matcher | ( | ) | [private] |
Matcher::Matcher | ( | Matcher const & | ) | [private] |
virtual void Matcher::addActiveObject | ( | Object const * | activeObject | ) | [pure virtual] |
Implemented in CrossMatch, and Neighbours.
Referenced by NestedLoopFilter::filter(), and DecPlaneSweepFilter::filter().
virtual void Matcher::doFilter | ( | ) | [inline, virtual] |
Reimplemented in CrossMatch, and Neighbours.
Definition at line 67 of file Matcher.h.
Referenced by Filter::filter().
void Matcher::finished | ( | ) | [virtual] |
Reimplemented in CrossMatch, and Neighbours.
Definition at line 38 of file Matcher.cpp.
References ObjectPairConsumer::finished(), pairCons, and profiler.
Referenced by Filter::postFilter().
virtual void Matcher::flushActiveObjects | ( | Object const * | activeObject | ) | [pure virtual] |
Implemented in CrossMatch, and Neighbours.
virtual void Matcher::flushActiveObjects | ( | double | lowerBound | ) | [pure virtual] |
Implemented in CrossMatch, and Neighbours.
Referenced by DecPlaneSweepFilter::filter().
virtual double Matcher::getLowerBound | ( | Object const * | testObject | ) | [pure virtual] |
Implemented in CrossMatch, FixedRadiusCrossMatch, and Neighbours.
Referenced by DecPlaneSweepFilter::filter().
virtual String const& Matcher::getName | ( | ) | const [pure virtual] |
Implemented in CrossMatch, FixedRadiusCrossMatch, and Neighbours.
Referenced by Filter::filter(), Filter::getName(), and getReady().
void Matcher::getReady | ( | ) | [virtual] |
Reimplemented in CrossMatch, and Neighbours.
Definition at line 29 of file Matcher.cpp.
References getName(), and profiler.
Referenced by Filter::preFilter().
virtual double Matcher::getUpperBound | ( | Object const * | testObject | ) | [pure virtual] |
Implemented in CrossMatch, FixedRadiusCrossMatch, and Neighbours.
Referenced by DecPlaneSweepFilter::filter().
bool Matcher::hasFilter | ( | ) | const [inline] |
void Matcher::incObjectCount | ( | ) | [private] |
virtual Object const* Matcher::nextActiveObject | ( | ) | [pure virtual] |
Implemented in CrossMatch, and Neighbours.
Referenced by NestedLoopFilter::filter(), and DecPlaneSweepFilter::filter().
Object const * Matcher::nextObject | ( | ObjectProducer * | producer | ) | [protected] |
Definition at line 57 of file Matcher.cpp.
References ObjectProducer::hasNext(), incObjectCount(), and ObjectProducer::next().
Referenced by Neighbours::doFilter(), Neighbours::nextActiveObject(), CrossMatch::nextActiveObject(), Neighbours::nextTestObject(), CrossMatch::nextTestObject(), and CrossMatch::reportUnmatchedObject().
virtual Object const* Matcher::nextTestObject | ( | ) | [pure virtual] |
Implemented in CrossMatch, and Neighbours.
Referenced by NestedLoopFilter::filter(), and DecPlaneSweepFilter::filter().
virtual void Matcher::reportActiveNoMatch | ( | Object const * | activeObject | ) | [pure virtual] |
Implemented in CrossMatch, and Neighbours.
Referenced by DecPlaneSweepFilter::filter().
void Matcher::reportNoMatch | ( | ObjectConsumer * | cons, | |
Object const * | obj | |||
) | [inline, protected] |
Definition at line 94 of file Matcher.h.
Referenced by CrossMatch::reportActiveNoMatch(), and CrossMatch::reportTestNoMatch().
virtual void Matcher::reportTestNoMatch | ( | Object const * | testObject | ) | [pure virtual] |
Implemented in CrossMatch, and Neighbours.
virtual void Matcher::test | ( | Object const * | testObject | ) | [pure virtual] |
Implemented in CrossMatch, and Neighbours.
Reimplemented in Neighbours.
Definition at line 51 of file Matcher.cpp.
References pairCons, and ObjectPairConsumer::report().
Referenced by NestedLoopFilter::filter(), and DecPlaneSweepFilter::filter().
bool Matcher::hasOwnFilter [private] |
Definition at line 95 of file Matcher.h.
Referenced by hasFilter().
unsigned long long Matcher::numObjects [private] |
Definition at line 99 of file Matcher.h.
Referenced by incObjectCount().
ObjectPairConsumer* Matcher::pairCons [protected] |
Definition at line 88 of file Matcher.h.
Referenced by Neighbours::doFilter(), finished(), Neighbours::flushActiveObjects(), Neighbours::test(), test(), and CrossMatch::test().
Profiler* Matcher::profiler [protected] |
Definition at line 89 of file Matcher.h.
Referenced by finished(), Neighbours::getReady(), getReady(), and CrossMatch::getReady().