/* * GPIOInterface.hpp * * Responsible for communicating with the actual GPIO hardware. * * Gets a JSON file with following style: * TODO * * Created on: May 6, 2018 * Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert */ #ifndef SRC_UTILITIES_GPIOINTERFACE_H_ #define SRC_UTILITIES_GPIOINTERFACE_H_ #include #include namespace flippR_driver { namespace utility { class GPIOInterface { public: GPIOInterface(); virtual ~GPIOInterface() {}; protected: static void initialize_input_pin(char address); static void initialize_output_pin(char address); static void write_pin(char address, char data); static bool read_pin(char address); public: static std::once_flag GPIO_LIB_INITIALIZED; private: unsigned int pin_base; }; } } #endif