|
From: Rodrigo D. <cu...@uo...> - 2002-02-17 23:30:20
|
Johann Deneux wrote:
>>
>> My idea was not using a queue - it was just aborting and=20
>> returning an error and let the application decide whether it'll try=20
>> again, etc..
>>
>
> Ok. That's what's being done now.=20
Do you think we should keep it this way?? I think it's good=20
enough...
>
>>>>> Maybe there are properties of the device itself that could be=20
>>>>> queried, too.
>>>>> Do you see any such dynamic property (ie beside the name, type,=20
>>>>> effects supported
>>>>> by the device) ?
>>>>>
>>>> That'd be stuff like gain, which actuactors are enabled, etc.=
..=20
>>>
How about this part?? How important is it??
>>>>
>>>> I suppose there is another lib which can be used for reading=20
>>>> the device data?? Like axes position, buttons, etc...so we don't=20
>>>> need to worry about that, right?
>>>
>>>
>>>
>>>
>>> No, we do need to take care of that.=20
>>
>>
>>
>> Incredible enough, I looked, and there's NO basic joystick=20
>> library in freshmeat or sourceforge...just stuff like "run programs=20
>> with your joystick"...should we really include that in libff, or=20
>> would it be better to make a generic event library(like directinput)??
>>
>
> Well, there are PLib, SDL, libjsw, certainly ClanLib and maybe others.=20
I know...but should we implement input functions in libff too,=20
or should we just leave that up to other libs??
>
>>> >>>>Other question: what's your opinion about the shared parameter=20
>>> block issue ? It's seems we are
>>>
>>>>>>> forced to go for the restrictive 1-parameter 1-effect scheme on=20
>>>>>>> the driver side, but that does
>>>>>>> not mean we cannot try to emulate it on the API side.
>>>>>>>
>>>>>> I'm in favor of it - in fact the API has already started=20
>>>>>> with that idea...but probably(and specially if the kernel chooses=20
>>>>>> 1-to-1 scheme), updating a block will only change the effects=20
>>>>>> where it is used, if the effect itself is updated...
>>>>>>
>>>>>
>>>>> We will need to define clearly what we mean by effect. To me, it=20
>>>>> looks
>>>>> like we should apply the change as soon as the parameter block is=20
>>>>> changed.
>>>>>
>>>> An effect is a group of properties that will generate a=20
>>>> force...
>>>
>>>
>>>
>>>
>>> Then when you update a parameter you update the effect itself too.=20
>>> How can you update a parameter without updating the effect ?=20
>>
>>
>>
>>
>> You can't..specially if the kernel uses 1-to-1 parameter=20
>> models...you can update the copy that is in user memory, and that may=20
>> make managing effects easier, for example you can have all your=20
>> effects with the same envelope, and can change only one envelope, but=20
>> you still have to call an update for all the effects...perhaps we=20
>> could even write a little function that would update all effects that=20
>> use a certain block automagically...
>
>
> By the way, I wondered what happened to those two messages I sent=20
> yesterday. I can see them in the archives, but I have not yet received=20
> them. I posted two messages entitled "API: handling effects" and "API=20
> suggestion: feature queries". Did you receive them ?=20
No, I didn't...maybe you should repost them...I'll look in the=20
archive anyway...
I'm attaching a rough draft of the API - it's just my initial=20
suggestion...please do criticize...
One point I forgot to mention is the whole thing about angle=20
units - in my suggestion I made it so the programmer can specify angles=20
in degrees(0-360), radians(0-2PI), grads(0-400), or raw(0-FFFF)...what=20
do you think about that??
Rodrigo
--=20
*******************************
* Rodrigo Damazio *
* *************************** *
* cu...@uo... *
* rod...@po... *
* ICQ: #3560450 *
* http://www.vros.com/cuddly/ *
* *************************** *
* Engenharia da Computa=E7=E3o *
* Escola Polit=E9cnica *
* USP - S=E3o Paulo *
*******************************
|