SensorLib 0.5.0
Multi-platform sensor driver library for Arduino, PlatformIO, and ESP-IDF
Loading...
Searching...
No Matches
EnhancedSensorCommBase Class Reference

#include <SensorCommEnhanced.hpp>

Inheritance diagram for EnhancedSensorCommBase:
[legend]

Public Member Functions

template<typename T >
int readRegister (T reg)
 
template<typename T >
int readRegister (T reg, uint8_t *buf, size_t len)
 
template<typename T >
int writeRegister (T reg, uint8_t val)
 
template<typename T >
int writeRegister (T reg, uint8_t *buf, size_t len)
 
template<typename T >
int writeRegister (T reg, uint8_t norVal, uint8_t orVal)
 
- Public Member Functions inherited from SensorCommBase
virtual bool init ()=0
 Initialise the communication interface (open device, etc.).
 
virtual void deinit ()=0
 Deinitialise the communication interface (close device, etc.).
 
virtual int readRegister (const uint8_t reg)
 Read a single byte from a register.
 
virtual int readRegister (const uint8_t reg, uint8_t *buf, size_t len)=0
 Read multiple bytes from a register into a buffer.
 
virtual int readBuffer (uint8_t *buf, size_t len)=0
 Read bytes directly from the device (no register address sent).
 
virtual int writeRegister (const uint8_t reg, uint8_t val)
 Write a single byte to a register.
 
virtual int writeRegister (const uint8_t reg, uint8_t *buf, size_t len)=0
 Write multiple bytes to a register.
 
virtual int writeRegister (const uint8_t reg, uint8_t norVal, uint8_t orVal)
 Modify a register using a NOR and OR mask.
 
virtual int writeBuffer (uint8_t *buffer, size_t len)=0
 Write a buffer directly to the device (no register address).
 
virtual int writeThenRead (const uint8_t *write_buffer, size_t write_len, uint8_t *read_buffer, size_t read_len)=0
 Perform a write followed by a read (e.g., for register‑based sensors).
 
virtual bool setRegisterBit (const uint8_t reg, uint8_t bit)
 Set a specific bit in a register.
 
virtual bool clrRegisterBit (const uint8_t reg, uint8_t bit)
 Clear a specific bit in a register.
 
virtual bool getRegisterBit (const uint8_t reg, uint8_t bit)
 Read the state of a specific bit in a register.
 
virtual int updateBits (uint8_t reg, uint8_t mask, uint8_t value_shifted)
 Update specific bits in a register.
 
virtual void setParams (const CommParamsBase &params)=0
 Apply communication parameters (e.g., I2C address, SPI settings).
 
virtual ~SensorCommBase ()=default
 
- Public Member Functions inherited from SensorErrorMixin
SENSOR_ERROR_CODE lastError () const
 
void clearError ()
 

Additional Inherited Members

- Protected Member Functions inherited from SensorErrorMixin
void setError (SENSOR_ERROR_CODE e)
 
SENSOR_ERROR_CODE setErrorAndReturn (SENSOR_ERROR_CODE e)
 

Detailed Description

Definition at line 35 of file SensorCommEnhanced.hpp.

Member Function Documentation

◆ readRegister() [1/2]

template<typename T >
int EnhancedSensorCommBase::readRegister ( reg)
inline

Definition at line 83 of file SensorCommEnhanced.hpp.

References readRegister().

Referenced by readRegister().

◆ readRegister() [2/2]

template<typename T >
int EnhancedSensorCommBase::readRegister ( reg,
uint8_t *  buf,
size_t  len 
)
inline

Definition at line 91 of file SensorCommEnhanced.hpp.

References buf.

◆ writeRegister() [1/3]

template<typename T >
int EnhancedSensorCommBase::writeRegister ( reg,
uint8_t *  buf,
size_t  len 
)
inline

Definition at line 105 of file SensorCommEnhanced.hpp.

References buf.

◆ writeRegister() [2/3]

template<typename T >
int EnhancedSensorCommBase::writeRegister ( reg,
uint8_t  norVal,
uint8_t  orVal 
)
inline

Definition at line 112 of file SensorCommEnhanced.hpp.

◆ writeRegister() [3/3]

template<typename T >
int EnhancedSensorCommBase::writeRegister ( reg,
uint8_t  val 
)
inline

Definition at line 98 of file SensorCommEnhanced.hpp.


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