Updated base classes for sensors

git-svn-id: https://svn.code.sf.net/p/chibios/svn2/trunk@11587 110e8d01-0319-4d1e-a829-52ad28d1bb01
This commit is contained in:
Rocco Marco Guglielmi 2018-02-27 16:19:21 +00:00
parent 36b481fd06
commit 88b64ee237
7 changed files with 53 additions and 102 deletions

View File

@ -84,7 +84,7 @@ struct BaseAccelerometerVMT {
*/ */
typedef struct { typedef struct {
/** @brief Virtual Methods Table.*/ /** @brief Virtual Methods Table.*/
const struct BaseAccelerometerVMT *vmt_accelerometer; const struct BaseAccelerometerVMT *vmt;
_base_accelerometer_data _base_accelerometer_data
} BaseAccelerometer; } BaseAccelerometer;
@ -96,13 +96,6 @@ typedef struct {
* @name Macro Functions (BaseAccelerometer) * @name Macro Functions (BaseAccelerometer)
* @{ * @{
*/ */
/**
* @brief Instance getter.
* @details This special method is used to get the instance of this class
* object from a derived class.
*/
#define getBaseAccelerometer(ip) ((BaseAccelerometer *)&(ip)->vmt_accelerometer)
/** /**
* @brief Accelerometer get axes number. * @brief Accelerometer get axes number.
* *
@ -112,7 +105,7 @@ typedef struct {
* @api * @api
*/ */
#define accelerometerGetAxesNumber(ip) \ #define accelerometerGetAxesNumber(ip) \
(ip)->vmt_accelerometer->get_channels_number(ip) (ip)->vmt->get_channels_number(ip)
/** /**
* @brief Accelerometer read raw data. * @brief Accelerometer read raw data.
@ -127,7 +120,7 @@ typedef struct {
* @api * @api
*/ */
#define accelerometerReadRaw(ip, dp) \ #define accelerometerReadRaw(ip, dp) \
(ip)->vmt_accelerometer->read_raw(ip, dp) (ip)->vmt->read_raw(ip, dp)
/** /**
* @brief Accelerometer read cooked data. * @brief Accelerometer read cooked data.
@ -142,7 +135,7 @@ typedef struct {
* @api * @api
*/ */
#define accelerometerReadCooked(ip, dp) \ #define accelerometerReadCooked(ip, dp) \
(ip)->vmt_accelerometer->read_cooked(ip, dp) (ip)->vmt->read_cooked(ip, dp)
/** /**
* @brief Updates accelerometer bias data from received buffer. * @brief Updates accelerometer bias data from received buffer.
@ -160,7 +153,7 @@ typedef struct {
* @api * @api
*/ */
#define accelerometerSetBias(ip, bp) \ #define accelerometerSetBias(ip, bp) \
(ip)->vmt_accelerometer->set_bias(ip, bp) (ip)->vmt->set_bias(ip, bp)
/** /**
* @brief Reset accelerometer bias data restoring it to zero. * @brief Reset accelerometer bias data restoring it to zero.
@ -174,7 +167,7 @@ typedef struct {
* @api * @api
*/ */
#define accelerometerResetBias(ip) \ #define accelerometerResetBias(ip) \
(ip)->vmt_accelerometer->reset_bias(ip) (ip)->vmt->reset_bias(ip)
/** /**
* @brief Updates accelerometer sensitivity data from received buffer. * @brief Updates accelerometer sensitivity data from received buffer.
@ -191,7 +184,7 @@ typedef struct {
* @api * @api
*/ */
#define accelerometerSetSensitivity(ip, sp) \ #define accelerometerSetSensitivity(ip, sp) \
(ip)->vmt_accelerometer->set_sensitivity(ip, sp) (ip)->vmt->set_sensitivity(ip, sp)
/** /**
* @brief Reset accelerometer sensitivity data restoring it to its typical * @brief Reset accelerometer sensitivity data restoring it to its typical
@ -206,7 +199,7 @@ typedef struct {
* @api * @api
*/ */
#define accelerometerResetSensitivity(ip) \ #define accelerometerResetSensitivity(ip) \
(ip)->vmt_accelerometer->reset_sensitivity(ip) (ip)->vmt->reset_sensitivity(ip)
/** @} */ /** @} */
/*===========================================================================*/ /*===========================================================================*/

View File

@ -85,7 +85,7 @@ struct BaseBarometerVMT {
*/ */
typedef struct { typedef struct {
/** @brief Virtual Methods Table.*/ /** @brief Virtual Methods Table.*/
const struct BaseBarometerVMT *vmt_barometer; const struct BaseBarometerVMT *vmt;
_base_barometer_data _base_barometer_data
} BaseBarometer; } BaseBarometer;
@ -96,13 +96,6 @@ typedef struct {
* @name Macro Functions (BaseBarometer) * @name Macro Functions (BaseBarometer)
* @{ * @{
*/ */
/**
* @brief Instance getter.
* @details This special method is used to get the instance of this class
* object from a derived class.
*/
#define getBaseBarometer(ip) ((BaseBarometer *)&(ip)->vmt_barometer)
/** /**
* @brief Barometer get channels number. * @brief Barometer get channels number.
* *
@ -112,7 +105,7 @@ typedef struct {
* @api * @api
*/ */
#define barometerGetChannelsNumber(ip) \ #define barometerGetChannelsNumber(ip) \
(ip)->vmt_barometer->get_channels_number(ip) (ip)->vmt->get_channels_number(ip)
/** /**
* @brief Barometer read raw data. * @brief Barometer read raw data.
@ -127,7 +120,7 @@ typedef struct {
* @api * @api
*/ */
#define barometerReadRaw(ip, dp) \ #define barometerReadRaw(ip, dp) \
(ip)->vmt_barometer->read_raw(ip, dp) (ip)->vmt->read_raw(ip, dp)
/** /**
* @brief Barometer read cooked data. * @brief Barometer read cooked data.
@ -142,7 +135,7 @@ typedef struct {
* @api * @api
*/ */
#define barometerReadCooked(ip, dp) \ #define barometerReadCooked(ip, dp) \
(ip)->vmt_barometer->read_cooked(ip, dp) (ip)->vmt->read_cooked(ip, dp)
/** /**
* @brief Updates barometer bias data from received buffer. * @brief Updates barometer bias data from received buffer.
@ -159,7 +152,7 @@ typedef struct {
* @api * @api
*/ */
#define barometerSetBias(ip, bp) \ #define barometerSetBias(ip, bp) \
(ip)->vmt_barometer->set_bias(ip, bp) (ip)->vmt->set_bias(ip, bp)
/** /**
* @brief Reset barometer bias data restoring it to zero. * @brief Reset barometer bias data restoring it to zero.
@ -173,7 +166,7 @@ typedef struct {
* @api * @api
*/ */
#define barometerResetBias(ip) \ #define barometerResetBias(ip) \
(ip)->vmt_barometer->reset_bias(ip) (ip)->vmt->reset_bias(ip)
/** /**
* @brief Updates barometer sensitivity data from received buffer. * @brief Updates barometer sensitivity data from received buffer.
@ -190,7 +183,7 @@ typedef struct {
* @api * @api
*/ */
#define barometerSetSensitivity(ip, sp) \ #define barometerSetSensitivity(ip, sp) \
(ip)->vmt_barometer->set_sensitivity(ip, sp) (ip)->vmt->set_sensitivity(ip, sp)
/** /**
* @brief Reset barometer sensitivity data restoring it to its typical * @brief Reset barometer sensitivity data restoring it to its typical
@ -205,7 +198,7 @@ typedef struct {
* @api * @api
*/ */
#define barometerResetSensitivity(ip) \ #define barometerResetSensitivity(ip) \
(ip)->vmt_barometer->reset_sensitivity(ip) (ip)->vmt->reset_sensitivity(ip)
/** @} */ /** @} */
/*===========================================================================*/ /*===========================================================================*/

View File

@ -85,7 +85,7 @@ struct BaseCompassVMT {
*/ */
typedef struct { typedef struct {
/** @brief Virtual Methods Table.*/ /** @brief Virtual Methods Table.*/
const struct BaseCompassVMT *vmt_compass; const struct BaseCompassVMT *vmt;
_base_compass_data _base_compass_data
} BaseCompass; } BaseCompass;
@ -96,13 +96,6 @@ typedef struct {
* @name Macro Functions (BaseCompass) * @name Macro Functions (BaseCompass)
* @{ * @{
*/ */
/**
* @brief Instance getter.
* @details This special method is used to get the instance of this class
* object from a derived class.
*/
#define getBaseCompass(ip) ((BaseCompass *)&(ip)->vmt_compass)
/** /**
* @brief Compass get axes number. * @brief Compass get axes number.
* *
@ -112,7 +105,7 @@ typedef struct {
* @api * @api
*/ */
#define compassGetAxesNumber(ip) \ #define compassGetAxesNumber(ip) \
(ip)->vmt_compass->get_channels_number(ip) (ip)->vmt->get_channels_number(ip)
/** /**
* @brief Compass read raw data. * @brief Compass read raw data.
@ -127,7 +120,7 @@ typedef struct {
* @api * @api
*/ */
#define compassReadRaw(ip, dp) \ #define compassReadRaw(ip, dp) \
(ip)->vmt_compass->read_raw(ip, dp) (ip)->vmt->read_raw(ip, dp)
/** /**
* @brief Compass read cooked data. * @brief Compass read cooked data.
@ -142,7 +135,7 @@ typedef struct {
* @api * @api
*/ */
#define compassReadCooked(ip, dp) \ #define compassReadCooked(ip, dp) \
(ip)->vmt_compass->read_cooked(ip, dp) (ip)->vmt->read_cooked(ip, dp)
/** /**
* @brief Updates compass bias data from received buffer. * @brief Updates compass bias data from received buffer.
@ -159,7 +152,7 @@ typedef struct {
* @api * @api
*/ */
#define compassSetBias(ip, bp) \ #define compassSetBias(ip, bp) \
(ip)->vmt_compass->set_bias(ip, bp) (ip)->vmt->set_bias(ip, bp)
/** /**
* @brief Reset compass bias data restoring it to zero. * @brief Reset compass bias data restoring it to zero.
@ -173,7 +166,7 @@ typedef struct {
* @api * @api
*/ */
#define compassResetBias(ip) \ #define compassResetBias(ip) \
(ip)->vmt_compass->reset_bias(ip) (ip)->vmt->reset_bias(ip)
/** /**
* @brief Updates compass sensitivity data from received buffer. * @brief Updates compass sensitivity data from received buffer.
@ -190,7 +183,7 @@ typedef struct {
* @api * @api
*/ */
#define compassSetSensitivity(ip, sp) \ #define compassSetSensitivity(ip, sp) \
(ip)->vmt_compass->set_sensitivity(ip, sp) (ip)->vmt->set_sensitivity(ip, sp)
/** /**
* @brief Reset compass sensitivity data restoring it to its typical * @brief Reset compass sensitivity data restoring it to its typical
@ -205,7 +198,7 @@ typedef struct {
* @api * @api
*/ */
#define compassResetSensitivity(ip) \ #define compassResetSensitivity(ip) \
(ip)->vmt_compass->reset_sensitivity(ip) (ip)->vmt->reset_sensitivity(ip)
/** @} */ /** @} */
/*===========================================================================*/ /*===========================================================================*/

View File

@ -87,7 +87,7 @@ struct BaseGyroscopeVMT {
*/ */
typedef struct { typedef struct {
/** @brief Virtual Methods Table.*/ /** @brief Virtual Methods Table.*/
const struct BaseGyroscopeVMT *vmt_gyroscope; const struct BaseGyroscopeVMT *vmt;
_base_gyroscope_data _base_gyroscope_data
} BaseGyroscope; } BaseGyroscope;
@ -99,13 +99,6 @@ typedef struct {
* @name Macro Functions (BaseGyroscope) * @name Macro Functions (BaseGyroscope)
* @{ * @{
*/ */
/**
* @brief Instance getter.
* @details This special method is used to get the instance of this class
* object from a derived class.
*/
#define getBaseGyroscope(ip) ((BaseGyroscope *)&(ip)->vmt_gyroscope)
/** /**
* @brief Gyroscope get axes number. * @brief Gyroscope get axes number.
* *
@ -115,7 +108,7 @@ typedef struct {
* @api * @api
*/ */
#define gyroscopeGetAxesNumber(ip) \ #define gyroscopeGetAxesNumber(ip) \
(ip)->vmt_gyroscope->get_channels_number(ip) (ip)->vmt->get_channels_number(ip)
/** /**
* @brief Gyroscope read raw data. * @brief Gyroscope read raw data.
@ -130,7 +123,7 @@ typedef struct {
* @api * @api
*/ */
#define gyroscopeReadRaw(ip, dp) \ #define gyroscopeReadRaw(ip, dp) \
(ip)->vmt_gyroscope->read_raw(ip, dp) (ip)->vmt->read_raw(ip, dp)
/** /**
* @brief Gyroscope read cooked data. * @brief Gyroscope read cooked data.
@ -145,7 +138,7 @@ typedef struct {
* @api * @api
*/ */
#define gyroscopeReadCooked(ip, dp) \ #define gyroscopeReadCooked(ip, dp) \
(ip)->vmt_gyroscope->read_cooked(ip, dp) (ip)->vmt->read_cooked(ip, dp)
/** /**
* @brief Gyroscope bias sampling procedure. * @brief Gyroscope bias sampling procedure.
@ -162,7 +155,7 @@ typedef struct {
* @api * @api
*/ */
#define gyroscopeSampleBias(ip) \ #define gyroscopeSampleBias(ip) \
(ip)->vmt_gyroscope->sample_bias(ip) (ip)->vmt->sample_bias(ip)
/** /**
* @brief Updates gyroscope bias data from received buffer. * @brief Updates gyroscope bias data from received buffer.
@ -179,7 +172,7 @@ typedef struct {
* @api * @api
*/ */
#define gyroscopeSetBias(ip, bp) \ #define gyroscopeSetBias(ip, bp) \
(ip)->vmt_gyroscope->set_bias(ip, bp) (ip)->vmt->set_bias(ip, bp)
/** /**
* @brief Reset gyroscope bias data restoring it to zero. * @brief Reset gyroscope bias data restoring it to zero.
@ -193,7 +186,7 @@ typedef struct {
* @api * @api
*/ */
#define gyroscopeResetBias(ip) \ #define gyroscopeResetBias(ip) \
(ip)->vmt_gyroscope->reset_bias(ip) (ip)->vmt->reset_bias(ip)
/** /**
* @brief Updates gyroscope sensitivity data from received buffer. * @brief Updates gyroscope sensitivity data from received buffer.
@ -210,7 +203,7 @@ typedef struct {
* @api * @api
*/ */
#define gyroscopeSetSensitivity(ip, sp) \ #define gyroscopeSetSensitivity(ip, sp) \
(ip)->vmt_gyroscope->set_sensitivity(ip, sp) (ip)->vmt->set_sensitivity(ip, sp)
/** /**
* @brief Reset gyroscope sensitivity data restoring it to its typical * @brief Reset gyroscope sensitivity data restoring it to its typical
@ -225,7 +218,7 @@ typedef struct {
* @api * @api
*/ */
#define gyroscopeResetSensitivity(ip) \ #define gyroscopeResetSensitivity(ip) \
(ip)->vmt_gyroscope->reset_sensitivity(ip) (ip)->vmt->reset_sensitivity(ip)
/** @} */ /** @} */
/*===========================================================================*/ /*===========================================================================*/

View File

@ -85,7 +85,7 @@ struct BaseHygrometerVMT {
*/ */
typedef struct { typedef struct {
/** @brief Virtual Methods Table.*/ /** @brief Virtual Methods Table.*/
const struct BaseHygrometerVMT *vmt_hygrometer; const struct BaseHygrometerVMT *vmt;
_base_hygrometer_data _base_hygrometer_data
} BaseHygrometer; } BaseHygrometer;
@ -96,13 +96,6 @@ typedef struct {
* @name Macro Functions (BaseHygrometer) * @name Macro Functions (BaseHygrometer)
* @{ * @{
*/ */
/**
* @brief Instance getter.
* @details This special method is used to get the instance of this class
* object from a derived class.
*/
#define getBaseHygrometer(ip) ((BaseHygrometer *)&(ip)->vmt_hygrometer)
/** /**
* @brief Hygrometer get channels number. * @brief Hygrometer get channels number.
* *
@ -112,7 +105,7 @@ typedef struct {
* @api * @api
*/ */
#define hygrometerGetChannelsNumber(ip) \ #define hygrometerGetChannelsNumber(ip) \
(ip)->vmt_hygrometer->get_channels_number(ip) (ip)->vmt->get_channels_number(ip)
/** /**
* @brief Hygrometer read raw data. * @brief Hygrometer read raw data.
@ -127,7 +120,7 @@ typedef struct {
* @api * @api
*/ */
#define hygrometerReadRaw(ip, dp) \ #define hygrometerReadRaw(ip, dp) \
(ip)->vmt_hygrometer->read_raw(ip, dp) (ip)->vmt->read_raw(ip, dp)
/** /**
* @brief Hygrometer read cooked data. * @brief Hygrometer read cooked data.
@ -142,7 +135,7 @@ typedef struct {
* @api * @api
*/ */
#define hygrometerReadCooked(ip, dp) \ #define hygrometerReadCooked(ip, dp) \
(ip)->vmt_hygrometer->read_cooked(ip, dp) (ip)->vmt->read_cooked(ip, dp)
/** /**
* @brief Updates hygrometer bias data from received buffer. * @brief Updates hygrometer bias data from received buffer.
@ -159,7 +152,7 @@ typedef struct {
* @api * @api
*/ */
#define hygrometerSetBias(ip, bp) \ #define hygrometerSetBias(ip, bp) \
(ip)->vmt_hygrometer->set_bias(ip, bp) (ip)->vmt->set_bias(ip, bp)
/** /**
* @brief Reset hygrometer bias data restoring it to zero. * @brief Reset hygrometer bias data restoring it to zero.
@ -173,7 +166,7 @@ typedef struct {
* @api * @api
*/ */
#define hygrometerResetBias(ip) \ #define hygrometerResetBias(ip) \
(ip)->vmt_hygrometer->reset_bias(ip) (ip)->vmt->reset_bias(ip)
/** /**
* @brief Updates hygrometer sensitivity data from received buffer. * @brief Updates hygrometer sensitivity data from received buffer.
@ -190,7 +183,7 @@ typedef struct {
* @api * @api
*/ */
#define hygrometerSetSensitivity(ip, sp) \ #define hygrometerSetSensitivity(ip, sp) \
(ip)->vmt_hygrometer->set_sensitivity(ip, sp) (ip)->vmt->set_sensitivity(ip, sp)
/** /**
* @brief Reset hygrometer sensitivity data restoring it to its typical * @brief Reset hygrometer sensitivity data restoring it to its typical
@ -205,7 +198,7 @@ typedef struct {
* @api * @api
*/ */
#define hygrometerResetSensitivity(ip) \ #define hygrometerResetSensitivity(ip) \
(ip)->vmt_hygrometer->reset_sensitivity(ip) (ip)->vmt->reset_sensitivity(ip)
/** @} */ /** @} */
/*===========================================================================*/ /*===========================================================================*/

View File

@ -83,7 +83,7 @@ struct BaseSensorVMT {
*/ */
typedef struct { typedef struct {
/** @brief Virtual Methods Table.*/ /** @brief Virtual Methods Table.*/
const struct BaseSensorVMT *vmt_sensor; const struct BaseSensorVMT *vmt;
_base_sensor_data _base_sensor_data
} BaseSensor; } BaseSensor;
@ -95,13 +95,6 @@ typedef struct {
* @name Macro Functions (BaseSensor) * @name Macro Functions (BaseSensor)
* @{ * @{
*/ */
/**
* @brief Instance getter.
* @details This special method is used to get the instance of this class
* object from a derived class.
*/
#define getBaseSensor(ip) ((BaseSensor *)&(ip)->vmt_sensor)
/** /**
* @brief Sensors get channels number. * @brief Sensors get channels number.
* *
@ -110,7 +103,7 @@ typedef struct {
* *
* @api * @api
*/ */
#define sensorGetChannelNumber(ip) (ip)->vmt_sensor->get_channels_number(ip) #define sensorGetChannelNumber(ip) (ip)->vmt->get_channels_number(ip)
/** /**
* @brief Sensors read raw data. * @brief Sensors read raw data.
@ -124,7 +117,7 @@ typedef struct {
* *
* @api * @api
*/ */
#define sensorReadRaw(ip, dp) (ip)->vmt_sensor->read_raw(ip, dp) #define sensorReadRaw(ip, dp) (ip)->vmt->read_raw(ip, dp)
/** /**
* @brief Sensors read cooked data. * @brief Sensors read cooked data.
@ -138,7 +131,7 @@ typedef struct {
* *
* @api * @api
*/ */
#define sensorReadCooked(ip, dp) (ip)->vmt_sensor->read_cooked(ip, dp) #define sensorReadCooked(ip, dp) (ip)->vmt->read_cooked(ip, dp)
/** @} */ /** @} */
/*===========================================================================*/ /*===========================================================================*/

View File

@ -85,7 +85,7 @@ struct BaseThermometerVMT {
*/ */
typedef struct { typedef struct {
/** @brief Virtual Methods Table.*/ /** @brief Virtual Methods Table.*/
const struct BaseThermometerVMT *vmt_thermometer; const struct BaseThermometerVMT *vmt;
_base_thermometer_data _base_thermometer_data
} BaseThermometer; } BaseThermometer;
@ -96,13 +96,6 @@ typedef struct {
* @name Macro Functions (BaseThermometer) * @name Macro Functions (BaseThermometer)
* @{ * @{
*/ */
/**
* @brief Instance getter.
* @details This special method is used to get the instance of this class
* object from a derived class.
*/
#define getBaseThermometer(ip) ((BaseThermometer *)&(ip)->vmt_thermometer)
/** /**
* @brief Thermometer get channels number. * @brief Thermometer get channels number.
* *
@ -112,7 +105,7 @@ typedef struct {
* @api * @api
*/ */
#define thermometerGetChannelsNumber(ip) \ #define thermometerGetChannelsNumber(ip) \
(ip)->vmt_thermometer->get_channels_number(ip) (ip)->vmt->get_channels_number(ip)
/** /**
* @brief Thermometer read raw data. * @brief Thermometer read raw data.
@ -127,7 +120,7 @@ typedef struct {
* @api * @api
*/ */
#define thermometerReadRaw(ip, dp) \ #define thermometerReadRaw(ip, dp) \
(ip)->vmt_thermometer->read_raw(ip, dp) (ip)->vmt->read_raw(ip, dp)
/** /**
* @brief Thermometer read cooked data. * @brief Thermometer read cooked data.
@ -142,7 +135,7 @@ typedef struct {
* @api * @api
*/ */
#define thermometerReadCooked(ip, dp) \ #define thermometerReadCooked(ip, dp) \
(ip)->vmt_thermometer->read_cooked(ip, dp) (ip)->vmt->read_cooked(ip, dp)
/** /**
* @brief Updates thermometer bias data from received buffer. * @brief Updates thermometer bias data from received buffer.
@ -159,7 +152,7 @@ typedef struct {
* @api * @api
*/ */
#define thermometerSetBias(ip, bp) \ #define thermometerSetBias(ip, bp) \
(ip)->vmt_thermometer->set_bias(ip, bp) (ip)->vmt->set_bias(ip, bp)
/** /**
* @brief Reset thermometer bias data restoring it to zero. * @brief Reset thermometer bias data restoring it to zero.
@ -173,7 +166,7 @@ typedef struct {
* @api * @api
*/ */
#define thermometerResetBias(ip) \ #define thermometerResetBias(ip) \
(ip)->vmt_thermometer->reset_bias(ip) (ip)->vmt->reset_bias(ip)
/** /**
* @brief Updates thermometer sensitivity data from received buffer. * @brief Updates thermometer sensitivity data from received buffer.
@ -190,7 +183,7 @@ typedef struct {
* @api * @api
*/ */
#define thermometerSetSensitivity(ip, sp) \ #define thermometerSetSensitivity(ip, sp) \
(ip)->vmt_thermometer->set_sensitivity(ip, sp) (ip)->vmt->set_sensitivity(ip, sp)
/** /**
* @brief Reset thermometer sensitivity data restoring it to its typical * @brief Reset thermometer sensitivity data restoring it to its typical
@ -205,7 +198,7 @@ typedef struct {
* @api * @api
*/ */
#define thermometerResetSensitivity(ip) \ #define thermometerResetSensitivity(ip) \
(ip)->vmt_thermometer->reset_sensitivity(ip) (ip)->vmt->reset_sensitivity(ip)
/** @} */ /** @} */
/*===========================================================================*/ /*===========================================================================*/