/***************************************************/ /*! \class WvIn \brief STK audio input abstract base class. This class provides common functionality for a variety of audio data input subclasses. WvIn supports multi-channel data. It is important to distinguish the tick() methods, which return samples produced by averaging across sample frames, from the tickFrame() methods, which return references or pointers to multi-channel sample frames. Both interleaved and non-interleaved data is supported via the use of StkFrames objects. by Perry R. Cook and Gary P. Scavone, 1995 - 2005. */ /***************************************************/ #include "WvIn.h" #include using namespace Nyq; WvIn :: WvIn() { } WvIn :: ~WvIn() { } StkFloat WvIn :: lastOut( void ) const { if ( lastOutputs_.empty() ) return 0.0; if ( lastOutputs_.size() == 1 ) return lastOutputs_[0]; StkFloat output = 0.0; for ( unsigned int i=0; i= frames.channels() ) { errorString_ << "WvIn::tick(): channel and StkFrames arguments are incompatible!"; handleError( StkError::FUNCTION_ARGUMENT ); } if ( frames.channels() == 1 ) { for ( unsigned int i=0; icomputeFrame(); for ( j=0; jcomputeFrame(); index = i; for ( j=0; j