diff scanpath.mm @ 5:085d80989ba7

Release 1.01
author Robert Tubb <rt300@eecs.qmul.ac.uk>
date Mon, 10 Dec 2012 16:20:57 +0000
parents 79c7cf39a0a0
children 4ea605899aca
line wrap: on
line diff
--- a/scanpath.mm	Mon Dec 10 13:00:03 2012 +0000
+++ b/scanpath.mm	Mon Dec 10 16:20:57 2012 +0000
@@ -159,11 +159,11 @@
 void ScanPath::updateWavetables(){
     // swap old , new
     double * temp;
-
+    if(pathElements.size() == 0) return;
     // TODO THRED MUTEX HERE!??
     // this is called from graphics thread
     // reset the interp between frames
-
+/*
     int i = 0;
     while(audioAccessing){
         i++;
@@ -172,6 +172,7 @@
         cout << "Update wavetables had to wait for audio access " << i << " times\n";
         // hardly ever happens
     }
+ */
     updateAccessing = true;
      
 
@@ -180,17 +181,17 @@
             // now fill with new values
             for(int i = 0; i < numElements; i++){
                 // double check
-                if(pathElements[i].eLump->isInScanPath){
-                    wavetableUpdate[i] = pathElements[i].eLump->scanRadialDisplacement()/1.5;
-                }
+                
+                wavetableUpdate[i] = pathElements[i].eLump->scanRadialDisplacement();
+                
                 
             }
             break;
         case SPEED:
             for(int i = 0; i < numElements; i++){
-                if(pathElements[i].eLump->isInScanPath){
-                    wavetableUpdate[i] = pathElements[i].eLump->scanLumpSpeed();
-                }
+                
+                wavetableUpdate[i] = pathElements[i].eLump->scanLumpSpeed();
+                
             }
             break;
         case SPRING_FORCE:
@@ -233,6 +234,8 @@
 double ScanPath::getNextSample(double aPhasor){
 	// move along path, interpolating between points
     // move between frames too
+    if(pathElements.size() == 0) return 0.0;
+    
     double alongPath = aPhasor*double(numElements);
     
     // indexes for interpolated points
@@ -246,13 +249,14 @@
     
     // TODO THRED MUTEX HERE!??
     // this is called from audio thread
-
+/*
     int i = 0;
     while(updateAccessing){
         i++;
     }
+ */
     audioAccessing = true;
-    if(i>0) cout << "Audio thread had to wait for wavetable update " << i << " times\n";
+    // if(i>0) cout << "Audio thread had to wait for wavetable update " << i << " times\n";
 
     
     double oldsample = (1 - frac) * wavetableOld[n0] + frac * wavetableOld[n1];