some logs
This commit is contained in:
@@ -21,12 +21,11 @@ void OutputPinController::initialize_i2c_address(uint8_t i2c_address, uint8_t pi
|
|||||||
mcp23017Setup(pin_base, i2c_address);
|
mcp23017Setup(pin_base, i2c_address);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OutputPinController::initialize_pins_output(uint8_t pin_base)
|
void OutputPinController::initialize_pins_output(uint8_t pin_base, std::map<std::string, uint8_t>::iterator begin, std::map<std::string, uint8_t>::iterator end)
|
||||||
{
|
{
|
||||||
// Since this are all outputs we just initialize everything as output conveniently
|
for(; begin != end; begin++)
|
||||||
for(int i = 0; i < 16; i++)
|
|
||||||
{
|
{
|
||||||
PinController::initialize_output_pin(pin_base + i);
|
initialize_output_pin(pin_base + begin->second);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -10,6 +10,8 @@
|
|||||||
|
|
||||||
#include "PinController.h"
|
#include "PinController.h"
|
||||||
|
|
||||||
|
#include <map>
|
||||||
|
|
||||||
namespace flippR_driver
|
namespace flippR_driver
|
||||||
{
|
{
|
||||||
namespace output
|
namespace output
|
||||||
@@ -23,7 +25,7 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
static void initialize_i2c_address(uint8_t i2c_address, uint8_t pin_base);
|
static void initialize_i2c_address(uint8_t i2c_address, uint8_t pin_base);
|
||||||
static void initialize_pins_output(uint8_t pin_base);
|
static void initialize_pins_output(uint8_t pin_base, std::map<std::string, uint8_t>::iterator begin, std::map<std::string, uint8_t>::iterator end);
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,8 +17,9 @@ namespace detail
|
|||||||
DisplayBoardPinController::DisplayBoardPinController(std::map<std::string, uint8_t> pins_display) :
|
DisplayBoardPinController::DisplayBoardPinController(std::map<std::string, uint8_t> pins_display) :
|
||||||
pins_display_board(std::move(pins_display))
|
pins_display_board(std::move(pins_display))
|
||||||
{
|
{
|
||||||
// todo init
|
initialize_pins_output(0, pins_display.begin(), pins_display.end());
|
||||||
|
|
||||||
|
CLOG(INFO, OUTPUT_LOGGER) << "Created DisplayBoardPinController";
|
||||||
}
|
}
|
||||||
|
|
||||||
void DisplayBoardPinController::activate_displays() const
|
void DisplayBoardPinController::activate_displays() const
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
#include "output/DisplayBoardPinController.h"
|
#include "output/DisplayBoardPinController.h"
|
||||||
|
|
||||||
#include "PinController.h"
|
#include "output/OutputPinController.h"
|
||||||
|
|
||||||
#include <map>
|
#include <map>
|
||||||
|
|
||||||
@@ -18,7 +18,7 @@ namespace output
|
|||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
|
|
||||||
class DisplayBoardPinController : public output::DisplayBoardPinController, public PinController
|
class DisplayBoardPinController : public output::DisplayBoardPinController, public OutputPinController
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
explicit DisplayBoardPinController(std::map<std::string, uint8_t> pins_display);
|
explicit DisplayBoardPinController(std::map<std::string, uint8_t> pins_display);
|
||||||
|
|||||||
@@ -21,7 +21,9 @@ DisplayController::DisplayController(std::vector<std::shared_ptr<items::OutputDi
|
|||||||
{
|
{
|
||||||
this->display_cycle_thread = std::thread(&DisplayController::cycle_displays, this);
|
this->display_cycle_thread = std::thread(&DisplayController::cycle_displays, this);
|
||||||
|
|
||||||
CLOG(INFO, OUTPUT_LOGGER) << "Created DisplayController and started writing them.";
|
CLOG(INFO, OUTPUT_LOGGER) << "Created DisplayController and started cycling them.";
|
||||||
|
|
||||||
|
activate_displays();
|
||||||
}
|
}
|
||||||
|
|
||||||
DisplayController::~DisplayController()
|
DisplayController::~DisplayController()
|
||||||
@@ -44,11 +46,13 @@ void DisplayController::cycle_displays() const
|
|||||||
|
|
||||||
void DisplayController::activate_displays() const
|
void DisplayController::activate_displays() const
|
||||||
{
|
{
|
||||||
|
CLOG(INFO, OUTPUT_LOGGER) << "Activated all displays!";
|
||||||
pin_controller->activate_displays();
|
pin_controller->activate_displays();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DisplayController::deactivate_displays() const
|
void DisplayController::deactivate_displays() const
|
||||||
{
|
{
|
||||||
|
CLOG(INFO, OUTPUT_LOGGER) << "Deactivated all displays!";
|
||||||
pin_controller->deactivate_displays();
|
pin_controller->deactivate_displays();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,10 @@
|
|||||||
|
|
||||||
#include "DriverBoardPinController.h"
|
#include "DriverBoardPinController.h"
|
||||||
|
|
||||||
|
#include "output/items/DriverBoardItem.h"
|
||||||
|
|
||||||
|
#include "utility/config.h"
|
||||||
|
|
||||||
namespace flippR_driver
|
namespace flippR_driver
|
||||||
{
|
{
|
||||||
namespace output
|
namespace output
|
||||||
@@ -14,7 +18,13 @@ namespace detail
|
|||||||
DriverBoardPinController::DriverBoardPinController(std::map<std::string, uint8_t> pins_driver_board, std::shared_ptr<std::mutex> output_item_mutex) :
|
DriverBoardPinController::DriverBoardPinController(std::map<std::string, uint8_t> pins_driver_board, std::shared_ptr<std::mutex> output_item_mutex) :
|
||||||
pins_driver_board(std::move(pins_driver_board)), output_item_mutex(std::move(output_item_mutex))
|
pins_driver_board(std::move(pins_driver_board)), output_item_mutex(std::move(output_item_mutex))
|
||||||
{
|
{
|
||||||
// todo init
|
uint8_t i2c_address = pins_driver_board.at("i2c_address");
|
||||||
|
uint8_t pin_base = pins_driver_board.at("pin_base");
|
||||||
|
|
||||||
|
initialize_i2c_address(i2c_address, pin_base);
|
||||||
|
initialize_pins_output(pin_base, pins_driver_board.begin(), pins_driver_board.end());
|
||||||
|
|
||||||
|
CLOG(INFO, OUTPUT_LOGGER) << "Created DriverBoardPinController with i2c_address 0x" << std::hex << i2c_address << " and pin_base " << std::dec << pin_base;
|
||||||
}
|
}
|
||||||
|
|
||||||
void DriverBoardPinController::activate(items::DriverBoardItem &driver_board_item)
|
void DriverBoardPinController::activate(items::DriverBoardItem &driver_board_item)
|
||||||
|
|||||||
@@ -9,8 +9,6 @@
|
|||||||
|
|
||||||
#include "output/OutputPinController.h"
|
#include "output/OutputPinController.h"
|
||||||
|
|
||||||
#include <output/items/DriverBoardItem.h>
|
|
||||||
|
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
|
|||||||
@@ -10,6 +10,8 @@
|
|||||||
#include <boost/range/adaptor/map.hpp>
|
#include <boost/range/adaptor/map.hpp>
|
||||||
#include <boost/range/algorithm/copy.hpp>
|
#include <boost/range/algorithm/copy.hpp>
|
||||||
|
|
||||||
|
#include "utility/config.h"
|
||||||
|
|
||||||
namespace flippR_driver
|
namespace flippR_driver
|
||||||
{
|
{
|
||||||
namespace output
|
namespace output
|
||||||
@@ -21,7 +23,9 @@ using namespace items;
|
|||||||
|
|
||||||
OutputDriver::OutputDriver(std::unique_ptr<output::DisplayController> display_controller, std::map<std::string, std::shared_ptr<Solenoid>> solenoids, std::map<std::string, std::shared_ptr<Lamp>> lamps, std::map<std::string, std::shared_ptr<Sound>> sounds, std::map<uint8_t, std::shared_ptr<items::Display>> displays)
|
OutputDriver::OutputDriver(std::unique_ptr<output::DisplayController> display_controller, std::map<std::string, std::shared_ptr<Solenoid>> solenoids, std::map<std::string, std::shared_ptr<Lamp>> lamps, std::map<std::string, std::shared_ptr<Sound>> sounds, std::map<uint8_t, std::shared_ptr<items::Display>> displays)
|
||||||
: display_controller(std::move(display_controller)), solenoids(std::move(solenoids)), lamps(std::move(lamps)), sounds(std::move(sounds)), displays(std::move(displays))
|
: display_controller(std::move(display_controller)), solenoids(std::move(solenoids)), lamps(std::move(lamps)), sounds(std::move(sounds)), displays(std::move(displays))
|
||||||
{}
|
{
|
||||||
|
CLOG(INFO, OUTPUT_LOGGER) << "Created OutputDriver";
|
||||||
|
}
|
||||||
|
|
||||||
void OutputDriver::activate_displays() const
|
void OutputDriver::activate_displays() const
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
#include "SoundBoardPinController.h"
|
#include "SoundBoardPinController.h"
|
||||||
|
|
||||||
|
#include "utility/config.h"
|
||||||
|
|
||||||
namespace flippR_driver
|
namespace flippR_driver
|
||||||
{
|
{
|
||||||
namespace output
|
namespace output
|
||||||
@@ -14,7 +16,13 @@ namespace detail
|
|||||||
SoundBoardPinController::SoundBoardPinController(std::map<std::string, uint8_t> pins_sound, std::shared_ptr<std::mutex> output_item_mutex) :
|
SoundBoardPinController::SoundBoardPinController(std::map<std::string, uint8_t> pins_sound, std::shared_ptr<std::mutex> output_item_mutex) :
|
||||||
pins_sound(std::move(pins_sound)), output_item_mutex(std::move(output_item_mutex))
|
pins_sound(std::move(pins_sound)), output_item_mutex(std::move(output_item_mutex))
|
||||||
{
|
{
|
||||||
// todo init
|
uint8_t i2c_address = pins_sound.at("i2c_address");
|
||||||
|
uint8_t pin_base = pins_sound.at("pin_base");
|
||||||
|
|
||||||
|
initialize_i2c_address(i2c_address, pin_base);
|
||||||
|
initialize_pins_output(pin_base, pins_sound.begin(), pins_sound.end());
|
||||||
|
|
||||||
|
CLOG(INFO, OUTPUT_LOGGER) << "Created SoundBoardPinController with i2c_address 0x" << std::hex << i2c_address << " and pin_base " << std::dec << pin_base;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9,9 +9,8 @@
|
|||||||
|
|
||||||
#include "output/OutputPinController.h"
|
#include "output/OutputPinController.h"
|
||||||
|
|
||||||
#include <output/items/detail/Sound.h>
|
|
||||||
|
|
||||||
#include <map>
|
#include <map>
|
||||||
|
|
||||||
namespace flippR_driver
|
namespace flippR_driver
|
||||||
{
|
{
|
||||||
namespace output
|
namespace output
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ Display<DigitCount>::Display(uint8_t address, uint8_t id) :
|
|||||||
address(address),
|
address(address),
|
||||||
id(id)
|
id(id)
|
||||||
{
|
{
|
||||||
|
CLOG(INFO, OUTPUT_LOGGER) << "Created display with id " << id << " and address " << address << ".";
|
||||||
}
|
}
|
||||||
|
|
||||||
template<int DigitCount>
|
template<int DigitCount>
|
||||||
|
|||||||
@@ -7,6 +7,8 @@
|
|||||||
|
|
||||||
#include "Lamp.h"
|
#include "Lamp.h"
|
||||||
|
|
||||||
|
#include "utility/config.h"
|
||||||
|
|
||||||
namespace flippR_driver
|
namespace flippR_driver
|
||||||
{
|
{
|
||||||
namespace output
|
namespace output
|
||||||
@@ -18,7 +20,9 @@ namespace detail
|
|||||||
|
|
||||||
Lamp::Lamp(std::shared_ptr<DriverBoardPinController> pin_controller, uint8_t address, std::string name) :
|
Lamp::Lamp(std::shared_ptr<DriverBoardPinController> pin_controller, uint8_t address, std::string name) :
|
||||||
DriverBoardItem(std::move(pin_controller), address, std::move(name)), activated(false)
|
DriverBoardItem(std::move(pin_controller), address, std::move(name)), activated(false)
|
||||||
{}
|
{
|
||||||
|
CLOG(INFO, OUTPUT_LOGGER) << "Created lamp " << name << " with address " << address;
|
||||||
|
}
|
||||||
|
|
||||||
void Lamp::activate()
|
void Lamp::activate()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -7,6 +7,8 @@
|
|||||||
|
|
||||||
#include "Solenoid.h"
|
#include "Solenoid.h"
|
||||||
|
|
||||||
|
#include "utility/config.h"
|
||||||
|
|
||||||
namespace flippR_driver
|
namespace flippR_driver
|
||||||
{
|
{
|
||||||
namespace output
|
namespace output
|
||||||
@@ -19,7 +21,9 @@ namespace detail
|
|||||||
Solenoid::Solenoid(std::shared_ptr<DriverBoardPinController> pin_controller, uint8_t address, std::string name, std::chrono::milliseconds deactivation_time)
|
Solenoid::Solenoid(std::shared_ptr<DriverBoardPinController> pin_controller, uint8_t address, std::string name, std::chrono::milliseconds deactivation_time)
|
||||||
:
|
:
|
||||||
DriverBoardItem(std::move(pin_controller), address, std::move(name)), deactivation_time(deactivation_time)
|
DriverBoardItem(std::move(pin_controller), address, std::move(name)), deactivation_time(deactivation_time)
|
||||||
{}
|
{
|
||||||
|
CLOG(INFO, OUTPUT_LOGGER) << "Created solenoid " << name << " with address " << address;
|
||||||
|
}
|
||||||
|
|
||||||
void Solenoid::triggerTask()
|
void Solenoid::triggerTask()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -9,6 +9,8 @@
|
|||||||
|
|
||||||
#include <output/SoundBoardPinController.h>
|
#include <output/SoundBoardPinController.h>
|
||||||
|
|
||||||
|
#include "utility/config.h"
|
||||||
|
|
||||||
namespace flippR_driver
|
namespace flippR_driver
|
||||||
{
|
{
|
||||||
namespace output
|
namespace output
|
||||||
@@ -21,7 +23,9 @@ namespace detail
|
|||||||
Sound::Sound(std::shared_ptr<SoundBoardPinController> pin_controller, uint8_t address, std::string name, std::chrono::milliseconds deactivation_time, u_int id)
|
Sound::Sound(std::shared_ptr<SoundBoardPinController> pin_controller, uint8_t address, std::string name, std::chrono::milliseconds deactivation_time, u_int id)
|
||||||
:
|
:
|
||||||
pin_controller(std::move(pin_controller)), Item(address, std::move(name)), deactivation_time(deactivation_time), id(id)
|
pin_controller(std::move(pin_controller)), Item(address, std::move(name)), deactivation_time(deactivation_time), id(id)
|
||||||
{}
|
{
|
||||||
|
CLOG(INFO, OUTPUT_LOGGER) << "Created sound " << id << " with name " << name << " and address " << address;
|
||||||
|
}
|
||||||
|
|
||||||
void Sound::play()
|
void Sound::play()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -36,7 +36,6 @@ el::Configurations createConfig(el::Level level)
|
|||||||
|
|
||||||
conf.setGlobally(el::ConfigurationType::ToStandardOutput, "false");
|
conf.setGlobally(el::ConfigurationType::ToStandardOutput, "false");
|
||||||
|
|
||||||
conf.setGlobally(el::ConfigurationType::)
|
|
||||||
conf.set(level, el::ConfigurationType::ToStandardOutput, "true");
|
conf.set(level, el::ConfigurationType::ToStandardOutput, "true");
|
||||||
conf.set(level, el::ConfigurationType::ToFile, "true");
|
conf.set(level, el::ConfigurationType::ToFile, "true");
|
||||||
conf.set(level, el::ConfigurationType::Filename, LOGGER_FILE);
|
conf.set(level, el::ConfigurationType::Filename, LOGGER_FILE);
|
||||||
|
|||||||
Reference in New Issue
Block a user