25   OneZero( StkFloat theZero = -1.0 );
 
   31   void setB0( StkFloat b0 ) { b_[0] = b0; };
 
   34   void setB1( StkFloat b1 ) { b_[1] = b1; };
 
   37   void setCoefficients( StkFloat b0, StkFloat b1, 
bool clearState = 
false );
 
   47   void setZero( StkFloat theZero );
 
   50   StkFloat 
lastOut( 
void )
 const { 
return lastFrame_[0]; };
 
   53   StkFloat 
tick( StkFloat input );
 
   81   inputs_[0] = gain_ * input;
 
   82   lastFrame_[0] = b_[1] * inputs_[1] + b_[0] * inputs_[0];
 
   83   inputs_[1] = inputs_[0];
 
   90 #if defined(_STK_DEBUG_) 
   91   if ( channel >= frames.
channels() ) {
 
   92     oStream_ << 
"OneZero::tick(): channel and StkFrames arguments are incompatible!";
 
   97   StkFloat *samples = &frames[channel];
 
   98   unsigned int hop = frames.
channels();
 
   99   for ( 
unsigned int i=0; i<frames.
frames(); i++, samples += hop ) {
 
  100     inputs_[0] = gain_ * *samples;
 
  101     *samples = b_[1] * inputs_[1] + b_[0] * inputs_[0];
 
  102     inputs_[1] = inputs_[0];
 
  105   lastFrame_[0] = *(samples-hop);
 
  111 #if defined(_STK_DEBUG_) 
  113     oStream_ << 
"OneZero::tick(): channel and StkFrames arguments are incompatible!";
 
  118   StkFloat *iSamples = &iFrames[iChannel];
 
  119   StkFloat *oSamples = &oFrames[oChannel];
 
  121   for ( 
unsigned int i=0; i<iFrames.
frames(); i++, iSamples += iHop, oSamples += oHop ) {
 
  122     inputs_[0] = gain_ * *iSamples;
 
  123     *oSamples = b_[1] * inputs_[1] + b_[0] * inputs_[0];
 
  124     inputs_[1] = inputs_[0];
 
  127   lastFrame_[0] = *(oSamples-oHop);