HardFOC Core
API reference
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
NtcTemperatureHandler Class Reference

NTC temperature sensor handler implementing BaseTemperature interface. More...

#include <NtcTemperatureHandler.h>

Inheritance diagram for NtcTemperatureHandler:

Public Member Functions

 NtcTemperatureHandler (NtcType ntc_type, BaseAdc *adc_interface, const char *sensor_name=nullptr) noexcept
 Constructor with NTC type and ADC interface.
 
 NtcTemperatureHandler (BaseAdc *adc_interface, const ntc_temp_handler_config_t &config) noexcept
 Constructor with ADC interface and configuration.
 
 NtcTemperatureHandler (const NtcTemperatureHandler &)=delete
 Copy constructor is deleted.
 
NtcTemperatureHandler & operator= (const NtcTemperatureHandler &)=delete
 Assignment operator is deleted.
 
 NtcTemperatureHandler (NtcTemperatureHandler &&)=delete
 Non-movable (holds mutex, unique_ptrs, raw pointers, and timer resources).
 
NtcTemperatureHandler & operator= (NtcTemperatureHandler &&)=delete
 Non-movable.
 
virtual ~NtcTemperatureHandler () noexcept
 Virtual destructor - cleans up timer and thermistor resources.
 
bool Initialize () noexcept override
 
bool Deinitialize () noexcept override
 
hf_temp_err_t ReadTemperatureCelsiusImpl (float *temperature_celsius) noexcept override
 
hf_temp_err_t GetSensorInfo (hf_temp_sensor_info_t *info) const noexcept override
 
hf_u32_t GetCapabilities () const noexcept override
 
hf_temp_err_t SetRange (float min_celsius, float max_celsius) noexcept override
 
hf_temp_err_t GetRange (float *min_celsius, float *max_celsius) const noexcept override
 
hf_temp_err_t GetResolution (float *resolution_celsius) const noexcept override
 
hf_temp_err_t SetThresholds (float low_threshold_celsius, float high_threshold_celsius) noexcept override
 
hf_temp_err_t GetThresholds (float *low_threshold_celsius, float *high_threshold_celsius) const noexcept override
 
hf_temp_err_t EnableThresholdMonitoring (hf_temp_threshold_callback_t callback, void *user_data) noexcept override
 
hf_temp_err_t DisableThresholdMonitoring () noexcept override
 
hf_temp_err_t StartContinuousMonitoring (hf_u32_t sample_rate_hz, hf_temp_reading_callback_t callback, void *user_data) noexcept override
 
hf_temp_err_t StopContinuousMonitoring () noexcept override
 
bool IsMonitoringActive () const noexcept override
 
hf_temp_err_t SetCalibrationOffset (float offset_celsius) noexcept override
 
hf_temp_err_t GetCalibrationOffset (float *offset_celsius) const noexcept override
 
hf_temp_err_t ResetCalibration () noexcept override
 
hf_temp_err_t EnterSleepMode () noexcept override
 
hf_temp_err_t ExitSleepMode () noexcept override
 
bool IsSleeping () const noexcept override
 
hf_temp_err_t SelfTest () noexcept override
 
hf_temp_err_t CheckHealth () noexcept override
 
hf_temp_err_t GetStatistics (hf_temp_statistics_t &statistics) noexcept override
 
hf_temp_err_t GetDiagnostics (hf_temp_diagnostics_t &diagnostics) noexcept override
 
hf_temp_err_t ResetStatistics () noexcept override
 
hf_temp_err_t ResetDiagnostics () noexcept override
 
void * GetNtcThermistor () noexcept
 Get NTC thermistor instance.
 
const void * GetNtcThermistor () const noexcept
 Get NTC thermistor instance (const)
 
NtcError GetNtcReading (ntc_reading_t *reading) noexcept
 Get NTC reading.
 
NtcError GetNtcConfiguration (ntc_config_t *config) const noexcept
 Get NTC configuration.
 
NtcError SetNtcConfiguration (const ntc_config_t &config) noexcept
 Set NTC configuration.
 
NtcError GetResistance (float *resistance_ohms) noexcept
 Get thermistor resistance.
 
NtcError GetVoltage (float *voltage_volts) noexcept
 Get voltage across thermistor.
 
NtcError GetRawAdcValue (uint32_t *adc_value) noexcept
 Get raw ADC value.
 
hf_temp_err_t Calibrate (float reference_temperature_celsius) noexcept override
 Calibrate the thermistor.
 
