This repository has been archived on 2018-05-28. You can view files and clone it, but cannot push or open issues or pull requests.
BBB-Simple-ACS/client/access_controller.hpp

45 lines
652 B
C++

#pragma once
#include <acs-driver/gpio.hpp>
namespace boost {
namespace system {
class error_code;
}
}
namespace acs
{
class state;
class card_reader;
class oled_writer;
class await_timer;
class access_controller
{
state* state_;
gpio* extra_gpio_;
card_reader* reader_;
oled_writer* writer_;
await_timer* timer_;
void wait(unsigned duration);
void reset(const boost::system::error_code& ec);
public:
explicit access_controller();
void authorized();
void forbidden();
void force_reset_if_idle();
};
}