JXCT Soil Sensor 7-in-1
v3.4.9 (June 2025)
Professional IoT soil monitoring system with ESP32, Modbus RTU, MQTT, and advanced compensation algorithms
Загрузка...
Поиск...
Не найдено
basic_sensor_adapter.h
См. документацию.
1
#pragma once
2
3
#include "
ISensor.h
"
4
#include "
modbus_sensor.h
"
// forward for SensorData
5
6
// BasicSensorAdapter — лёгкий каркас абстракции без использования std::function (экономия flash)
7
class
BasicSensorAdapter
:
public
ISensor
{
8
public
:
9
using
InitFn
= void (*)();
// функция инициализации
10
using
AcquireFn
= void (*)();
// функция получения данных
11
12
constexpr
BasicSensorAdapter
(
const
char
* n,
13
InitFn
initFn,
14
AcquireFn
acquireFn,
15
SensorData
* shared)
16
:
_name
(n),
_init
(initFn),
_acquire
(acquireFn),
_data
(shared) {}
17
18
bool
begin
()
override
{
19
if
(
_init
)
_init
();
20
return
true
;
21
}
22
23
bool
read
(
SensorData
& out)
override
{
24
if
(
_acquire
)
_acquire
();
25
if
(
_data
) {
26
out = *
_data
;
27
return
_data
->valid;
28
}
29
return
false
;
30
}
31
32
const
char
*
name
()
const override
{
return
_name
; }
33
34
private
:
35
const
char
*
_name
;
36
InitFn
_init
;
37
AcquireFn
_acquire
;
38
SensorData
*
_data
;
39
};
ISensor.h
BasicSensorAdapter::name
const char * name() const override
Определения
basic_sensor_adapter.h:32
BasicSensorAdapter::_init
InitFn _init
Определения
basic_sensor_adapter.h:36
BasicSensorAdapter::AcquireFn
void(*)() AcquireFn
Определения
basic_sensor_adapter.h:10
BasicSensorAdapter::BasicSensorAdapter
constexpr BasicSensorAdapter(const char *n, InitFn initFn, AcquireFn acquireFn, SensorData *shared)
Определения
basic_sensor_adapter.h:12
BasicSensorAdapter::begin
bool begin() override
Определения
basic_sensor_adapter.h:18
BasicSensorAdapter::read
bool read(SensorData &out) override
Определения
basic_sensor_adapter.h:23
BasicSensorAdapter::_data
SensorData * _data
Определения
basic_sensor_adapter.h:38
BasicSensorAdapter::InitFn
void(*)() InitFn
Определения
basic_sensor_adapter.h:9
BasicSensorAdapter::_acquire
AcquireFn _acquire
Определения
basic_sensor_adapter.h:37
BasicSensorAdapter::_name
const char * _name
Определения
basic_sensor_adapter.h:35
ISensor
Определения
ISensor.h:9
modbus_sensor.h
SensorData
Определения
modbus_sensor.h:35
include
basic_sensor_adapter.h
Документация по JXCT Soil Sensor 7-in-1. Последние изменения: Ср 25 Июн 2025 01:11:47. Создано системой
1.13.2