NtcError SetConversionMethod (NtcConversionMethod method) noexcept
 Set conversion method.
 
NtcError SetVoltageDivider (float series_resistance) noexcept
 Set voltage divider parameters.
 
NtcError SetReferenceVoltage (float reference_voltage) noexcept
 Set reference voltage.
 
NtcError SetBetaValue (float beta_value) noexcept
 Set beta value.
 
NtcError SetAdcChannel (uint8_t adc_channel) noexcept
 Set ADC channel.
 
NtcError SetSamplingParameters (uint32_t sample_count, uint32_t sample_delay_ms) noexcept
 Set sampling parameters.
 
NtcError SetFiltering (bool enable, float alpha=0.1f) noexcept
 Enable/disable filtering.
 
const char * GetSensorName () const noexcept
 Get sensor name.
 
const char * GetSensorDescription () const noexcept
 Get sensor description.
 
NtcThermistorConcrete * GetDriver () noexcept
 Get the underlying NtcThermistor driver for advanced operations.
 
const NtcThermistorConcrete * GetDriver () const noexcept
 

Private Member Functions

void SetLastError (hf_temp_err_t error) noexcept
 Set last error in diagnostics.
 
void UpdateStatistics (bool operation_successful, hf_u32_t operation_time_us) noexcept
 Update operation statistics.
 
void UpdateDiagnostics (hf_temp_err_t error) noexcept
 Update diagnostics with error code.
 
bool InitializeNtcThermistor () noexcept
 Initialize NTC thermistor with current configuration.
 
hf_temp_err_t ConvertNtcError (NtcError ntc_error) const noexcept
 Convert NTC error to BaseTemperature error.
 
void CheckThresholds (float temperature_celsius) noexcept
 Check thresholds and trigger callback if needed.
 
void UpdateBaseDiagnostics (hf_temp_err_t error) noexcept
 Update BaseTemperature diagnostics.
 
hf_temp_err_t ValidateConfiguration (const ntc_temp_handler_config_t &config) const noexcept
 Validate configuration.
 

Static Private Member Functions

static void ContinuousMonitoringCallback (uint32_t arg)
 Static callback for continuous monitoring timer.
 
static hf_u32_t RegisterMonitoringContext (NtcTemperatureHandler *handler) noexcept
 Register/unregister callback context IDs for timer callbacks.
 
static void UnregisterMonitoringContext (hf_u32_t context_id) noexcept
 
static NtcTemperatureHandler * ResolveMonitoringContext (hf_u32_t context_id) noexcept
 
static hf_u64_t GetCurrentTimeUs () noexcept
 Get current timestamp in microseconds.
 

Private Attributes

RtosMutex mutex_
 Thread safety mutex (hardware-agnostic)
 
std::unique_ptr< NtcAdcAdapter > ntc_adc_adapter_
 ADC adapter (BaseAdc→ntc::AdcInterface)
 
std::unique_ptr< NtcThermistorConcrete > ntc_thermistor_
 NTC thermistor driver instance.
 
BaseAdc * adc_interface_
 ADC interface pointer.
 
ntc_temp_handler_config_t config_
 Handler configuration.
 
hf_temp_state_t current_state_
 Current state.
 
hf_temp_config_t base_config_
 Base configuration.
 
float low_threshold_celsius_
 Low temperature threshold.
 
float high_threshold_celsius_
 High temperature threshold.
 
hf_temp_threshold_callback_t threshold_callback_
 Threshold callback.
 
void * threshold_user_data_
 Threshold callback user data.
 
hf_u32_t sample_rate_hz_
 Sample rate for continuous monitoring.
 
hf_temp_reading_callback_t continuous_callback_
 Continuous monitoring callback.
 
void * continuous_user_data_
 Continuous monitoring callback user data.
 
PeriodicTimer monitoring_timer_
 Hardware-agnostic periodic timer.
 
hf_u32_t monitoring_context_id_
 Timer callback context ID (0 = unassigned)
 
float calibration_offset_
 Current calibration offset.
 
hf_temp_statistics_t statistics_
 BaseTemperature statistics.
 
hf_temp_diagnostics_t diagnostics_
 BaseTemperature diagnostics.
 
bool initialized_
 Initialization status.
 
bool threshold_monitoring_enabled_
 Threshold monitoring status.
 
bool monitoring_active_
 Continuous monitoring status.
 

Static Private Attributes

static constexpr hf_u32_t kMonitoringContextSlots = 8
 
static RtosMutex callback_registry_mutex_ {}
 
