changeset 171:bb4507f24dc9 structure

Tidy up
author Chris Cannam
date Fri, 06 Feb 2015 13:07:30 +0000
parents 1af39ce8d44b
children 30d59e1e4232
files src/Finder.cpp src/Finder.h src/MatchFeatureFeeder.cpp src/MatchFeatureFeeder.h src/Matcher.h
diffstat 5 files changed, 23 insertions(+), 42 deletions(-) [+]
line wrap: on
line diff
--- 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
--- 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);
--- 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<double> f1, vector<double> 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;
--- 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<int> m_fpx;
     vector<int> m_fpy;
+
+    // not provided:
+    MatchFeatureFeeder(const MatchFeatureFeeder &other);
+    MatchFeatureFeeder &operator=(const MatchFeatureFeeder &other);
 };
 
 #endif
--- 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;
     }