still great refactor

This commit is contained in:
Jonas Zeunert
2018-12-14 01:58:05 +01:00
parent 2aee0f4f9d
commit 67edde9078
22 changed files with 243 additions and 190 deletions

View File

@@ -11,26 +11,31 @@ namespace output
namespace impl
{
void DriverBoardPinController::activate(items::DriverBoardItem *driver_board_item)
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))
{
std::lock_guard<std::mutex> guard(output_item_mutex);
write_driver_board_address(driver_board_item->get_address());
}
void DriverBoardPinController::activate(items::DriverBoardItem &driver_board_item)
{
std::lock_guard<std::mutex> guard(*output_item_mutex);
write_driver_board_address(driver_board_item.get_address());
write_data(true);
}
void DriverBoardPinController::deactivate(items::DriverBoardItem *driver_board_item)
void DriverBoardPinController::deactivate(items::DriverBoardItem &driver_board_item)
{
std::lock_guard<std::mutex> guard(output_item_mutex);
std::lock_guard<std::mutex> guard(*output_item_mutex);
write_driver_board_address(driver_board_item->get_address());
write_driver_board_address(driver_board_item.get_address());
write_data(false);
}
void DriverBoardPinController::write_driver_board_address(uint8_t address)
{
int latch = address / 8;