27 template <
unsigned int NbBits>
    32     , pin_timeout_(pin_timeout)
    33     , pin_end_key_(pin_end_key)
    39 template <
unsigned int NbBits>
    50     DEBUG(
"Buffer value = " << (
unsigned int)input);
    52     for (
int i = 0; i < 4; ++i)
    54         bool v = ((input >> (7 - i)) & 0x01);
    67         return std::to_string(n).at(0);
    70 template <
unsigned int NbBits>
    73     static_assert(NbBits == 4 || NbBits == 8,
    74                   "Must either be 4 or 8 bits per key pressed");
    77         duration_cast<milliseconds>(system_clock::now() - 
last_update_);
    88         WARN(
"Expected number of bits invalid. ("   105 template <
unsigned int NbBits>
   114 template <
unsigned int NbBits>
   120 template <
unsigned int NbBits>
   133 template <
unsigned int NbBits>
   139 template <
unsigned int NbBits>
 virtual void timeout() override
This is called when the module detect a timeout. 
 
virtual void signal(zmqpp::socket &sock) override
Tells the strategy implementation to send a message to the application containing the received creden...
 
An implementation class that represents a Wiegand Reader. 
 
Interface for a strategy that read a PIN code. 
 
This is the header file for a generated source file, GitSHA1.cpp. 
 
virtual bool completed() const override
Did the strategy gather needed data? If this function returns true, that means that the strategy impl...
 
WiegandReaderImpl * reader_
 
Strategy for ready PIN only. 
 
int counter() const
Returns the number of bits read. 
 
WiegandPinNBitsOnly(WiegandReaderImpl *reader, std::chrono::milliseconds pin_timeout, char pin_end_key)
Create a strategy that read N bits-per-key PIN code. 
 
virtual const std::string & get_pin() const override
Retrieve the pin code that was read from the reader. 
 
bool ready_
Are we ready to submit the PIN code ? 
 
char extract_from_raw(uint8_t input) const
Extract the character that was pressed from raw data. 
 
Message formatting when using a simple PIN code. 
 
virtual void reset() override
Reset the strategy, meaning that the next time timeout() is called the behavior should be the same th...
 
std::chrono::milliseconds pin_timeout_
 
void read_reset()
Reset the "read state" of the reader, effectively cleaning the wiegand-bit-buffer and resetting the c...
 
Provide support for Wiegand devices. 
 
void end_of_input()
Timeout or pin_end_key read. 
 
const unsigned char * buffer() const
Return a pointer to internal buffer memory. 
 
const std::string & name() const
Returns the name of this reader.