File evaStdReaders.h¶
File List > src > evaStdReaders.h
Go to the documentation of this file
#pragma once
#include <Arduino.h>
namespace eva
{
class ValueReader
{
private:
signed short mValue = 0;
public:
void setValue(signed short value) { mValue = value; }
signed short getValue() const { return mValue; }
bool isValid() const { return true; }
};
template <int tPin, int tPinMode>
class DigitalPinReader
{
public:
DigitalPinReader()
{
pinMode(tPin, tPinMode);
}
signed short getValue()
{
return digitalRead(tPin);
}
bool isValid()
{
return true;
}
};
template <int tPin, int tPinMode>
class AnalogPinReader
{
public:
AnalogPinReader()
{
pinMode(tPin, tPinMode);
}
signed short getValue()
{
return analogRead(tPin);
}
bool isValid()
{
return true;
}
};
class AnalogMutablePinReader
{
public:
AnalogMutablePinReader(uint8_t aPin, uint8_t aMode);
signed short getValue();
bool isValid();
private:
uint8_t mPin;
};
class DigitalMutablePinReader
{
public:
DigitalMutablePinReader(uint8_t aPin, uint8_t aMode);
signed short getValue();
bool isValid();
private:
uint8_t mPin;
};
};