[flext] future developments - new guidelines

Thomas Grill gr at grrrr.org
Tue Nov 22 11:27:30 CET 2011


Hi Arshia,
the most-valued contribution is the fact that you use flext and report  
back on issues and successes.

One thing that i'll work on first is thoroughly checking thread-safety  
in flext, which has been a source of many problems in the past.

gr~~~

Am 22.11.2011 um 11:20 schrieb Arshia Cont:

> Dear Thomas and all,
>
> This is very exciting!
>
> Let us know how you'd want to go on this and whether we can  
> contribute in any way.
>
>
> Arshia Cont
>
>
>
>
> On Nov 20, 2011, at 11:47 AM, Thomas Grill wrote:
>
>> Hi all,
>> i'm sitting in a workshop with David Zicarelli, Joshua Klayton and  
>> Emmanuel Jourdan where i learn about the new development features  
>> of Max 6. As expected Max has moved away from the traditional Pd- 
>> like core even farther, but on the other hand with very nice new  
>> features.
>> I might at some point implement the new 64-bit DSP chain and also  
>> genuine Max attributes (as present since Max 5) in order to enable  
>> pattr-style automation.
>>
>> In order to make this possible, i have to deprecate certain aspects  
>> of the flext API which might be used in existing projects. Some of  
>> them are even used in flext tutorial examples (where they'll  
>> disappear soon), but for my actual real-world external i haven't  
>> found them to be essential.
>> I might try to provide backward-compatibility fallbacks for some  
>> cases, but that might not be possible throughout.
>>
>> New guidelines:
>>
>> - don't use instance-based method or attribute registering. Use  
>> class-based methods or attributes instead.
>> so e.g., don't use FLEXT_ADDMETHOD in your constructor, but rather  
>> FLEXT_CADDMETHOD in your class setup function instead. The same  
>> goes for attribute definitions.
>>
>> - don't rely on the DSP information to be present in the CbDsp, but  
>> only in CbSignal. This applies to the signal input and output  
>> vectors and to the number of samples to be processed.
>> The reason for this is that Max 6 allows varying vector sizes.
>>
>> - do always lock sample buffers when reading from or writing to  
>> them. The respective methods Lock and Unlock in flext::buffer have  
>> been present for quite a while, but i think i haven't really  
>> advertized the necessity of using them.
>>
>>
>> let me know what you think about it and whether this will have  
>> serious advert effects to your flext-based projects.
>>
>> have fun!
>> gr~~~
>>
>> _______________________________________________
>> http://grrrr.org/ext/flext
>>
>> flext mailing list
>> flext at grrrr.org
>> http://grrrr.org/cgi-bin/mailman/listinfo/flext
>>
>



More information about the flext mailing list