AfRApay/AfRApay.MateCard/include/cardReader.h

35 lines
785 B
C++

#pragma once
#include <Arduino.h>
#include <MFRC522.h>
#include <rdm6300.h>
class CardReader {
public:
virtual bool canHaveUnstableIdentifier() = 0;
virtual bool isNewCardPresent() = 0;
virtual String getCardUid() = 0;
virtual void reset() = 0;
};
class MFRC522CardReader : public CardReader {
private:
MFRC522* iReader;
public:
explicit MFRC522CardReader(MFRC522* reader);
bool canHaveUnstableIdentifier() override;
bool isNewCardPresent() override;
String getCardUid() override;
void reset() override;
};
class RDM6300CardReader : public CardReader {
private:
Rdm6300* iReader;
public:
explicit RDM6300CardReader(Rdm6300* reader);
bool canHaveUnstableIdentifier() override;
bool isNewCardPresent() override;
String getCardUid() override;
void reset() override;
};