[Clam-devel] Typed controls: Pending refactorings
Natanael Olaiz
nolaiz at gmail.com
Fri Feb 6 01:36:24 PST 2009
El 02/05/2009 08:38 PM, David García Garzón escribió:
> BTW, Nat, I just noticed that the GetLastValueAsString prevented Control unit
> tests to compile because they used a control data with no << operator.
Ups, sorry for that!
> So i just fast implemented the technique i mentioned you the other day we used for
> serialization. I seems to compile now, and pass the tests but there is no
> test for such method so it could have stopped working. So if you find
> problems with the control printers, just blame me.
>
It works OK.
BTW, now I'm trying to finish a mixed OSC "typed control" receiver and
printer, and clean up a little the code... then I'll do the commit. For
now, the receiver seems to be working! Here is a new screenshot:
receiving mixed types OSC controls
Best regards,
Natanael
> On Thursday 05 February 2009 20:11:18 David García Garzón wrote:
>
>> I just took the first task on checking that the float dependant interface
>> is ok for the next steps:
>>
>> I found that the following functions are not used at all but in the tests:
>> Out::SendControlAsBoolean
>> Out::SendControlAsInteger
>> In::LastValueAsBoolean
>> In::LastValueAsInteger
>> (Not including LastValueAsString, still needed for a while)
>> So i just removed them and the related tests. Now on we can recommend using
>> templated controls for bool and integer instead.
>>
>> The other check i did was for float default values and bounds. There was a
>> dupped implementation on TypedControls that has been removed. Now float
>> defaults and bounds related interface is in the base class. Which is not
>> consistent yet but anyway is what we have now.
>>
>> Francisco i think that it is ready to try step 2 and to check whether all
>> is still working. Warn us if you try, because i will do ninja attacks to
>> the roadmap, from time to time.
>>
>> David.
>>
>> On Wednesday 04 February 2009 23:43:12 Natanael Olaiz wrote:
>>
>>> Thanks to David for the list, and Francisco for take the task!
>>>
>>> I'll try to improve the printer and OSC implementation. For now, here is
>>> a screenshot (the wiki is down :( ) of the actual state:
>>> receiving OSC typed controls
>>>
>>>
>>>
>>> Best regards,
>>> Natanael
>>>
>>> El 02/04/2009 09:59 PM, Francisco Tufró escribió:
>>>
>>>> I can take some time to finish this.
>>>>
>>>>
>>>> On Wed, Feb 4, 2009 at 7:29 PM, David García Garzón
>>>> <dgarcia at iua.upf.edu <mailto:dgarcia at iua.upf.edu>> wrote:
>>>>
>>>> Just for the record, and just in case some one wants to take them
>>>> before i can
>>>> do it:
>>>>
>>>> Current refactoring status (X=In or Out):
>>>>
>>>> - BaseXControl: Is the base class for any X controls
>>>> - XControl: Is the old control interface for just floats
>>>> - TypedXControl<T>: Is the new templated interface
>>>> - FloatXControl: Is a typedef to XControl to easy the transition
>>>>
>>>> To get there:
>>>> - Most common behaviour has been moved to BaseXControl.
>>>> - All uses of XControl has been renamed to BaseXControl or
>>>> FloatXControl
>>>> depending on the kind of usage (general or float).
>>>> - Some direct control sending has been abstracted into functions
>>>> living in
>>>> Processing.hxx
>>>>
>>>> Target status:
>>>>
>>>> - BaseXControl: Is the base class for any X controls
>>>> - XControl<T>: Is the new templated interface (renamed!)
>>>> - FloatXControl: Should point to XControl<float> or we could remove
>>>> it
>>>>
>>>> So, pending steps are:
>>>>
>>>> 1- Converge existing differences in float interface (bounds,
>>>> defaults and
>>>> bool/int conversion) in BaseXControl/XTypedControl versus XControl
>>>> one.
>>>> 2- Point FloatXControl typedef to XControl<T> and check that all
>>>> is still
>>>> working properly ¬¬
>>>> 3- Remove the XControl classes, checking that there still is no
>>>> direct dependency on them
>>>> 4- Rename TypedXControl<T> to XControl<T> so we have the same
>>>> interface than
>>>> with ports.
>>>> 5- Rename FloatXControl usage to XControl<float> (or keep it as we
>>>> have
>>>> AudioInPorts as InPort<float> alias)
>>>>
>>>> Other issues to address eventually:
>>>>
>>>> 6- Decide what to do with the Bound and Default interface in
>>>> BaseXControl
>>>> 7- What to do with the free functions in Processing.hxx that
>>>> handle float
>>>> control sending.
>>>> 8- Make XControlPublishers not just float
>>>>
>>>>
>>>> David.
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Clam-devel mailing list
>>>> Clam-devel at llistes.projectes.lafarga.org
>>>> <mailto:Clam-devel at llistes.projectes.lafarga.org>
>>>>
>>>> https://llistes.projectes.lafarga.org/cgi-bin/mailman/listinfo/clam-dev
>>>> el
>>>>
>>>>
>>>> -----------------------------------------------------------------------
>>>> -
>>>>
>>>> _______________________________________________
>>>> Clam-devel mailing list
>>>> Clam-devel at llistes.projectes.lafarga.org
>>>> https://llistes.projectes.lafarga.org/cgi-bin/mailman/listinfo/clam-dev
>>>> el
>>>>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.clam-project.org/pipermail/clam-devel-clam-project.org/attachments/20090206/10e559a1/attachment-0004.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: typed_osc_printer.png
Type: image/png
Size: 58309 bytes
Desc: not available
URL: <http://lists.clam-project.org/pipermail/clam-devel-clam-project.org/attachments/20090206/10e559a1/attachment-0005.png>
More information about the clam-devel
mailing list