//
// Created by rhetenor on 5/6/19.
//

#ifndef FLIPPR_DRIVER_DRIVERBOARDITEM_H
#define FLIPPR_DRIVER_DRIVERBOARDITEM_H

#include "output/items/DriverBoardItem.h"

#include <memory>

namespace flippR_driver
{
namespace output
{
namespace items
{
namespace detail
{

class DriverBoardItem : public output::items::DriverBoardItem
{
public:
  DriverBoardItem(std::shared_ptr<PinController> pin_controller, const uint8_t & address, const uint8_t & pin_base);

  ~DriverBoardItem() override = default;

  uint8_t get_address() const override;

protected:
  const uint8_t address;
};


}
}
}
}

#endif //FLIPPR_DRIVER_DRIVERBOARDITEM_H