static std::array< NtcTemperatureHandler *, kMonitoringContextSlots > callback_registry_ = {}
 

Detailed Description

NTC temperature sensor handler implementing BaseTemperature interface.

This class provides a complete implementation of the BaseTemperature interface for NTC thermistor temperature sensors. It uses a BaseAdc pointer for voltage measurements and wraps the NtcThermistor library to provide comprehensive temperature sensing capabilities.

Key features:

Note
This class is thread-safe and can be used in multi-threaded applications
The handler requires a BaseAdc interface for voltage measurements
Supports all BaseTemperature features including threshold and continuous monitoring

Constructor & Destructor Documentation

◆ NtcTemperatureHandler() [1/4]

NtcTemperatureHandler::NtcTemperatureHandler ( NtcType  ntc_type,
BaseAdc *  adc_interface,
const char *  sensor_name = nullptr 
)
noexcept

Constructor with NTC type and ADC interface.

Parameters
ntc_typeNTC thermistor type
adc_interfacePointer to BaseAdc interface
sensor_nameOptional sensor name

◆ NtcTemperatureHandler() [2/4]

NtcTemperatureHandler::NtcTemperatureHandler ( BaseAdc *  adc_interface,
const ntc_temp_handler_config_t &  config 
)
noexcept

Constructor with ADC interface and configuration.

Parameters
adc_interfacePointer to BaseAdc interface
configNTC temperature handler configuration

◆ NtcTemperatureHandler() [3/4]

NtcTemperatureHandler::NtcTemperatureHandler ( const NtcTemperatureHandler &  )
delete

Copy constructor is deleted.

◆ NtcTemperatureHandler() [4/4]

NtcTemperatureHandler::NtcTemperatureHandler ( NtcTemperatureHandler &&  )
delete

Non-movable (holds mutex, unique_ptrs, raw pointers, and timer resources).

◆ ~NtcTemperatureHandler()

NtcTemperatureHandler::~NtcTemperatureHandler ( )
virtualnoexcept

Virtual destructor - cleans up timer and thermistor resources.

Member Function Documentation

◆ Calibrate()

hf_temp_err_t NtcTemperatureHandler::Calibrate ( float  reference_temperature_celsius)
overridenoexcept

Calibrate the thermistor.

Parameters
reference_temperature_celsiusKnown reference temperature
Returns
Error code

◆ CheckHealth()

hf_temp_err_t NtcTemperatureHandler::CheckHealth ( )
overridenoexcept

◆ CheckThresholds()

void NtcTemperatureHandler::CheckThresholds ( float  temperature_celsius)
privatenoexcept

Check thresholds and trigger callback if needed.

Parameters
temperature_celsiusCurrent temperature reading

◆ ContinuousMonitoringCallback()

void NtcTemperatureHandler::ContinuousMonitoringCallback ( uint32_t  arg)
staticprivate

Static callback for continuous monitoring timer.

Parameters
argTimer callback argument (registered context ID)

◆ ConvertNtcError()

hf_temp_err_t NtcTemperatureHandler::ConvertNtcError ( NtcError  ntc_error) const
privatenoexcept

Convert NTC error to BaseTemperature error.

Parameters
ntc_errorNTC error code
Returns
BaseTemperature error code

◆ Deinitialize()

bool NtcTemperatureHandler::Deinitialize ( )
overridenoexcept

◆ DisableThresholdMonitoring()

hf_temp_err_t NtcTemperatureHandler::DisableThresholdMonitoring ( )
overridenoexcept

◆ EnableThresholdMonitoring()

hf_temp_err_t NtcTemperatureHandler::EnableThresholdMonitoring ( hf_temp_threshold_callback_t  callback,
void *  user_data 
)
overridenoexcept

◆ EnterSleepMode()

hf_temp_err_t NtcTemperatureHandler::EnterSleepMode ( )
overridenoexcept

◆ ExitSleepMode()

hf_temp_err_t NtcTemperatureHandler::ExitSleepMode ( )
overridenoexcept

◆ GetCalibrationOffset()

hf_temp_err_t NtcTemperatureHandler::GetCalibrationOffset ( float *  offset_celsius) const
overridenoexcept

◆ GetCapabilities()

hf_u32_t NtcTemperatureHandler::GetCapabilities ( ) const
overridenoexcept

◆ GetCurrentTimeUs()

static hf_u64_t NtcTemperatureHandler::GetCurrentTimeUs ( )
staticprivatenoexcept

