[FL-1063} LF-RFID Cli (#515)

* App lfrfid: update emulator to process external data.
* App lfrfid: cleanup emulator
* App lfrfid: cli interface
* Lib: arguments parser lib

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
SG
2021-06-10 21:53:59 +10:00
committed by GitHub
parent ced7d6315d
commit 4ad5245969
18 changed files with 372 additions and 63 deletions

View File

@@ -10,24 +10,18 @@
class RfidTimerEmulator {
public:
enum class Type : uint8_t {
EM,
HID_H10301,
Indala_40134,
};
RfidTimerEmulator();
~RfidTimerEmulator();
void start(Type type);
void start(LfrfidKeyType type, const uint8_t* data, uint8_t data_size);
void stop();
private:
EncoderGeneric* current_encoder = nullptr;
std::map<Type, EncoderGeneric*> encoders = {
{Type::EM, new EncoderEM()},
{Type::HID_H10301, new EncoderHID_H10301()},
{Type::Indala_40134, new EncoderIndala_40134()},
std::map<LfrfidKeyType, EncoderGeneric*> encoders = {
{LfrfidKeyType::KeyEM4100, new EncoderEM()},
{LfrfidKeyType::KeyH10301, new EncoderHID_H10301()},
{LfrfidKeyType::KeyI40134, new EncoderIndala_40134()},
};
PulseJoiner pulse_joiner;