Skip to content

Commit 0542219

Browse files
committed
Review model.cpp
1 parent e566898 commit 0542219

File tree

2 files changed

+94
-84
lines changed

2 files changed

+94
-84
lines changed

src/components/i2c/hardware.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,7 @@ bool I2cHardware::AddMuxToBus(uint32_t address_register, const char *name) {
161161
} else {
162162
return false;
163163
}
164+
164165
_mux_address_register = address_register;
165166
_has_mux = true;
166167
// Put MUX in back into its default state cuz we don't know if we're about to

src/components/i2c/model.cpp

Lines changed: 93 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,99 @@ I2cModel::I2cModel() {
3131
_msg_i2c_device_event = wippersnapper_i2c_I2cDeviceEvent_init_default;
3232
}
3333

34+
/***********************************************************************/
35+
/*!
36+
@brief I2C destructor
37+
*/
38+
/***********************************************************************/
39+
I2cModel::~I2cModel() {
40+
// nothing to add here!
41+
}
42+
43+
/***************************************************************************/
44+
/*!
45+
@brief Returns the numeric event value mapped to a sensor event.
46+
@param sensor_type
47+
The SensorType.
48+
@param event
49+
The sensors_event_t event.
50+
@returns The value of the SensorType.
51+
*/
52+
/***************************************************************************/
53+
float GetValueFromSensorsEvent(wippersnapper_sensor_SensorType sensor_type,
54+
sensors_event_t *event) {
55+
float value = 0.0;
56+
switch (sensor_type) {
57+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_AMBIENT_TEMPERATURE:
58+
value = event->temperature;
59+
break;
60+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_AMBIENT_TEMPERATURE_FAHRENHEIT:
61+
value = event->temperature;
62+
break;
63+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_OBJECT_TEMPERATURE:
64+
value = event->temperature;
65+
break;
66+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_OBJECT_TEMPERATURE_FAHRENHEIT:
67+
value = event->temperature;
68+
break;
69+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_RAW:
70+
value = event->data[0];
71+
break;
72+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_RELATIVE_HUMIDITY:
73+
value = event->relative_humidity;
74+
break;
75+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_PRESSURE:
76+
value = event->pressure;
77+
break;
78+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_VOLTAGE:
79+
value = event->voltage;
80+
break;
81+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_CURRENT:
82+
value = event->current;
83+
break;
84+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_CO2:
85+
value = event->CO2;
86+
break;
87+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_ECO2:
88+
value = event->eCO2;
89+
break;
90+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_TVOC:
91+
value = event->tvoc;
92+
break;
93+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_VOC_INDEX:
94+
value = event->voc_index;
95+
break;
96+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_NOX_INDEX:
97+
value = event->nox_index;
98+
break;
99+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_PM10_STD:
100+
value = event->pm10_std;
101+
break;
102+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_PM25_STD:
103+
value = event->pm25_std;
104+
break;
105+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_PM100_STD:
106+
value = event->pm100_std;
107+
break;
108+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_GAS_RESISTANCE:
109+
value = event->gas_resistance;
110+
break;
111+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_ALTITUDE:
112+
value = event->altitude;
113+
break;
114+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_UNITLESS_PERCENT:
115+
value = event->unitless_percent;
116+
break;
117+
case wippersnapper_sensor_SensorType_SENSOR_TYPE_LIGHT:
118+
value = event->light;
119+
break;
120+
default:
121+
value = 0.0;
122+
break;
123+
}
124+
return value;
125+
}
126+
34127
/****************************************************************************/
35128
/*!
36129
@brief Decodes a I2cDeviceRemove message from an input stream.
@@ -170,90 +263,6 @@ void I2cModel::SetI2cDeviceEventDeviceDescripton(const char *bus_scl,
170263
_msg_i2c_device_event.i2c_device_description.i2c_mux_channel = mux_channel;
171264
}
172265

173-
/***************************************************************************/
174-
/*!
175-
@brief Returns the numeric event value mapped to a sensor event.
176-
@param sensor_type
177-
The SensorType.
178-
@param event
179-
The sensors_event_t event.
180-
@returns The value of the SensorType.
181-
*/
182-
/***************************************************************************/
183-
float GetValueFromSensorsEvent(wippersnapper_sensor_SensorType sensor_type,
184-
sensors_event_t *event) {
185-
float value = 0.0;
186-
switch (sensor_type) {
187-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_AMBIENT_TEMPERATURE:
188-
value = event->temperature;
189-
break;
190-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_AMBIENT_TEMPERATURE_FAHRENHEIT:
191-
value = event->temperature;
192-
break;
193-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_OBJECT_TEMPERATURE:
194-
value = event->temperature;
195-
break;
196-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_OBJECT_TEMPERATURE_FAHRENHEIT:
197-
value = event->temperature;
198-
break;
199-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_RAW:
200-
value = event->data[0];
201-
break;
202-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_RELATIVE_HUMIDITY:
203-
value = event->relative_humidity;
204-
break;
205-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_PRESSURE:
206-
value = event->pressure;
207-
break;
208-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_VOLTAGE:
209-
value = event->voltage;
210-
break;
211-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_CURRENT:
212-
value = event->current;
213-
break;
214-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_CO2:
215-
value = event->CO2;
216-
break;
217-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_ECO2:
218-
value = event->eCO2;
219-
break;
220-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_TVOC:
221-
value = event->tvoc;
222-
break;
223-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_VOC_INDEX:
224-
value = event->voc_index;
225-
break;
226-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_NOX_INDEX:
227-
value = event->nox_index;
228-
break;
229-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_PM10_STD:
230-
value = event->pm10_std;
231-
break;
232-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_PM25_STD:
233-
value = event->pm25_std;
234-
break;
235-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_PM100_STD:
236-
value = event->pm100_std;
237-
break;
238-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_GAS_RESISTANCE:
239-
value = event->gas_resistance;
240-
break;
241-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_ALTITUDE:
242-
value = event->altitude;
243-
break;
244-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_UNITLESS_PERCENT:
245-
value = event->unitless_percent;
246-
break;
247-
case wippersnapper_sensor_SensorType_SENSOR_TYPE_LIGHT:
248-
value = event->light;
249-
break;
250-
default:
251-
value = 0.0;
252-
break;
253-
}
254-
return value;
255-
}
256-
257266
/***************************************************************************/
258267
/*!
259268
@brief Adds a SensorEvent to the I2cDeviceEvent message.

0 commit comments

Comments
 (0)