v=csim('get',o,fieldname)
csim('set',o,fieldname,value)
where o is the handle of the object returned by
o=csim('create',classname)
and fieldname is a string identifying the field (i.e. the name of the field).
Class member variable of the types
double and double *float and float *int and int *can be made accessible fields.
Each field has the following associated information (see csimFieldInfo )
float *, double *, or int *reggen (a quick and dirty hack based on doxygen) to gather the infomation from the source code and its doxygen style documentation. reggen writes all relevant function calls to register fields an classes to registerclass.i public class member variables are registered as READWRITE fields
protected class member variables are registered as READONLY
private class member variables are not registered.
doxygen comment is used as descriptio of the field
doxygen comment of a class is used as its descriptionDO_REGISTERING somewhere in the class definition.
For each of the member variables where you want to change the default behaviour of reggen you have to put a doxygen brief comment where you specify the relevant information.
S a read-writable field with units Volt and a lower and upper bound of -1 and +1 respectively: //! A voltage scale factor [readwrite; units=Volt; range=(-1,1);] float S;
*A a read-only field with 20 elements, units Ohm, and a lower and upper bound of -100 and +100 respectively: //! A voltage scale factor [readonly; size=20; units=Ohm; range=(-100,100);] double *A;
lsm/develop/reggen .lsm/develop/reggen/src/defgen.cpp .lsm/develop/reggen/bin/reggen .
cd lsm/develop/reggen make