Hi Roberto,

On 01/20/2012 01:32 PM, Roberto Spadim wrote:

> i think FS is for fusefs not?

Yes, it seems like the FS_xxxx() functions are intended to interface 
with the filesystem side of things, but I am wondering if there are do's 
and dont's/guidelines/recommendations regarding what type of code to put 
in each "class" of functions. The example I provided, i.e. where to do 
internal representation conversions, is one that comes to mind as 
something I'd like clarification on.

Cheers,

Eloy Paris.-

>
> 2012/1/20 Eloy Paris<[email protected]>:
>> Hello,
>>
>> I'm adding owfs support for a new device and am a bit confused regarding
>> conventions/best practices and what to do in the FS_xxxx() and OW_yyyy()
>> functions.
>>
>> Using ow_1820.c as an example, to read a temperature from a DS18x20
>> sensor, we have:
>>
>> FS_10temp() is the read function used for the "temperature" entry in the
>> struct filetype DS18S20[] array.
>>
>> FS_10temp() in turn calls OW_10temp(),which ends up performing the
>> necessary bus transactions or calling other OW_yyyy() functions that
>> perform more bus transactions (in the ow_1820.c case, OW_10temp() sends
>> the "start conversion" command doing a direct bus transaction, and then
>> calls OW_r_scratchpad() to read the scratchpad).
>>
>> An important thing done in OW_10temp() is that it converts the DS18x20
>> representation of a temperature to a float.
>>
>> One difference that I can see between the FS_xxxx() and the OW_yyyy()
>> functions is that the FS_xxxx() functions have the following declaration:
>>
>> ZERO_OR_ERROR FS_xxxx(struct one_wire_query *owq)
>>
>> and the OW_yyyy() functions are basically free-form.
>>
>> I have also noticed that the FS_xxxx() functions do not do bus
>> transactions directly. Instead, they seem to call OW_yyyy() functions. I
>> have not looked much, though, so I don't know if there are any exceptions.
>>
>> Now, my device also provides different values that require conversion
>> from a device internal representation to a more common representation
>> (like a floating point number). Should I be doing these conversions in
>> FS_xxxx() or in OW_yyyy() functions? If I follow the "convention" in,
>> for example, ow_1820.c, then it would have to be OW_yyyy(), but I wanted
>> to confirm.
>>
>> And more in general, are there any guidelines on the use of FS_xxxx()
>> and OW_yyyy() functions, like what should be/should not be done in each
>> "class" of function?
>>
>> Thanks in advance for any insight.
>>
>> Cheers,
>>
>> Eloy Paris.-
>>

------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
Owfs-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/owfs-developers

Reply via email to