/*
 * Lamp.h
 *
 *  Created on: Aug 7, 2018
 *      Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
 */

#ifndef _SRC_OUTPUT_ILAMP_H_
#define _SRC_OUTPUT_ILAMP_H_

#include "Item.h"

#include <chrono>

namespace flippR_driver
{
namespace output
{
namespace items
{

class Lamp : public virtual Item
{
public:
  virtual ~Lamp() = default;

  virtual void activate() = 0;
  virtual void deactivate() = 0;
  virtual bool is_activated() = 0;
  virtual std::chrono::milliseconds get_activation_time() const = 0;
};

}
}
}

#endif