working on rewrite

This commit is contained in:
Jonas Zeunert
2019-05-06 20:53:52 +02:00
parent c92d0736a6
commit 18b1b190be
16 changed files with 27 additions and 117 deletions

View File

@@ -9,7 +9,6 @@
#include "output/DisplayBoardPinController.h"
#include "output/OutputPinController.h"
namespace flippR_driver
{
@@ -18,7 +17,7 @@ namespace output
namespace detail
{
class DisplayBoardPinController : public output::DisplayBoardPinController, public OutputPinController
class DisplayBoardPinController : public output::DisplayBoardPinController
{
public:
explicit DisplayBoardPinController(std::map<std::string, uint8_t> pins_display);

View File

@@ -5,12 +5,11 @@
#ifndef FLIPPR_DRIVER_OUTPUT_IMPL_DRIVERBOARDPINCONTROLLER_H
#define FLIPPR_DRIVER_OUTPUT_IMPL_DRIVERBOARDPINCONTROLLER_H
#include <map>
#include <memory>
#include "output/DriverBoardPinController.h"
#include "output/OutputPinController.h"
#include <map>
#include <memory>
#include <mutex>
namespace flippR_driver
{

View File

@@ -32,16 +32,16 @@ void SoundBoardPinController::activate(const items::detail::Sound &sound)
write_sound_address(sound.get_address());
fire_sound(true);
fire_sound();
}
void SoundBoardPinController::deactivate(const items::detail::Sound &sound)
{
std::lock_guard<std::mutex> guard(*output_item_mutex);
write_sound_address(sound.get_address());
write_sound_address(0);
fire_sound(false);
fire_sound();
}
@@ -56,9 +56,11 @@ void SoundBoardPinController::write_sound_address(uint8_t address) const
write_pin(pins_sound.at("G"), address & 0b1000000u);
}
void SoundBoardPinController::fire_sound(bool fire) const
void SoundBoardPinController::fire_sound() const
{
PinController::write_pin(pins_sound.at("fire"), fire);
PinController::write_pin(pins_sound.at("fire"), true);
PinController::write_pin(pins_sound.at("fire"), false);
}
void SoundBoardPinController::write_pin(uint8_t pin, bool value) const

View File

@@ -7,8 +7,6 @@
#include "output/SoundBoardPinController.h"
#include "output/OutputPinController.h"
#include <map>
namespace flippR_driver
@@ -24,13 +22,12 @@ public:
SoundBoardPinController(std::map<std::string, uint8_t> pins_sound, std::shared_ptr<std::mutex> output_item_mutex);
~SoundBoardPinController() override = default;
void activate(const items::detail::Sound &sound);
void deactivate(const items::detail::Sound &sound);
void activate(const items::detail::Sound &sound) override;
void deactivate(const items::detail::Sound &sound) override;
private:
void write_sound_address(uint8_t address) const;
void fire_sound(bool fire) const;
void fire_sound() const;
void write_pin(uint8_t pin, bool value) const;