Program Listing for File tlx5012-pal-gpio.hpp

Return to documentation for file (src/pal/tlx5012-pal-gpio.hpp)

#ifndef TLX5012_PAL_GPIO_HPP_
#define TLX5012_PAL_GPIO_HPP_

#include <stdint.h>
#include "tle5012b_types.hpp"

namespace tle5012
{

class GPIOPAL
{
    public:

        enum IntEvent_t
        {
            INT_FALLING_EDGE   = 0,
            INT_RISING_EDGE    = 1,
        };
        enum VLevel_t
        {
            GPIO_LOW   = 0,
            GPIO_HIGH  = 1
        };
        enum VLogic_t
        {
            NEGATIVE = 1,
            POSITIVE = 2,
        };
        virtual Error_t        init        () = 0;

        virtual Error_t       deinit      () = 0;

        virtual Error_t       changeMode  (uint8_t mode) = 0;

        virtual VLevel_t       read        () = 0;

        virtual Error_t        write       (VLevel_t level) = 0;

        virtual Error_t        enable      () = 0;

        virtual Error_t        disable     () = 0;

};

}

#endif