Get current timestamp in microseconds.

Returns
Current timestamp

◆ GetDiagnostics()

hf_temp_err_t NtcTemperatureHandler::GetDiagnostics ( hf_temp_diagnostics_t &  diagnostics)
overridenoexcept

◆ GetDriver() [1/2]

const NtcThermistorConcrete * NtcTemperatureHandler::GetDriver ( ) const
noexcept

◆ GetDriver() [2/2]

NtcThermistorConcrete * NtcTemperatureHandler::GetDriver ( )
noexcept

Get the underlying NtcThermistor driver for advanced operations.

Returns
Pointer to the NtcThermistor driver, or nullptr if not initialized.

◆ GetNtcConfiguration()

NtcError NtcTemperatureHandler::GetNtcConfiguration ( ntc_config_t *  config) const
noexcept

Get NTC configuration.

Parameters
configPointer to store configuration
Returns
Error code

◆ GetNtcReading()

NtcError NtcTemperatureHandler::GetNtcReading ( ntc_reading_t *  reading)
noexcept

Get NTC reading.

Parameters
readingPointer to store NTC reading
Returns
NTC error code

◆ GetNtcThermistor() [1/2]

const void * NtcTemperatureHandler::GetNtcThermistor ( ) const
noexcept

Get NTC thermistor instance (const)

Returns
Pointer to const NtcThermistor instance
Note
Returns raw pointer for observation only; handler retains ownership.

◆ GetNtcThermistor() [2/2]

void * NtcTemperatureHandler::GetNtcThermistor ( )
noexcept

Get NTC thermistor instance.

Returns
Pointer to NtcThermistor instance (opaque)
Note
Returns raw pointer for observation only; handler retains ownership.

◆ GetRange()

hf_temp_err_t NtcTemperatureHandler::GetRange ( float *  min_celsius,
float *  max_celsius 
) const
overridenoexcept

◆ GetRawAdcValue()

NtcError NtcTemperatureHandler::GetRawAdcValue ( uint32_t *  adc_value)
noexcept

Get raw ADC value.

Parameters
adc_valuePointer to store ADC value
Returns
Error code

◆ GetResistance()

NtcError NtcTemperatureHandler::GetResistance ( float *  resistance_ohms)
noexcept

Get thermistor resistance.

Parameters
resistance_ohmsPointer to store resistance
Returns
Error code

◆ GetResolution()

hf_temp_err_t NtcTemperatureHandler::GetResolution ( float *  resolution_celsius) const
overridenoexcept

◆ GetSensorDescription()

const char * NtcTemperatureHandler::GetSensorDescription ( ) const
noexcept

Get sensor description.

Returns
Sensor description string

◆ GetSensorInfo()

hf_temp_err_t NtcTemperatureHandler::GetSensorInfo ( hf_temp_sensor_info_t *  info) const
overridenoexcept

◆ GetSensorName()

const char * NtcTemperatureHandler::GetSensorName ( ) const
noexcept

Get sensor name.

Returns
Sensor name string

◆ GetStatistics()

hf_temp_err_t NtcTemperatureHandler::GetStatistics ( hf_temp_statistics_t &  statistics)
overridenoexcept

◆ GetThresholds()

hf_temp_err_t NtcTemperatureHandler::GetThresholds ( float *  low_threshold_celsius,
float *  high_threshold_celsius 
) const
overridenoexcept

◆ GetVoltage()

NtcError NtcTemperatureHandler::GetVoltage ( float *  voltage_volts)
noexcept

Get voltage across thermistor.

Parameters
voltage_voltsPointer to store voltage
Returns
Error code

◆ Initialize()

bool NtcTemperatureHandler::Initialize ( )
overridenoexcept

◆ InitializeNtcThermistor()

bool NtcTemperatureHandler::InitializeNtcThermistor ( )
privatenoexcept

Initialize NTC thermistor with current configuration.

Returns
true if successful, false otherwise

◆ IsMonitoringActive()

bool NtcTemperatureHandler::IsMonitoringActive ( ) const
overridenoexcept

◆ IsSleeping()

bool NtcTemperatureHandler::IsSleeping ( ) const
overridenoexcept

◆ operator=() [1/2]

NtcTemperatureHandler & NtcTemperatureHandler::operator= ( const NtcTemperatureHandler &  )
delete

Assignment operator is deleted.

◆ operator=() [2/2]

NtcTemperatureHandler & NtcTemperatureHandler::operator= ( NtcTemperatureHandler &&  )
delete

