SensorLib 0.5.0
Multi-platform sensor driver library for Arduino, PlatformIO, and ESP-IDF
Loading...
Searching...
No Matches
ImuGyroscopeAdapter.hpp
Go to the documentation of this file.
1
30#pragma once
31
32#include "GyroscopeBase.hpp"
33#include "ImuBase.hpp"
34
39{
40public:
41 explicit ImuGyroscopeAdapter(ImuBase &dev) : _dev(dev) {}
42
43 bool readData(GyroscopeData &data) override
44 {
45 return _dev.readGyro(data);
46 }
47
48 bool isDataReady() override
49 {
50 return _dev.isDataReady(static_cast<uint8_t>(ImuBase::DataReadyMask::GYRO));
51 }
52
53 bool reset() override
54 {
55 return _dev.reset();
56 }
57
58 bool selfTest() override
59 {
60 return _dev.selfTest();
61 }
62
64 {
65 return _dev.setGyroFullScaleRange(range);
66 }
67
68 bool setOutputDataRate(float data_rate_hz) override
69 {
70 return _dev.setGyroOutputDataRate(data_rate_hz);
71 }
72
73 bool setOperationMode(OperationMode mode) override
74 {
75 return _dev.setOperationMode(mode);
76 }
77
78private:
79 ImuBase &_dev;
80};
@license MIT License
@license MIT License
OperationMode
Enumeration of sensor operation modes.
GyroFullScaleRange
Enumeration of gyroscope full-scale range settings.
Abstract base class for gyroscope implementations.
Abstract IMU device interface for polymorphic IMU sensor implementations.
Definition ImuBase.hpp:43
virtual bool setGyroFullScaleRange(GyroFullScaleRange range)=0
Set gyroscope full scale range.
virtual bool setOperationMode(OperationMode mode)=0
Set IMU operation mode.
virtual bool readGyro(GyroscopeData &out)=0
Read gyroscope data.
virtual bool selfTest()=0
Perform self-test on the IMU sensor.
virtual bool isDataReady(uint8_t mask=static_cast< uint8_t >(DataReadyMask::BOTH))=0
Check if requested IMU data is available.
virtual bool reset()=0
Reset the IMU sensor to its default state.
virtual bool setGyroOutputDataRate(float data_rate_hz)=0
Set gyroscope output data rate.
Adapter: expose an IMU device as a GyroscopeBase.
bool setOutputDataRate(float data_rate_hz) override
Set gyroscope output data rate.
bool isDataReady() override
Check if new gyroscope data is available.
bool setFullScaleRange(GyroFullScaleRange range) override
Set gyroscope full-scale range.
ImuGyroscopeAdapter(ImuBase &dev)
bool readData(GyroscopeData &data) override
Read gyroscope data.
bool reset() override
Reset gyroscope to default state.
bool setOperationMode(OperationMode mode) override
Set gyroscope operation mode.
bool selfTest() override
Perform gyroscope self-test.
Structure representing gyroscope data.