yes Spada / Mbed OS programme

MeasurementHistory.h

Committer:
loicguibert
Date:
2019-04-17
Revision:
18:7002e66af2e5
Parent:
17:76787f5a334f
Child:
23:f45027ac625c

File content as of revision 18:7002e66af2e5:

#pragma once

#include <stdint.h>
#include "Logger.h"

class MeasurementHistory {
public:
  // constructor
  MeasurementHistory(Logger logger);
  
  //    Add some new values to the history
  void addMeasurement(uint32_t pressure, int16_t temp, uint16_t humidity, uint32_t time);
  
  uint32_t getPressureTrend();
    
private:

  struct Data {
    uint32_t pressure;
    int16_t temp;
    uint16_t humidity;
    uint32_t time;
    //  Size: 96 bits, 12 Bytes
  };
  
  //    Counting the array's dimension according to max size
  static const int DEFAULT_SIZE = 2048;
  static const int ARRAY_SIZE = DEFAULT_SIZE/sizeof(Data);
    
  // data members
  Data m_measures[ARRAY_SIZE];
  
  int m_measurments;
  
  Logger m_logger;
};