# HG changeset patch # User Chris Cannam # Date 1423228050 0 # Node ID bb4507f24dc94b46aaf04c9b03d3da7a048ae582 # Parent 1af39ce8d44bfd58dc2ae42efb93708f79998b4b Tidy up diff -r 1af39ce8d44b -r bb4507f24dc9 src/Finder.cpp --- a/src/Finder.cpp Fri Feb 06 11:46:23 2015 +0000 +++ b/src/Finder.cpp Fri Feb 06 13:07:30 2015 +0000 @@ -131,6 +131,13 @@ } Matcher::Advance +Finder::getExpandDirection() +{ + return getExpandDirection(m_m->getFrameCount() - 1, + m_m->getOtherFrameCount() - 1); +} + +Matcher::Advance Finder::getExpandDirection(int row, int col) { // To determine which direction to expand the search area in, we diff -r 1af39ce8d44b -r bb4507f24dc9 src/Finder.h --- a/src/Finder.h Fri Feb 06 11:46:23 2015 +0000 +++ b/src/Finder.h Fri Feb 06 13:07:30 2015 +0000 @@ -71,6 +71,12 @@ /** * Calculate which direction to expand the search area in, given + * its current extents. + */ + Matcher::Advance getExpandDirection(); + + /** + * Calculate which direction to expand the search area in, given * that so far it extends as far as the point at (row, col). */ Matcher::Advance getExpandDirection(int row, int col); diff -r 1af39ce8d44b -r bb4507f24dc9 src/MatchFeatureFeeder.cpp --- a/src/MatchFeatureFeeder.cpp Fri Feb 06 11:46:23 2015 +0000 +++ b/src/MatchFeatureFeeder.cpp Fri Feb 06 13:07:30 2015 +0000 @@ -29,40 +29,6 @@ { } -MatchFeatureFeeder::MatchFeatureFeeder(const MatchFeatureFeeder &other) : - m_pm1(other.m_pm1), - m_pm2(other.m_pm2), - m_finder(m_pm1), - m_q1(other.m_q1), - m_q2(other.m_q2), - m_fpx(other.m_fpx), - m_fpy(other.m_fpy) -{ -} - -MatchFeatureFeeder & -MatchFeatureFeeder::operator=(const MatchFeatureFeeder &other) -{ - m_pm1 = other.m_pm1; - m_pm2 = other.m_pm2; - m_finder = Finder(m_pm1); - m_q1 = other.m_q1; - m_q2 = other.m_q2; - m_fpx = other.m_fpx; - m_fpy = other.m_fpy; - cerr << "MatchFeatureFeeder::operator=(): queue lengths: " << m_q1.size() - << ", " << m_q2.size() << endl; - return *this; -} - -void -MatchFeatureFeeder::setMatchers(Matcher *m1, Matcher *m2) -{ - m_pm1 = m1; - m_pm2 = m2; - m_finder.setMatcher(m_pm1); -} - void MatchFeatureFeeder::feed(vector f1, vector f2) { @@ -115,7 +81,7 @@ feed2(); } else if (m_q2.empty()) { // ended feed1(); - } else if (m_pm1->getFrameCount() < m_pm1->getBlockSize()) { // fill initial block + } else if (m_pm1->isFillingInitialBlock()) { feed1(); feed2(); } else if (m_pm1->isOverrunning()) { // slope constraints @@ -123,8 +89,7 @@ } else if (m_pm2->isOverrunning()) { feed1(); } else { - switch (m_finder.getExpandDirection - (m_pm1->getFrameCount()-1, m_pm2->getFrameCount()-1)) { + switch (m_finder.getExpandDirection()) { case Matcher::AdvanceThis: feed1(); break; diff -r 1af39ce8d44b -r bb4507f24dc9 src/MatchFeatureFeeder.h --- a/src/MatchFeatureFeeder.h Fri Feb 06 11:46:23 2015 +0000 +++ b/src/MatchFeatureFeeder.h Fri Feb 06 13:07:30 2015 +0000 @@ -28,11 +28,6 @@ MatchFeatureFeeder(Matcher *m1, Matcher *m2); ~MatchFeatureFeeder(); - MatchFeatureFeeder(const MatchFeatureFeeder &other); - MatchFeatureFeeder &operator=(const MatchFeatureFeeder &other); - - void setMatchers(Matcher *m1, Matcher *m2); - /** * Feed the two supplied feature vectors to feeders 1 and 2 * respectively (depending on their advance status). Matchers must @@ -88,6 +83,10 @@ vector m_fpx; vector m_fpy; + + // not provided: + MatchFeatureFeeder(const MatchFeatureFeeder &other); + MatchFeatureFeeder &operator=(const MatchFeatureFeeder &other); }; #endif diff -r 1af39ce8d44b -r bb4507f24dc9 src/Matcher.h --- a/src/Matcher.h Fri Feb 06 11:46:23 2015 +0000 +++ b/src/Matcher.h Fri Feb 06 13:07:30 2015 +0000 @@ -123,6 +123,10 @@ return m_blockSize; } + bool isFillingInitialBlock() { + return m_frameCount < m_blockSize; + } + bool isOverrunning() { return m_runCount >= m_params.maxRunCount; }