From 0ed7a8b68dd73e2b0473b8127aeca99f3bac9061 Mon Sep 17 00:00:00 2001 From: Thomas Grill Date: Wed, 1 Apr 2009 21:13:09 +0000 Subject: cleaned up grill externals - replaced with svn:externals to svn.grrrr.org/ext/trunk/ svn path=/trunk/; revision=10951 --- externals/grill/flext/source/fldsp.h | 184 ----------------------------------- 1 file changed, 184 deletions(-) delete mode 100644 externals/grill/flext/source/fldsp.h (limited to 'externals/grill/flext/source/fldsp.h') diff --git a/externals/grill/flext/source/fldsp.h b/externals/grill/flext/source/fldsp.h deleted file mode 100644 index f4c6f470..00000000 --- a/externals/grill/flext/source/fldsp.h +++ /dev/null @@ -1,184 +0,0 @@ -/* - -flext - C++ layer for Max/MSP and pd (pure data) externals - -Copyright (c) 2001-2006 Thomas Grill (gr@grrrr.org) -For information on usage and redistribution, and for a DISCLAIMER OF ALL -WARRANTIES, see the file, "license.txt," in this distribution. - -*/ - -/*! \file fldsp.h - \brief Declares the flext dsp class - -*/ - -#ifndef __FLDSP_H -#define __FLDSP_H - -// include the header file declaring the base classes -#include "flext.h" - - -// === flext_dsp ================================================== - -class FLEXT_SHARE FLEXT_CLASSDEF(flext_dsp); -typedef class FLEXT_SHARE FLEXT_CLASSDEF(flext_dsp) flext_dsp; - - -/*! \brief Flext dsp enabled base object -*/ -class FLEXT_SHARE FLEXT_CLASSDEF(flext_dsp): - public flext_base -{ - FLEXT_HEADER_S(FLEXT_CLASSDEF(flext_dsp),flext_base,Setup) - - friend class FLEXT_SHARE FLEXT_CLASSDEF(flext_base); - -public: - -/*! \defgroup FLEXT_DSP Flext dsp class - - @{ -*/ - -/*! \defgroup FLEXT_C_DSP Basic dsp functionality - - @{ -*/ - - //! returns current sample rate - float Samplerate() const { return srate; } - - //! returns current block (aka vector) size - int Blocksize() const { return blksz; } - - //! returns array of input vectors (CntInSig() vectors) - t_sample *const *InSig() const { return vecs; } - - //! returns input vector - t_sample *InSig(int i) const { return InSig()[i]; } - - //! returns array of output vectors (CntOutSig() vectors) - // \todo cache that returned pointer - t_sample *const *OutSig() const - { - int i = CntInSig(); - // in PD we have at least one actual dsp in vector -#if FLEXT_SYS == FLEXT_SYS_PD - return vecs+(i?i:1); -#elif FLEXT_SYS == FLEXT_SYS_MAX - return vecs+i; -#else -#error -#endif - } - - //! returns output vector - t_sample *OutSig(int i) const { return OutSig()[i]; } - - //! typedef describing a signal vector - typedef t_sample *t_signalvec; - -//! @} - -// --- inheritable virtual methods -------------------------------- - -/*! \defgroup FLEXT_C_DSP_VIRTUAL Flext virtual dsp functions - - @{ -*/ - /*! \brief Called on every dsp init. - \note Don't expect any valid data in the signal vectors! - flext_dsp::CbDsp should not be called by the derived class - - \return true (default)... use DSP, false, don't use DSP - */ - virtual bool CbDsp(); - - /*! \brief Called with every signal vector - here you do the dsp calculation - flext_dsp::CbSignal fills all output vectors with silence - */ - virtual void CbSignal(); - - - /*! \brief Deprecated method for CbSignal - \deprecated - \param n: frames (aka samples) in one signal vector - \param insigs: array of input vectors (get number with function CntInSig()) - \param outsigs: array of output vectors (get number with function CntOutSig()) - */ - virtual void m_dsp(int n,t_signalvec const *insigs,t_signalvec const *outsigs); - - /*! \brief Deprecated method for CbSignal - \deprecated - \param n: frames (aka samples) in one signal vector - \param insigs: array of input vectors (get number with function CntInSig()) - \param outsigs: array of output vectors (get number with function CntOutSig()) - */ - virtual void m_signal(int n,t_sample *const *insigs,t_sample *const *outsigs); - -//! @} - - -/*! \defgroup FLEXT_C_DSP_INOUT Flext dsp in-/outlet functions - \note These must be called in the class' constructor - - @{ -*/ -// --- inlet/outlet stuff ----------------------------------------- - - /*! \brief Add signal inlet(s) - \param m Number of inlets to add - */ - void AddInSignal(int m = 1) { AddInlet(xlet_sig,m); } - - /*! \brief Add signal inlet (with description) - \param desc Description of inlet - */ - void AddInSignal(const char *desc) { AddInlet(xlet_sig,1,desc); } - - /*! \brief Add signal outlet(s) - \param m Number of inlets to add - */ - void AddOutSignal(int m = 1) { AddOutlet(xlet_sig,m); } - - /*! \brief Add signal outlet (with description) - \param desc Description of outlet - */ - void AddOutSignal(const char *desc) { AddOutlet(xlet_sig,1,desc); } - -//! @} - -//! @} - -protected: - - FLEXT_CLASSDEF(flext_dsp)(); - - virtual void Exit(); - -private: - - // not static, could be different in different patchers.. - float srate; - int blksz; - t_signalvec *vecs; - - // setup function - static void Setup(t_classid c); - -#if FLEXT_SYS == FLEXT_SYS_PD - static bool cb_enable(flext_base *c,float &on); - bool dspon; -#endif - - static inline flext_dsp *thisObject(flext_hdr *c) { return FLEXT_CAST(c->data); } - - void SetupDsp(t_signal **sp); - - // dsp stuff - static t_int *dspmeth(t_int *w); -}; - -#endif -- cgit v1.2.1