Skip to content

File evaStdReaders.h

File List > src > evaStdReaders.h

Go to the documentation of this file

#ifndef EVASTDREADERS_H
#define EVASTDREADERS_H
#include <Arduino.h>

#pragma once

namespace eva
{
    template <int PIN, int PIN_MODE>
    class DigitalPinReader
    {
    public:
        DigitalPinReader()
        {
            pinMode(PIN, PIN_MODE);
        }

        signed short getValue()
        {
            return digitalRead(PIN);
        }
        bool isValid()
        {
            return true;
        }
    };

    template <int PIN, int PIN_MODE>
    class AnalogPinReader
    {
    public:
        AnalogPinReader()
        {
            pinMode(PIN, PIN_MODE);
        }

        signed short getValue()
        {
            return analogRead(PIN);
        }
        bool isValid()
        {
            return true;
        }
    };

};
#endif