A small library that's provide helpers for programmers
MySensor.cpp
- Committer:
- clemounet
- Date:
- 2015-02-17
- Revision:
- 1:ee7a5f05513d
- Child:
- 2:6cc4c56940af
File content as of revision 1:ee7a5f05513d:
#include "MySensor.h" MySensor::MySensor(const char* sName, uint8_t t, uint32_t idle): MyThread(sName) { resultsMutex = new Mutex(); sensorType = t; idleTime = idle; } MySensor::~MySensor() { delete(resultsMutex); } const char *MySensor::GetSensorName() { return tName; } uint8_t MySensor::GetSensorType() { return sensorType; } void MySensor::SetIdleTime(uint32_t idle) { idleTime = idle; } void MySensor::Main() { while(running){ Loop(); Wait(idleTime); } } void MySensor::Capture(char *data, uint16_t *len) { if(resultsMutex) { // Warning here, lock have no timeout it could leads to deadlocks if(results.start) { resultsMutex->lock(); // Copy the results memcpy(data,results.start,results.num); *len = results.num; // Reset the results struct results.current = results.start; results.num = 0; resultsMutex->unlock(); } } else *len = 0; }