Skip to content

Commit aa8ef67

Browse files
committed
Fix get->GetEvent() bug!
1 parent 692f56f commit aa8ef67

File tree

2 files changed

+159
-38
lines changed

2 files changed

+159
-38
lines changed

src/components/i2c/drivers/drvBase.h

Lines changed: 155 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ class drvBase {
229229
otherwise.
230230
*/
231231
/*******************************************************************************/
232-
virtual bool GetEventCO2(sensors_event_t *co2Event) { return false; };
232+
virtual bool getEventCO2(sensors_event_t *co2Event) { return false; };
233233

234234
/*******************************************************************************/
235235
/*!
@@ -240,7 +240,7 @@ class drvBase {
240240
otherwise.
241241
*/
242242
/*******************************************************************************/
243-
virtual bool GetEventECO2(sensors_event_t *eco2Event) { return false; }
243+
virtual bool getEventECO2(sensors_event_t *eco2Event) { return false; }
244244

245245
/*******************************************************************************/
246246
/*!
@@ -251,7 +251,7 @@ class drvBase {
251251
otherwise.
252252
*/
253253
/*******************************************************************************/
254-
virtual bool GetEventTVOC(sensors_event_t *tvocEvent) { return false; }
254+
virtual bool getEventTVOC(sensors_event_t *tvocEvent) { return false; }
255255

256256
/*******************************************************************************/
257257
/*!
@@ -263,7 +263,7 @@ class drvBase {
263263
otherwise.
264264
*/
265265
/*******************************************************************************/
266-
virtual bool GetEventAmbientTemp(sensors_event_t *tempEvent) { return false; }
266+
virtual bool getEventAmbientTemp(sensors_event_t *tempEvent) { return false; }
267267

268268
/*******************************************************************************/
269269
/*!
@@ -275,7 +275,7 @@ class drvBase {
275275
otherwise.
276276
*/
277277
/*******************************************************************************/
278-
virtual bool GetEventRelativeHumidity(sensors_event_t *humidEvent) {
278+
virtual bool getEventRelativeHumidity(sensors_event_t *humidEvent) {
279279
return false;
280280
}
281281

@@ -289,7 +289,7 @@ class drvBase {
289289
otherwise.
290290
*/
291291
/*******************************************************************************/
292-
virtual bool GetEventPressure(sensors_event_t *pressureEvent) {
292+
virtual bool getEventPressure(sensors_event_t *pressureEvent) {
293293
return false;
294294
}
295295

@@ -303,7 +303,7 @@ class drvBase {
303303
otherwise.
304304
*/
305305
/*******************************************************************************/
306-
virtual bool GetEventAltitude(sensors_event_t *altitudeEvent) {
306+
virtual bool getEventAltitude(sensors_event_t *altitudeEvent) {
307307
return false;
308308
}
309309

@@ -317,7 +317,7 @@ class drvBase {
317317
otherwise.
318318
*/
319319
/*******************************************************************************/
320-
virtual bool GetEventObjectTemp(sensors_event_t *objectTempEvent) {
320+
virtual bool getEventObjectTemp(sensors_event_t *objectTempEvent) {
321321
return false;
322322
}
323323

@@ -333,7 +333,7 @@ class drvBase {
333333
otherwise.
334334
*/
335335
/*******************************************************************************/
336-
virtual bool GetEventLight(sensors_event_t *lightEvent) { return false; }
336+
virtual bool getEventLight(sensors_event_t *lightEvent) { return false; }
337337

338338
/*******************************************************************************/
339339
/*!
@@ -345,7 +345,19 @@ class drvBase {
345345
otherwise.
346346
*/
347347
/*******************************************************************************/
348-
virtual bool GetEventPM10_STD(sensors_event_t *pm10StdEvent) { return false; }
348+
virtual bool getEventPM10_STD(sensors_event_t *pm10StdEvent) { return false; }
349+
350+
/*******************************************************************************/
351+
/*!
352+
@brief Base implementation - Reads a object pm10 env. sensor and
353+
converts the reading into the expected SI unit.
354+
@param pm10EnvEvent
355+
pm10 env. sensor reading, in ppm.
356+
@returns True if the sensor event was obtained successfully, False
357+
otherwise.
358+
*/
359+
/*******************************************************************************/
360+
virtual bool getEventPM10_Env(sensors_event_t *pm10EnvEvent) { return false; }
349361

350362
/*******************************************************************************/
351363
/*!
@@ -357,7 +369,19 @@ class drvBase {
357369
otherwise.
358370
*/
359371
/*******************************************************************************/
360-
virtual bool GetEventPM25_STD(sensors_event_t *pm25StdEvent) { return false; }
372+
virtual bool getEventPM25_STD(sensors_event_t *pm25StdEvent) { return false; }
373+
374+
/*******************************************************************************/
375+
/*!
376+
@brief Base implementation - Reads a object pm25 env. sensor and
377+
converts the reading into the expected SI unit.
378+
@param pm25EnvEvent
379+
pm25 env. sensor reading, in ppm.
380+
@returns True if the sensor event was obtained successfully, False
381+
otherwise.
382+
*/
383+
/*******************************************************************************/
384+
virtual bool getEventPM25_Env(sensors_event_t *pm25EnvEvent) { return false; }
361385

362386
/*******************************************************************************/
363387
/*!
@@ -369,7 +393,21 @@ class drvBase {
369393
otherwise.
370394
*/
371395
/*******************************************************************************/
372-
virtual bool GetEventPM100_STD(sensors_event_t *pm100StdEvent) {
396+
virtual bool getEventPM100_STD(sensors_event_t *pm100StdEvent) {
397+
return false;
398+
}
399+
400+
/*******************************************************************************/
401+
/*!
402+
@brief Base implementation - Reads a object pm100 env. sensor and
403+
converts the reading into the expected SI unit.
404+
@param pm100EnvEvent
405+
pm100 env. sensor reading, in ppm.
406+
@returns True if the sensor event was obtained successfully, False
407+
otherwise.
408+
*/
409+
/*******************************************************************************/
410+
virtual bool getEventPM100_Env(sensors_event_t *pm100EnvEvent) {
373411
return false;
374412
}
375413

@@ -383,7 +421,7 @@ class drvBase {
383421
otherwise.
384422
*/
385423
/*******************************************************************************/
386-
virtual bool GetEventUnitlessPercent(sensors_event_t *unitlessPercentEvent) {
424+
virtual bool getEventUnitlessPercent(sensors_event_t *unitlessPercentEvent) {
387425
return false;
388426
}
389427

@@ -397,7 +435,7 @@ class drvBase {
397435
otherwise.
398436
*/
399437
/*******************************************************************************/
400-
virtual bool GetEventVoltage(sensors_event_t *voltageEvent) { return false; }
438+
virtual bool getEventVoltage(sensors_event_t *voltageEvent) { return false; }
401439

402440
/*******************************************************************************/
403441
/*!
@@ -409,7 +447,7 @@ class drvBase {
409447
otherwise.
410448
*/
411449
/*******************************************************************************/
412-
virtual bool GetEventCurrent(sensors_event_t *currentEvent) { return false; }
450+
virtual bool getEventCurrent(sensors_event_t *currentEvent) { return false; }
413451

414452
/*******************************************************************************/
415453
/*!
@@ -420,22 +458,22 @@ class drvBase {
420458
otherwise.
421459
*/
422460
/*******************************************************************************/
423-
virtual bool GetEventRaw(sensors_event_t *rawEvent) { return false; }
461+
virtual bool getEventRaw(sensors_event_t *rawEvent) { return false; }
424462

425463
/*******************************************************************************/
426464
/*!
427465
@brief Helper function to obtain a sensor's ambient temperature value
428-
in °F. Requires `GetEventAmbientTemp()` to be fully
466+
in °F. Requires `getEventAmbientTemp()` to be fully
429467
implemented by a driver.
430468
@param AmbientTempFEvent
431469
The ambient temperature value, in °F.
432470
@returns True if the sensor value was obtained successfully, False
433471
otherwise.
434472
*/
435473
/*******************************************************************************/
436-
virtual bool GetEventAmbientTempF(sensors_event_t *AmbientTempFEvent) {
474+
virtual bool getEventAmbientTempF(sensors_event_t *AmbientTempFEvent) {
437475
// obtain ambient temp. in °C
438-
if (!GetEventAmbientTemp(AmbientTempFEvent))
476+
if (!getEventAmbientTemp(AmbientTempFEvent))
439477
return false;
440478
// convert event from °C to °F
441479
AmbientTempFEvent->temperature =
@@ -446,17 +484,17 @@ class drvBase {
446484
/*******************************************************************************/
447485
/*!
448486
@brief Helper function to obtain a sensor's object temperature value
449-
in °F. Requires `GetEventObjectTemp()` to be fully
487+
in °F. Requires `getEventObjectTemp()` to be fully
450488
implemented by a driver.
451489
@param objectTempFEvent
452490
The object temperature value, in °F.
453491
@returns True if the sensor value was obtained successfully, False
454492
otherwise.
455493
*/
456494
/*******************************************************************************/
457-
virtual bool GetEventObjectTempF(sensors_event_t *objectTempFEvent) {
495+
virtual bool getEventObjectTempF(sensors_event_t *objectTempFEvent) {
458496
// obtain ambient temp. in °C
459-
if (!GetEventObjectTemp(objectTempFEvent))
497+
if (!getEventObjectTemp(objectTempFEvent))
460498
return false;
461499
// convert event from °C to °F
462500
objectTempFEvent->temperature =
@@ -477,7 +515,7 @@ class drvBase {
477515
otherwise.
478516
*/
479517
/*******************************************************************************/
480-
virtual bool GetEventGasResistance(sensors_event_t *gasEvent) {
518+
virtual bool getEventGasResistance(sensors_event_t *gasEvent) {
481519
return false;
482520
}
483521

@@ -491,7 +529,7 @@ class drvBase {
491529
otherwise.
492530
*/
493531
/*******************************************************************************/
494-
virtual bool GetEventNOxIndex(sensors_event_t *gasEvent) { return false; }
532+
virtual bool getEventNOxIndex(sensors_event_t *gasEvent) { return false; }
495533

496534
/*******************************************************************************/
497535
/*!
@@ -503,7 +541,7 @@ class drvBase {
503541
otherwise.
504542
*/
505543
/*******************************************************************************/
506-
virtual bool GetEventVOCIndex(sensors_event_t *gasEvent) { return false; }
544+
virtual bool getEventVOCIndex(sensors_event_t *gasEvent) { return false; }
507545

508546
/*******************************************************************************/
509547
/*!
@@ -515,7 +553,7 @@ class drvBase {
515553
otherwise.
516554
*/
517555
/*******************************************************************************/
518-
virtual bool GetEventProximity(sensors_event_t *proximityEvent) {
556+
virtual bool getEventProximity(sensors_event_t *proximityEvent) {
519557
return false;
520558
}
521559

@@ -533,27 +571,110 @@ class drvBase {
533571

534572
// Maps SensorType to function calls
535573
std::map<wippersnapper_sensor_SensorType, fnGetEvent> SensorEventHandlers = {
536-
{wippersnapper_sensor_SensorType_SENSOR_TYPE_AMBIENT_TEMPERATURE,
574+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_UNSPECIFIED,
537575
[this](sensors_event_t *event) -> bool {
538-
return this->GetEventAmbientTemp(event);
576+
return this->getEventRaw(event);
539577
}},
540-
{wippersnapper_sensor_SensorType_SENSOR_TYPE_AMBIENT_TEMPERATURE_FAHRENHEIT,
578+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_LIGHT,
541579
[this](sensors_event_t *event) -> bool {
542-
return this->GetEventAmbientTempF(event);
580+
return this->getEventLight(event);
543581
}},
544582
{wippersnapper_sensor_SensorType_SENSOR_TYPE_PRESSURE,
545583
[this](sensors_event_t *event) -> bool {
546-
return this->GetEventPressure(event);
584+
return this->getEventPressure(event);
585+
}},
586+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_PROXIMITY,
587+
[this](sensors_event_t *event) -> bool {
588+
return this->getEventProximity(event);
547589
}},
548590
{wippersnapper_sensor_SensorType_SENSOR_TYPE_RELATIVE_HUMIDITY,
549591
[this](sensors_event_t *event) -> bool {
550-
return this->GetEventRelativeHumidity(event);
592+
return this->getEventRelativeHumidity(event);
593+
}},
594+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_AMBIENT_TEMPERATURE,
595+
[this](sensors_event_t *event) -> bool {
596+
return this->getEventAmbientTemp(event);
597+
}},
598+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_OBJECT_TEMPERATURE,
599+
[this](sensors_event_t *event) -> bool {
600+
return this->getEventObjectTemp(event);
601+
}},
602+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_VOLTAGE,
603+
[this](sensors_event_t *event) -> bool {
604+
return this->getEventVoltage(event);
605+
}},
606+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_CURRENT,
607+
[this](sensors_event_t *event) -> bool {
608+
return this->getEventCurrent(event);
609+
}},
610+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_RAW,
611+
[this](sensors_event_t *event) -> bool {
612+
return this->getEventRaw(event);
613+
}},
614+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_PM10_STD,
615+
[this](sensors_event_t *event) -> bool {
616+
return this->getEventPM10_STD(event);
617+
}},
618+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_PM25_STD,
619+
[this](sensors_event_t *event) -> bool {
620+
return this->getEventPM25_STD(event);
621+
}},
622+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_PM100_STD,
623+
[this](sensors_event_t *event) -> bool {
624+
return this->getEventPM100_STD(event);
625+
}},
626+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_PM10_ENV,
627+
[this](sensors_event_t *event) -> bool {
628+
return this->getEventPM10_Env(event);
629+
}},
630+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_PM25_ENV,
631+
[this](sensors_event_t *event) -> bool {
632+
return this->getEventPM25_Env(event);
633+
}},
634+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_PM100_ENV,
635+
[this](sensors_event_t *event) -> bool {
636+
return this->getEventPM100_Env(event);
637+
}},
638+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_CO2,
639+
[this](sensors_event_t *event) -> bool {
640+
return this->getEventCO2(event);
641+
}},
642+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_GAS_RESISTANCE,
643+
[this](sensors_event_t *event) -> bool {
644+
return this->getEventGasResistance(event);
551645
}},
552646
{wippersnapper_sensor_SensorType_SENSOR_TYPE_ALTITUDE,
553647
[this](sensors_event_t *event) -> bool {
554-
return this->GetEventAltitude(event);
648+
return this->getEventAltitude(event);
649+
}},
650+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_ECO2,
651+
[this](sensors_event_t *event) -> bool {
652+
return this->getEventECO2(event);
555653
}},
556-
};
654+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_UNITLESS_PERCENT,
655+
[this](sensors_event_t *event) -> bool {
656+
return this->getEventUnitlessPercent(event);
657+
}},
658+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_AMBIENT_TEMPERATURE_FAHRENHEIT,
659+
[this](sensors_event_t *event) -> bool {
660+
return this->getEventAmbientTempF(event);
661+
}},
662+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_OBJECT_TEMPERATURE_FAHRENHEIT,
663+
[this](sensors_event_t *event) -> bool {
664+
return this->getEventObjectTempF(event);
665+
}},
666+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_VOC_INDEX,
667+
[this](sensors_event_t *event) -> bool {
668+
return this->getEventVOCIndex(event);
669+
}},
670+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_NOX_INDEX,
671+
[this](sensors_event_t *event) -> bool {
672+
return this->getEventNOxIndex(event);
673+
}},
674+
{wippersnapper_sensor_SensorType_SENSOR_TYPE_TVOC,
675+
[this](sensors_event_t *event) -> bool {
676+
return this->getEventTVOC(event);
677+
}}};
557678

558679
wippersnapper_sensor_SensorType
559680
_sensors[15]; ///< Sensors attached to the device.

0 commit comments

Comments
 (0)