compiling but strange need to talk
This commit is contained in:
@@ -8,7 +8,7 @@
|
|||||||
#include "IOutputGPIOInterface.h"
|
#include "IOutputGPIOInterface.h"
|
||||||
|
|
||||||
#include "output/items/IItem.h"
|
#include "output/items/IItem.h"
|
||||||
#include "output/items/ISound.h"
|
#include "output/items/ISoundItem.h"
|
||||||
#include "output/items/IDisplay.h"
|
#include "output/items/IDisplay.h"
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
@@ -23,10 +23,10 @@ public:
|
|||||||
virtual ~IOutputGPIOInterface() = default;
|
virtual ~IOutputGPIOInterface() = default;
|
||||||
|
|
||||||
virtual void activate(items::IItem *driver_board_item) = 0;
|
virtual void activate(items::IItem *driver_board_item) = 0;
|
||||||
virtual void activate(items::ISound *sound) = 0;
|
virtual void activate(items::ISoundItem *sound) = 0;
|
||||||
|
|
||||||
virtual void deactivate(items::IItem *driver_board_item) = 0;
|
virtual void deactivate(items::IItem *driver_board_item) = 0;
|
||||||
virtual void deactivate(items::ISound *sound) = 0;
|
virtual void deactivate(items::ISoundItem *sound) = 0;
|
||||||
|
|
||||||
virtual void write_display(std::shared_ptr<output::items::IDisplay> display) = 0;
|
virtual void write_display(std::shared_ptr<output::items::IDisplay> display) = 0;
|
||||||
//Display gpio interface!
|
//Display gpio interface!
|
||||||
|
|||||||
@@ -136,7 +136,7 @@ std::map<std::string, std::shared_ptr<items::ISound>> create_sounds(std::istream
|
|||||||
for(auto &sound_json : sounds_json)
|
for(auto &sound_json : sounds_json)
|
||||||
{
|
{
|
||||||
auto sound = create_sound(sound_json, output_gpio_interface, deactivation_time);
|
auto sound = create_sound(sound_json, output_gpio_interface, deactivation_time);
|
||||||
sounds.emplace(sound->get_name(), sound);
|
sounds.emplace(sound->Item::get_name(), sound);
|
||||||
}
|
}
|
||||||
|
|
||||||
return sounds;
|
return sounds;
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ void OutputGPIOInterface::initialize_i2c_addresses()
|
|||||||
mcp23017Setup(pins_display.at("pin_base"), pins_display.at("i2c_address"));
|
mcp23017Setup(pins_display.at("pin_base"), pins_display.at("i2c_address"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void OutputGPIOInterface::activate(output::items::ISound *sound)
|
void OutputGPIOInterface::activate(output::items::ISoundItem *sound)
|
||||||
{
|
{
|
||||||
std::lock_guard<std::mutex> guard(output_item_mutex);
|
std::lock_guard<std::mutex> guard(output_item_mutex);
|
||||||
|
|
||||||
@@ -72,7 +72,7 @@ void OutputGPIOInterface::deactivate(output::items::IItem *driver_board_item)
|
|||||||
write_data(false);
|
write_data(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OutputGPIOInterface::deactivate(output::items::ISound *sound)
|
void OutputGPIOInterface::deactivate(output::items::ISoundItem *sound)
|
||||||
{
|
{
|
||||||
std::lock_guard<std::mutex> guard(output_item_mutex);
|
std::lock_guard<std::mutex> guard(output_item_mutex);
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
#include <mcp23017.h>
|
#include <mcp23017.h>
|
||||||
#include <mutex>
|
#include <mutex>
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <output/items/ISound.h>
|
|
||||||
namespace flippR_driver
|
namespace flippR_driver
|
||||||
{
|
{
|
||||||
namespace output
|
namespace output
|
||||||
@@ -33,10 +33,10 @@ public:
|
|||||||
~OutputGPIOInterface() override = default;
|
~OutputGPIOInterface() override = default;
|
||||||
|
|
||||||
void activate(items::IItem *driver_board_item) override;
|
void activate(items::IItem *driver_board_item) override;
|
||||||
void activate(items::ISound *sound) override;
|
void activate(items::ISoundItem *sound) override;
|
||||||
|
|
||||||
void deactivate(items::IItem *driver_board_item) override;
|
void deactivate(items::IItem *driver_board_item) override;
|
||||||
void deactivate(items::ISound *sound) override;
|
void deactivate(items::ISoundItem *sound) override;
|
||||||
|
|
||||||
void write_display(std::shared_ptr<output::items::IDisplay> display) override;
|
void write_display(std::shared_ptr<output::items::IDisplay> display) override;
|
||||||
|
|
||||||
|
|||||||
29
FlippR-Driver/src/output/items/IDriverBoardItem.h
Normal file
29
FlippR-Driver/src/output/items/IDriverBoardItem.h
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
//
|
||||||
|
// Created by rhetenor on 23.11.18.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef FLIPPR_DRIVER_IDRIVERBOARDITEM_H
|
||||||
|
#define FLIPPR_DRIVER_IDRIVERBOARDITEM_H
|
||||||
|
|
||||||
|
#include "output/items/IItem.h"
|
||||||
|
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
|
namespace flippR_driver
|
||||||
|
{
|
||||||
|
namespace output
|
||||||
|
{
|
||||||
|
namespace items
|
||||||
|
{
|
||||||
|
|
||||||
|
class IDriverBoardItem : public IItem
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
~IDriverBoardItem() override = default;
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif //FLIPPR_DRIVER_IDRIVERBOARDITEM_H
|
||||||
26
FlippR-Driver/src/output/items/ISoundItem.h
Normal file
26
FlippR-Driver/src/output/items/ISoundItem.h
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
//
|
||||||
|
// Created by rhetenor on 23.11.18.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef FLIPPR_DRIVER_ISOUNDITEM_H
|
||||||
|
#define FLIPPR_DRIVER_ISOUNDITEM_H
|
||||||
|
|
||||||
|
#include "IItem.h"
|
||||||
|
namespace flippR_driver
|
||||||
|
{
|
||||||
|
namespace output
|
||||||
|
{
|
||||||
|
namespace items
|
||||||
|
{
|
||||||
|
|
||||||
|
class ISoundItem : public IItem
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
~ISoundItem() override = default;
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif //FLIPPR_DRIVER_ISOUNDITEM_H
|
||||||
@@ -9,6 +9,8 @@
|
|||||||
#define _SRC_OUTPUT_SOUND_H_
|
#define _SRC_OUTPUT_SOUND_H_
|
||||||
|
|
||||||
#include "output/items/ISound.h"
|
#include "output/items/ISound.h"
|
||||||
|
#include "output/items/ISoundItem.h"
|
||||||
|
|
||||||
#include "Item.h"
|
#include "Item.h"
|
||||||
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
@@ -24,7 +26,7 @@ namespace output
|
|||||||
namespace items
|
namespace items
|
||||||
{
|
{
|
||||||
|
|
||||||
class Sound : public ISound, public Item
|
class Sound : public ISound, public Item, public ISoundItem
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
u_int id;
|
u_int id;
|
||||||
@@ -33,6 +35,9 @@ public:
|
|||||||
Sound(std::shared_ptr<IOutputGPIOInterface> output_gpio_interface, uint8_t address, std::string name, std::chrono::milliseconds deactivation_time, u_int id);
|
Sound(std::shared_ptr<IOutputGPIOInterface> output_gpio_interface, uint8_t address, std::string name, std::chrono::milliseconds deactivation_time, u_int id);
|
||||||
~Sound() override = default;
|
~Sound() override = default;
|
||||||
|
|
||||||
|
std::string get_name() override;
|
||||||
|
uint8_t get_address() override;
|
||||||
|
|
||||||
void play() override;
|
void play() override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
Reference in New Issue
Block a user