diff --git a/src/spect.cpp b/src/spect.cpp index 0ebbb588..0353521b 100644 --- a/src/spect.cpp +++ b/src/spect.cpp @@ -286,24 +286,19 @@ SpectSeq::~SpectSeq() } -float SpectSeq::GetFrameLength(int frame, int plus, int *original) +static float GetFrameLength(SpectSeq &spect, int frame) {//=============================================================== int ix; float adjust=0; - if(frame >= numframes-1) return(0); + if(frame >= spect.numframes-1) return(0); - // include the adjustment for this frame ? - if(plus) adjust = frames[frame]->length_adjust; - - for(ix=frame+1; ixkeyframe) break; // reached next keyframe - adjust += frames[ix]->length_adjust; + if(spect.frames[ix]->keyframe) break; // reached next keyframe + adjust += spect.frames[ix]->length_adjust; } - if(original != NULL) - *original = int((frames[ix]->time - frames[frame]->time) * 1000.0 + 0.5); - return ((frames[ix]->time - frames[frame]->time) * 1000.0 + adjust); + return ((spect.frames[ix]->time - spect.frames[frame]->time) * 1000.0 + adjust); } @@ -398,7 +393,7 @@ else for(ix=0; ixkeyframe) - frames[ix]->length_adjust = frames[ix]->length - GetFrameLength(ix,0,NULL); + frames[ix]->length_adjust = frames[ix]->length - GetFrameLength(*this,ix); } return(0); } // end of SpectSeq::Load diff --git a/src/spect.h b/src/spect.h index 64fb72b6..ff95a0a5 100644 --- a/src/spect.h +++ b/src/spect.h @@ -121,8 +121,6 @@ public: ~SpectSeq(); int Load(wxInputStream& stream); - float GetFrameLength(int frame, int plus, int *original_mS); - int numframes; int amplitude; int spare;