Non-movable.

◆ ReadTemperatureCelsiusImpl()

hf_temp_err_t NtcTemperatureHandler::ReadTemperatureCelsiusImpl ( float *  temperature_celsius)
overridenoexcept

◆ RegisterMonitoringContext()

hf_u32_t NtcTemperatureHandler::RegisterMonitoringContext ( NtcTemperatureHandler *  handler)
staticprivatenoexcept

Register/unregister callback context IDs for timer callbacks.

◆ ResetCalibration()

hf_temp_err_t NtcTemperatureHandler::ResetCalibration ( )
overridenoexcept

◆ ResetDiagnostics()

hf_temp_err_t NtcTemperatureHandler::ResetDiagnostics ( )
overridenoexcept

◆ ResetStatistics()

hf_temp_err_t NtcTemperatureHandler::ResetStatistics ( )
overridenoexcept

◆ ResolveMonitoringContext()

NtcTemperatureHandler * NtcTemperatureHandler::ResolveMonitoringContext ( hf_u32_t  context_id)
staticprivatenoexcept

◆ SelfTest()

hf_temp_err_t NtcTemperatureHandler::SelfTest ( )
overridenoexcept

◆ SetAdcChannel()

NtcError NtcTemperatureHandler::SetAdcChannel ( uint8_t  adc_channel)
noexcept

Set ADC channel.

Parameters
adc_channelADC channel number
Returns
Error code

◆ SetBetaValue()

NtcError NtcTemperatureHandler::SetBetaValue ( float  beta_value)
noexcept

Set beta value.

Parameters
beta_valueBeta value (K)
Returns
Error code

◆ SetCalibrationOffset()

hf_temp_err_t NtcTemperatureHandler::SetCalibrationOffset ( float  offset_celsius)
overridenoexcept

◆ SetConversionMethod()

NtcError NtcTemperatureHandler::SetConversionMethod ( NtcConversionMethod  method)
noexcept

Set conversion method.

Parameters
methodConversion method
Returns
Error code

◆ SetFiltering()

NtcError NtcTemperatureHandler::SetFiltering ( bool  enable,
float  alpha = 0.1f 
)
noexcept

Enable/disable filtering.

Parameters
enableEnable filtering
alphaFilter alpha value (0.0-1.0)
Returns
Error code

◆ SetLastError()

void NtcTemperatureHandler::SetLastError ( hf_temp_err_t  error)
privatenoexcept

Set last error in diagnostics.

Parameters
errorError code to record

◆ SetNtcConfiguration()

NtcError NtcTemperatureHandler::SetNtcConfiguration ( const ntc_config_t &  config)
noexcept

Set NTC configuration.

Parameters
configNew configuration
Returns
Error code

◆ SetRange()

hf_temp_err_t NtcTemperatureHandler::SetRange ( float  min_celsius,
float  max_celsius 
)
overridenoexcept

◆ SetReferenceVoltage()

NtcError NtcTemperatureHandler::SetReferenceVoltage ( float  reference_voltage)
noexcept

Set reference voltage.

Parameters
reference_voltageReference voltage (V)
Returns
Error code

◆ SetSamplingParameters()

NtcError NtcTemperatureHandler::SetSamplingParameters ( uint32_t  sample_count,
uint32_t  sample_delay_ms 
)
noexcept

Set sampling parameters.

Parameters
sample_countNumber of samples
sample_delay_msDelay between samples (ms)
Returns
Error code

◆ SetThresholds()

hf_temp_err_t NtcTemperatureHandler::SetThresholds ( float  low_threshold_celsius,
float  high_threshold_celsius 
)
overridenoexcept

◆ SetVoltageDivider()

NtcError NtcTemperatureHandler::SetVoltageDivider ( float  series_resistance)
noexcept

Set voltage divider parameters.

Parameters
series_resistanceSeries resistance (ohms)
Returns
Error code

◆ StartContinuousMonitoring()

hf_temp_err_t NtcTemperatureHandler::StartContinuousMonitoring ( hf_u32_t  sample_rate_hz,
hf_temp_reading_callback_t  callback,
void *  user_data 
)
overridenoexcept

◆ StopContinuousMonitoring()

hf_temp_err_t NtcTemperatureHandler::StopContinuousMonitoring ( )
overridenoexcept

◆ UnregisterMonitoringContext()

void NtcTemperatureHandler::UnregisterMonitoringContext ( hf_u32_t  context_id)
staticprivatenoexcept

◆ UpdateBaseDiagnostics()

