Leosac  0.7.0
OpenSourceAccessControl
SimpleWiegandStrategy.hpp
Go to the documentation of this file.
1 /*
2  Copyright (C) 2014-2016 Leosac
3 
4  This file is part of Leosac.
5 
6  Leosac is free software: you can redistribute it and/or modify
7  it under the terms of the GNU Affero General Public License as published by
8  the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  Leosac is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU Affero General Public License for more details.
15 
16  You should have received a copy of the GNU Affero General Public License
17  along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19 
20 #pragma once
21 
22 #include "CardReading.hpp"
23 
24 namespace Leosac
25 {
26 namespace Module
27 {
28 namespace Wiegand
29 {
30 namespace Strategy
31 {
36 {
37  public:
39 
40  virtual void timeout() override;
41 
42  virtual bool completed() const override;
43 
44  virtual void signal(zmqpp::socket &sock) override;
45 
46  virtual const std::string &get_card_id() const override;
47 
48  virtual int get_nb_bits() const override;
49 
50  virtual void reset() override;
51 
52  private:
53  bool ready_;
54  int nb_bits_;
55  std::string card_id_;
56 };
57 }
58 }
59 }
60 }
virtual void signal(zmqpp::socket &sock) override
Tells the strategy implementation to send a message to the application containing the received creden...
virtual void reset() override
Reset the strategy, meaning that the next time timeout() is called the behavior should be the same th...
An implementation class that represents a Wiegand Reader.
This is the header file for a generated source file, GitSHA1.cpp.
virtual int get_nb_bits() const override
Returns the number of bits in the card.
Implementation of a wiegand card only strategy.
virtual const std::string & get_card_id() const override
Returns the card id that was read.
Interface for a strategy that read a card number.
Definition: CardReading.hpp:39
virtual bool completed() const override
Did the strategy gather needed data? If this function returns true, that means that the strategy impl...
virtual void timeout() override
This is called when the module detect a timeout.