Files
flippr-code/FlippR-Driver/src/output/items/detail/Flipper.cpp
2019-07-15 23:59:46 +02:00

54 lines
1.0 KiB
C++

/*
* Flipper.cpp
*
* Created on: May 6, 2019
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#include "Flipper.h"
#include "../DriverBoardItem.h"
#include "utility/config.h"
namespace flippR_driver
{
namespace output
{
namespace items
{
namespace detail
{
Flipper::Flipper(std::shared_ptr<DriverBoardPinController> pin_controller, const uint8_t & address, const uint8_t & pin_base, const std::string & name) :
Item(std::move(name)), DriverBoardItem(pin_controller, address, pin_base), pin_controller(std::move(pin_controller))
{
CLOG(INFO, OUTPUT_LOGGER) << "Created Flipper relay " << this->name << " with address " << this->address;
}
Flipper::~Flipper()
{
this->deactivate();
}
void Flipper::activate()
{
CLOG(INFO, OUTPUT_LOGGER) << "Flipper " << name << "activated";
this->pin_controller->activate(*this);
}
void Flipper::deactivate()
{
CLOG(INFO, OUTPUT_LOGGER) << "Flipper " << name << "deactivated";
this->pin_controller->deactivate(*this);
}
bool Flipper::is_activated()
{
return this->is_activated();
}
}
}
}
}