Avionics
Core avionics package for CURE flight computers
Loading...
Searching...
No Matches
DataSaver.h
Go to the documentation of this file.
1#ifndef DATA_SAVER_H
2#define DATA_SAVER_H
3
5#include <cstdint>
6
7
14 public:
23 virtual int saveDataPoint(const DataPoint& dp, uint8_t name) = 0;
24
33 virtual int saveDataPoint(float data, uint32_t timestamp_ms, uint8_t name) final {
34 return saveDataPoint(DataPoint(timestamp_ms, data), name);
35 }
36
42 virtual bool begin() {
43 return true;
44 }
45
52 virtual void launchDetected(uint32_t launchTimestamp_ms){
53 // Default implementation does nothing
54 }
55
56};
57
58
59
60#endif
Timestamped float measurement container.
Definition DataPoint.h:11
Abstract interface for persisting timestamped data points.
Definition DataSaver.h:13
virtual int saveDataPoint(float data, uint32_t timestamp_ms, uint8_t name) final
Convenience overload to construct and save a data point.
Definition DataSaver.h:33
virtual void launchDetected(uint32_t launchTimestamp_ms)
Notification that launch has been detected.
Definition DataSaver.h:52
virtual bool begin()
Optional hook for initialization.
Definition DataSaver.h:42
virtual int saveDataPoint(const DataPoint &dp, uint8_t name)=0
Persist a data point with a source identifier.