Browse Source

temperature_calibration: make sure to call orb_unsubscribe() when objects are destroyed

sbg
Beat Küng 8 years ago committed by Lorenz Meier
parent
commit
38b4984c36
  1. 7
      src/modules/events/temperature_calibration/accel.cpp
  2. 2
      src/modules/events/temperature_calibration/accel.h
  3. 7
      src/modules/events/temperature_calibration/baro.cpp
  4. 2
      src/modules/events/temperature_calibration/baro.h

7
src/modules/events/temperature_calibration/accel.cpp

@ -60,6 +60,13 @@ TemperatureCalibrationAccel::TemperatureCalibrationAccel(float min_temperature_r @@ -60,6 +60,13 @@ TemperatureCalibrationAccel::TemperatureCalibrationAccel(float min_temperature_r
}
}
TemperatureCalibrationAccel::~TemperatureCalibrationAccel()
{
for (unsigned i = 0; i < _num_sensor_instances; i++) {
orb_unsubscribe(_sensor_subs[i]);
}
}
void TemperatureCalibrationAccel::reset_calibration()
{
/* reset all driver level calibrations */

2
src/modules/events/temperature_calibration/accel.h

@ -40,7 +40,7 @@ class TemperatureCalibrationAccel : public TemperatureCalibrationBase @@ -40,7 +40,7 @@ class TemperatureCalibrationAccel : public TemperatureCalibrationBase
{
public:
TemperatureCalibrationAccel(float min_temperature_rise);
virtual ~TemperatureCalibrationAccel() {}
virtual ~TemperatureCalibrationAccel();
/**
* @see TemperatureCalibrationBase::update()

7
src/modules/events/temperature_calibration/baro.cpp

@ -60,6 +60,13 @@ TemperatureCalibrationBaro::TemperatureCalibrationBaro(float min_temperature_ris @@ -60,6 +60,13 @@ TemperatureCalibrationBaro::TemperatureCalibrationBaro(float min_temperature_ris
}
}
TemperatureCalibrationBaro::~TemperatureCalibrationBaro()
{
for (unsigned i = 0; i < _num_sensor_instances; i++) {
orb_unsubscribe(_sensor_subs[i]);
}
}
void TemperatureCalibrationBaro::reset_calibration()
{
//nothing to do

2
src/modules/events/temperature_calibration/baro.h

@ -43,7 +43,7 @@ class TemperatureCalibrationBaro : public TemperatureCalibrationBase @@ -43,7 +43,7 @@ class TemperatureCalibrationBaro : public TemperatureCalibrationBase
{
public:
TemperatureCalibrationBaro(float min_temperature_rise);
virtual ~TemperatureCalibrationBaro() {}
virtual ~TemperatureCalibrationBaro();
/**
* @see TemperatureCalibrationBase::update()

Loading…
Cancel
Save