semf
semf::AnalogSensor< T, N_CHANNELS > Class Template Reference

Provides data from an AnalogIn to one to more Sensor objects. More...

#include <analogsensor.h>

Inheritance diagram for semf::AnalogSensor< T, N_CHANNELS >:
Inheritance graph
Collaboration diagram for semf::AnalogSensor< T, N_CHANNELS >:
Collaboration graph

Public Member Functions

 AnalogSensor (AnalogIn &analogIn, T buffer[], size_t bufferSize)
 Constructor. More...
 
 AnalogSensor (const AnalogSensor &other)=delete
 
virtual ~AnalogSensor ()=default
 
void update () override
 
LastInBuffer< T > & buffer (size_t index) override
 Returns the buffer, where the measurement data is stored in. More...
 
- Public Member Functions inherited from semf::HardwareSensor< T >
virtual ~HardwareSensor ()=default
 
virtual void update ()=0
 
virtual LastInBuffer< T > & buffer (size_t index)=0
 Returns the buffer, where the measurement data is stored in. More...
 

Additional Inherited Members

- Public Attributes inherited from semf::HardwareSensor< T >
Signal< size_t > dataAvailable
 

Detailed Description

template<typename T, size_t N_CHANNELS = 1>
class semf::AnalogSensor< T, N_CHANNELS >

Provides data from an AnalogIn to one to more Sensor objects.

Template Parameters
T_RAWType of a raw sensor value, e.g. uint16_t for a 16-bit ADC value.
N_CHANNELSNumber of ADC channels connected to this ADC unit.
See also
AnalogDmaSensor
HardwareSensor
Sensor

Definition at line 31 of file analogsensor.h.

Constructor & Destructor Documentation

◆ AnalogSensor() [1/2]

template<typename T , size_t N_CHANNELS>
semf::AnalogSensor< T, N_CHANNELS >::AnalogSensor ( AnalogIn analogIn,
buffer[],
size_t  bufferSize 
)

Constructor.

Parameters
analogInADC Interface, that is used for measuring sensor value(s).
bufferPointer to the data buffer of the measured values.
bufferSizeSize of buffer in T.

Definition at line 62 of file analogsensor.h.

Here is the call graph for this function:

◆ AnalogSensor() [2/2]

template<typename T , size_t N_CHANNELS = 1>
semf::AnalogSensor< T, N_CHANNELS >::AnalogSensor ( const AnalogSensor< T, N_CHANNELS > &  other)
explicitdelete

◆ ~AnalogSensor()

template<typename T , size_t N_CHANNELS = 1>
virtual semf::AnalogSensor< T, N_CHANNELS >::~AnalogSensor ( )
virtualdefault

Member Function Documentation

◆ buffer()

template<typename T , size_t N_CHANNELS>
LastInBuffer< T > & semf::AnalogSensor< T, N_CHANNELS >::buffer ( size_t  index)
overridevirtual

Returns the buffer, where the measurement data is stored in.

Parameters
indexIndex of a specific sensor.
Returns
Buffer.

Implements semf::HardwareSensor< T >.

Definition at line 81 of file analogsensor.h.

Here is the caller graph for this function:

◆ update()

template<typename T , size_t N_CHANNELS>
void semf::AnalogSensor< T, N_CHANNELS >::update
overridevirtual

Starts a measurement cycle and will emit dataAvailable afterwards.

Implements semf::HardwareSensor< T >.

Definition at line 75 of file analogsensor.h.