nfc_supported_card.c 703 B

123456789101112131415161718192021222324252627
  1. #include "nfc_supported_card.h"
  2. #include "troyka_parser.h"
  3. NfcSupportedCard nfc_supported_card[NfcSupportedCardTypeEnd] = {
  4. [NfcSupportedCardTypeTroyka] =
  5. {
  6. .protocol = NfcDeviceProtocolMifareClassic,
  7. .verify = troyka_parser_verify,
  8. .read = troyka_parser_read,
  9. .parse = troyka_parser_parse,
  10. },
  11. };
  12. bool nfc_supported_card_verify_and_parse(NfcDeviceData* dev_data) {
  13. furi_assert(dev_data);
  14. bool card_parsed = false;
  15. for(size_t i = 0; i < COUNT_OF(nfc_supported_card); i++) {
  16. if(nfc_supported_card[i].parse(dev_data)) {
  17. card_parsed = true;
  18. break;
  19. }
  20. }
  21. return card_parsed;
  22. }