From 3e90874e5d63137c195c3b3c1ce90b542deb8a51 Mon Sep 17 00:00:00 2001 From: Thomas Grill Date: Sun, 27 Feb 2005 04:56:10 +0000 Subject: small name change and reuse of Fifo cells fixed eol-style new lock-free lifo and fifo fixes for linux eliminated ChannelsIn/ChannelsOut updated docs build system: added profiler mode, more fixes fix for linux autodetection of build platform fix for flext_dsp @ Max svn path=/trunk/; revision=2584 --- externals/grill/flext/notes.txt | 130 ++++++++++++++++++++-------------------- 1 file changed, 66 insertions(+), 64 deletions(-) (limited to 'externals/grill/flext/notes.txt') diff --git a/externals/grill/flext/notes.txt b/externals/grill/flext/notes.txt index 3538ca5f..4833b7e6 100644 --- a/externals/grill/flext/notes.txt +++ b/externals/grill/flext/notes.txt @@ -1,64 +1,66 @@ -flext - C++ layer for Max/MSP and pd (pure data) externals - -Copyright (c) 2001-2005 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. - ----------------------------------------------------------------------------- - -VARIOUS NOTES: - -Platform specific: -- PD does not allow signal and message to go into the same inlet (except leftmost inlet) -- PD: with DSP objects all float messages to the leftmost inlet are converted to signal - -Restrictions in compatibility mode: -- Max allows only 9 float/int inlets - -Porting to new compilers/platforms: -- enums must be int-sized!!! -- compiler must support bool type -- an STL implementation must exist -- C++ exceptions and RTTI must be enabled - ----------------------------------------------------------------------------- - -KNOWN BUGS: -- can't use MFC libraries because of global new and delete overloadings -- MaxMSP Mach-O DSP externals cannot be the first externals loaded (e.g. in Max Runtime) - there must be a CFM signal external loaded beforehand!!! (Max will crash otherwise) - ----------------------------------------------------------------------------- - -TODO LIST: - -- optimizations for object initialization and messaging -- SIMD for gcc - -- update documentation -- add log messages for debugging version -- use PD's t_float and t_int types (or comparable for 32-bit safety) - -- add double handlers -- add signal in/out connection query function - -- support for Max qelem style - -- flext::post and flext::error should print via a worker thread (and should be unlimited in characters) - -- manage running threads individually (stop, isrunning?, priority etc.) - ----------------------------------------------------------------------------- - -TESTS TO DO: - -- PD: problems with timed buffer redrawing (takes a lot of cpu time) -- hard thread termination upon object destruction doesn't seem to work properly -> crash -- Max rounding bug ... buffer resize could be one sample less! - -- PD: figure out what "pointer" messages do and whether they are correctly implemented in flext - -- Max buffer~ resize: flext_base::buffer::Frames(): must we use buffer or system sample rate? - -- check whether m_dsp gets called upon deletion of a used buffer (PD and MaxMSP may behave differently). - -> PD does call m_dsp, Max/MSP does not +flext - C++ layer for Max/MSP and pd (pure data) externals + +Copyright (c) 2001-2005 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. + +---------------------------------------------------------------------------- + +VARIOUS NOTES: + +Platform specific: +- PD does not allow signal and message to go into the same inlet (except leftmost inlet) +- PD: with DSP objects all float messages to the leftmost inlet are converted to signal + +Restrictions in compatibility mode: +- Max allows only 9 float/int inlets + +Porting to new compilers/platforms: +- enums must be int-sized!!! +- compiler must support bool type +- an STL implementation must exist +- C++ exceptions and RTTI must be enabled + +---------------------------------------------------------------------------- + +KNOWN BUGS: +- can't use MFC libraries because of global new and delete overloadings + +- MaxMSP Mach-O DSP externals cannot be the first externals loaded (e.g. in Max Runtime) + there must be a CFM signal external loaded beforehand!!! (Max will crash otherwise) + -> i think this is fixed in Max in the meantime! + +---------------------------------------------------------------------------- + +TODO LIST: + +- optimizations for object initialization and messaging +- SIMD for gcc + +- update documentation +- add log messages for debugging version +- use PD's t_float and t_int types (or comparable for 32-bit safety) + +- add double handlers +- add signal in/out connection query function + +- support for Max qelem style + +- flext::post and flext::error should print via a worker thread (and should be unlimited in characters) + +- manage running threads individually (stop, isrunning?, priority etc.) + +---------------------------------------------------------------------------- + +TESTS TO DO: + +- PD: problems with timed buffer redrawing (takes a lot of cpu time) +- hard thread termination upon object destruction doesn't seem to work properly -> crash +- Max rounding bug ... buffer resize could be one sample less! + +- PD: figure out what "pointer" messages do and whether they are correctly implemented in flext + +- Max buffer~ resize: flext_base::buffer::Frames(): must we use buffer or system sample rate? + +- check whether m_dsp gets called upon deletion of a used buffer (PD and MaxMSP may behave differently). + -> PD does call m_dsp, Max/MSP does not -- cgit v1.2.1