void NtcTemperatureHandler::UpdateBaseDiagnostics ( hf_temp_err_t  error)
privatenoexcept

Update BaseTemperature diagnostics.

Parameters
errorError code

◆ UpdateDiagnostics()

void NtcTemperatureHandler::UpdateDiagnostics ( hf_temp_err_t  error)
privatenoexcept

Update diagnostics with error code.

Parameters
errorError code

◆ UpdateStatistics()

void NtcTemperatureHandler::UpdateStatistics ( bool  operation_successful,
hf_u32_t  operation_time_us 
)
privatenoexcept

Update operation statistics.

Parameters
operation_successfulWhether operation was successful
operation_time_usOperation time in microseconds

◆ ValidateConfiguration()

hf_temp_err_t NtcTemperatureHandler::ValidateConfiguration ( const ntc_temp_handler_config_t &  config) const
privatenoexcept

Validate configuration.

Parameters
configConfiguration to validate
Returns
Error code

Member Data Documentation

◆ adc_interface_

BaseAdc* NtcTemperatureHandler::adc_interface_
private

ADC interface pointer.

◆ base_config_

hf_temp_config_t NtcTemperatureHandler::base_config_
private

Base configuration.

◆ calibration_offset_

float NtcTemperatureHandler::calibration_offset_
private

Current calibration offset.

◆ callback_registry_

std::array< NtcTemperatureHandler *, NtcTemperatureHandler::kMonitoringContextSlots > NtcTemperatureHandler::callback_registry_ = {}
staticprivate

◆ callback_registry_mutex_

RtosMutex NtcTemperatureHandler::callback_registry_mutex_ {}
staticprivate

◆ config_

ntc_temp_handler_config_t NtcTemperatureHandler::config_
private

Handler configuration.

◆ continuous_callback_

hf_temp_reading_callback_t NtcTemperatureHandler::continuous_callback_
private

Continuous monitoring callback.

◆ continuous_user_data_

void* NtcTemperatureHandler::continuous_user_data_
private

Continuous monitoring callback user data.

◆ current_state_

hf_temp_state_t NtcTemperatureHandler::current_state_
private

Current state.

◆ diagnostics_

hf_temp_diagnostics_t NtcTemperatureHandler::diagnostics_
private

BaseTemperature diagnostics.

◆ high_threshold_celsius_

float NtcTemperatureHandler::high_threshold_celsius_
private

High temperature threshold.

◆ initialized_

bool NtcTemperatureHandler::initialized_
private

Initialization status.

◆ kMonitoringContextSlots

constexpr hf_u32_t NtcTemperatureHandler::kMonitoringContextSlots = 8
staticconstexprprivate

◆ low_threshold_celsius_

float NtcTemperatureHandler::low_threshold_celsius_
private

Low temperature threshold.

◆ monitoring_active_

bool NtcTemperatureHandler::monitoring_active_
private

Continuous monitoring status.

◆ monitoring_context_id_

hf_u32_t NtcTemperatureHandler::monitoring_context_id_
private

Timer callback context ID (0 = unassigned)

◆ monitoring_timer_

PeriodicTimer NtcTemperatureHandler::monitoring_timer_
private

Hardware-agnostic periodic timer.

◆ mutex_

RtosMutex NtcTemperatureHandler::mutex_
mutableprivate

Thread safety mutex (hardware-agnostic)

◆ ntc_adc_adapter_

std::unique_ptr<NtcAdcAdapter> NtcTemperatureHandler::ntc_adc_adapter_
private

ADC adapter (BaseAdc→ntc::AdcInterface)

◆ ntc_thermistor_

std::unique_ptr<NtcThermistorConcrete> NtcTemperatureHandler::ntc_thermistor_
private

NTC thermistor driver instance.

◆ sample_rate_hz_

hf_u32_t NtcTemperatureHandler::sample_rate_hz_
private

Sample rate for continuous monitoring.

◆ statistics_

hf_temp_statistics_t NtcTemperatureHandler::statistics_
private

BaseTemperature statistics.

◆ threshold_callback_

hf_temp_threshold_callback_t NtcTemperatureHandler::threshold_callback_
private

Threshold callback.

◆ threshold_monitoring_enabled_

bool NtcTemperatureHandler::threshold_monitoring_enabled_
private

Threshold monitoring status.

◆ threshold_user_data_

void* NtcTemperatureHandler::threshold_user_data_
private

Threshold callback user data.


The documentation for this class was generated from the following files: