From 0772fc5ff8af7b4ace2eabe7d90b46107fc4215d Mon Sep 17 00:00:00 2001 From: user2684 <you@example.com> Date: Wed, 12 Apr 2017 14:59:31 +0200 Subject: [PATCH] Add option to unregister a sensor #52 --- NodeManager.cpp | 6 ++++++ NodeManager.h | 2 ++ README.md | 6 ++++-- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/NodeManager.cpp b/NodeManager.cpp index 8ceee8d..e220ccf 100644 --- a/NodeManager.cpp +++ b/NodeManager.cpp @@ -1479,6 +1479,12 @@ int NodeManager::registerSensor(Sensor* sensor) { return sensor->getChildId(); } +// un-register a sensor to this manager +void NodeManager::unRegisterSensor(int sensor_index) { + // unlink the pointer to this sensor + _sensors[sensor_index] == 0; +} + // return a sensor given its index Sensor* NodeManager::get(int child_id) { // return a pointer to the sensor from the given child_id diff --git a/NodeManager.h b/NodeManager.h index 46d2fc6..4eb5b89 100644 --- a/NodeManager.h +++ b/NodeManager.h @@ -750,6 +750,8 @@ class NodeManager { int registerSensor(int sensor_type, int pin = -1, int child_id = -1); // register a custom sensor int registerSensor(Sensor* sensor); + // un-register a sensor + void unRegisterSensor(int sensor_index); // return a sensor by its index Sensor* get(int sensor_index); Sensor* getSensor(int sensor_index); diff --git a/README.md b/README.md index 9cdd590..2284eb1 100644 --- a/README.md +++ b/README.md @@ -154,6 +154,8 @@ Node Manager comes with a reasonable default configuration. If you want/need to void setSleepBetweenSend(int value); // register a built-in sensor int registerSensor(int sensor_type, int pin = -1, int child_id = -1); + // un-register a sensor + void unRegisterSensor(int sensor_index); // register a custom sensor int registerSensor(Sensor* sensor); // return a sensor by its index @@ -305,13 +307,13 @@ Each sensor class can expose additional methods. #### SensorThermistor ~~~c // resistance at 25 degrees C (default: 10000) - void setNominalResistor(int value); + void setNominalResistor(long value); // temperature for nominal resistance (default: 25) void setNominalTemperature(int value); // The beta coefficient of the thermistor (default: 3950) void setBCoefficient(int value); // the value of the resistor in series with the thermistor (default: 10000) - void setSeriesResistor(int value); + void setSeriesResistor(long value); // set a temperature offset void setOffset(float value); ~~~ -- GitLab