X-Git-Url: https://scm.cri.ensmp.fr/git/Faustine.git/blobdiff_plain/c7f552fd8888da2f0d8cfb228fe0f28d3df3a12c..b4b6f2ea75b9f0f3ca918f5b84016610bf7a4d4f:/interpretor/faust-0.9.47mr3/architecture/audio/oscdsp.h diff --git a/interpretor/faust-0.9.47mr3/architecture/audio/oscdsp.h b/interpretor/faust-0.9.47mr3/architecture/audio/oscdsp.h deleted file mode 100644 index 4521d53..0000000 --- a/interpretor/faust-0.9.47mr3/architecture/audio/oscdsp.h +++ /dev/null @@ -1,71 +0,0 @@ - -#ifndef __osc_dsp__ -#define __osc_dsp__ - -#include -#include "audio/audio.h" -#include "audio/dsp.h" -#include "OSCIO.h" - -/****************************************************************************** -******************************************************************************* - - OSC AUDIO INTERFACE - -******************************************************************************* -*******************************************************************************/ - -#define kMaxBuffer 4096 - -class oscdsp : public audio, public oscfaust::OSCIO { - dsp* fDsp; - float ** fInBuffers, **fOutBuffers; - - public: - oscdsp(const char * dst, int argc, char *argv[]) : OSCIO(dst), fDsp(0), fInBuffers(0), fOutBuffers(0) - { - for (int i = 1; i < argc-1; i++) - if (!strcmp(argv[i], "-iodst")) setDest (argv[i+1]); - } - virtual ~oscdsp() { stop(); } - - virtual bool init(const char*name, dsp* DSP) { - fDsp = DSP; - fDsp->init(44100); - fInBuffers = new float*[numInputs()]; - fOutBuffers = new float*[numOutputs()]; - for (int i= 0; i < numInputs(); i++) - fInBuffers[i] = new float[kMaxBuffer]; - for (int i= 0; i < numOutputs(); i++) - fOutBuffers [i] = new float[kMaxBuffer]; - return true; - } - - virtual bool start() { return true; } - virtual void stop() {} - - void compute( int nframes ) { - fDsp->compute(nframes, fInBuffers, fOutBuffers); - for (int i= 0; i < numOutputs(); i++) - send( nframes, fOutBuffers [i], i); - } - - void receive( int nvalues, float * val ) { - int inChans = numInputs(); - if (!inChans) { - compute(nvalues); - return; - } - - for (int i=0; i < nvalues; i++) { - int c = i % inChans; - int frame = i / inChans; - fInBuffers[c][frame] = val[i]; - } - compute (nvalues / inChans); - } - int numOutputs() const { return fDsp ? fDsp->getNumOutputs() : 0; } - int numInputs() const { return fDsp ? fDsp->getNumInputs() : 0; } -}; - -#endif