Coding Style
Many people have and are contributing to the OpenWSN project. It is important to keep a consistent look-and-feel across the different contributions.
This page provides the following:
C Coding Style
Firmware documentation is automatically generated by Doxygen, and published nightly at http://openwsn-berkeley.github.io/.
/**
\brief Short description of file.
\author Full Name <your@emailaddress.edu>, September 2013.
*/
//=========================== variables =======================================
typedef struct {
uint16_t elem1;
uint16_t elem2;
uint16_t elem3;
} local_vars_t;
local_vars_t local_vars;
//=========================== prototypes ======================================
uint16_t function(uint16_t param1, uint16_t* param2, uint16_t* param3);
//=========================== public ==========================================
//=========================== private =========================================
/**
\brief Description function (one sentence).
Longer description function
\note Something important to know.
\param[in] param1 Input parameter (i.e. read by this function).
\param[out] param2 Output parameter (i.e. modified by this function).
\param[in,out] param3 Input/output parameter (i.e. read and modified by this
function).
\return Description of return value.
*/
uint16_t function(uint16_t param1, uint16_t* param2, uint16_t* param3) {
uint8_t i;
[...]
return returnVal;
}Python Coding Style
Software documentation is automatically generated by Sphinx, and published nightly at http://openwsn-berkeley.github.io/. For more examples of Sphinx documentation, see the Sphinx Module-specific markup page and the Python Sphinx documentation page.
# license: https://openwsn.atlassian.net/wiki/display/OW/License
'''
Introductory text to this module
.. moduleauthor:: First Last <first.last@domain.com>
'''
#============================ import ==========================================
import os
#============================ body ============================================
class MyClass(object):
'''
Description of class.
'''
def myMethod(self,myParam,myKey="value"):
'''
Description of method.
.. note::
Something to note.
:param myParam: Description of myParam
:type myParam: str
:key myKey: Description of myKey
:type myKey: str
:raise: Description of exception raised.
:returns: Description of the return value.
:rtype: Return type.
'''
return None