works now?

This commit is contained in:
Jonas Zeunert
2018-11-23 17:04:55 +01:00
parent 2a761f3267
commit eba6bb402a
12 changed files with 43 additions and 47 deletions

View File

@@ -7,8 +7,9 @@
#include "IOutputGPIOInterface.h"
#include "output/items/IItem.h"
#include "output/items/IDriverBoardItem.h"
#include "output/items/ISoundItem.h"
#include "output/items/IDisplay.h"
#include <memory>
namespace flippR_driver
@@ -19,15 +20,17 @@ namespace utility
class IOutputGPIOInterface
{
public:
//muss alles geschützt sein
void set_address(int i2c_address, int address);
void activate_pin(int i2c_address, int pin);
void deactivate_pin(int i2c_address, int pin);
virtual ~IOutputGPIOInterface(){};
void activate_output_item(output::items::IItem *item);
void deactivate_output_item(output::items::IItem *item);
virtual void activate(output::items::IDriverBoardItem *driver_board_item) = 0;
virtual void activate(output::items::ISoundItem *sound) = 0;
virtual void deactivate(output::items::IDriverBoardItem *driver_board_item) = 0;
virtual void deactivate(output::items::ISoundItem *sound) = 0;
virtual void write_display(output::items::IDisplay *display) = 0;
//Display gpio interface!
};
}

View File

@@ -8,12 +8,10 @@
#ifndef SRC_UTILITIES_OUTPUTGPIOINTERFACE_H_
#define SRC_UTILITIES_OUTPUTGPIOINTERFACE_H_
#include "IOutputGPIOInterface.h"
#include "GPIOInterface.h"
#include "output/items/IItem.h"
#include "output/items/IDriverBoardItem.h"
#include "output/items/ISoundItem.h"
#include "output/items/IDisplay.h"
#include "json/json.hpp"
@@ -25,7 +23,7 @@ namespace flippR_driver
namespace utility
{
class OutputGPIOInterface : public GPIOInterface
class OutputGPIOInterface : public GPIOInterface, IOutputGPIOInterface
{
public:
@@ -33,13 +31,13 @@ public:
virtual ~OutputGPIOInterface() = default;
void activate(output::items::IDriverBoardItem *driver_board_item);
void activate(output::items::ISoundItem *sound);
virtual void activate(output::items::IDriverBoardItem *driver_board_item);
virtual void activate(output::items::ISoundItem *sound);
void deactivate(output::items::IDriverBoardItem *driver_board_item);
void deactivate(output::items::ISoundItem *sound);
virtual void deactivate(output::items::IDriverBoardItem *driver_board_item);
virtual void deactivate(output::items::ISoundItem *sound);
void write_display(output::items::IDisplay &display);
virtual void write_display(output::items::IDisplay *display);
private:
void parse_output_config(nlohmann::json &output_config);