LibLogicalAccess  2.5.0
An Open Source RFID Library
Loading...
Searching...
No Matches
desfireev1nfctag4cardservice.hpp
Go to the documentation of this file.
1
7#ifndef LOGICALACCESS_DESFIREEV1NFCTAG4CARDSERVICE_HPP
8#define LOGICALACCESS_DESFIREEV1NFCTAG4CARDSERVICE_HPP
9
12
13namespace logicalaccess
14{
15class DESFireChip;
16
17#define NFC_CARDSERVICE_DESFIREEV1 "DESFireEV1NFCTag4"
18
22class LLA_CARDS_DESFIRE_API DESFireEV1NFCTag4CardService
24{
25 public:
30 explicit DESFireEV1NFCTag4CardService(std::shared_ptr<Chip> chip)
32 {
33 }
34
36 {
37 }
38
39 std::string getCSType() override
40 {
42 }
43
44 void createNFCApplication(unsigned int aid, std::shared_ptr<DESFireKey> masterPICCKey,
45 unsigned short isoFIDApplication = 0xe105,
46 unsigned short isoFIDCapabilityContainer = 0xe103,
47 unsigned short isoFIDNDEFFile = 0xe104,
48 unsigned short NDEFFileSize = 0xff);
49
50 void deleteNFCApplication(unsigned int aid,
51 std::shared_ptr<DESFireKey> masterPICCKey) const;
52
53 std::shared_ptr<NdefMessage>
54 readNDEFFile(const ByteVector &appDFName = {0xD2, 0x76, 0x00, 0x00, 0x85, 0x01, 0x01},
55 unsigned short isoFIDNDEFFile = 0xe104) override;
56
57 void writeNDEF(std::shared_ptr<NdefMessage> records) override;
58
59 void eraseNDEF() override;
60
61 protected:
62 std::shared_ptr<DESFireEV1Chip> getDESFireChip() const
63 {
64 return std::dynamic_pointer_cast<DESFireEV1Chip>(getChip());
65 }
66
67 std::shared_ptr<ISO7816Commands> getISO7816Commands() const override;
68};
69}
70
71#endif /* LOGICALACCESS_DESFIRENFCTAG4CARDSERVICE_HPP */
The DESFire storage card service base class.
Definition: desfireev1nfctag4cardservice.hpp:24
std::shared_ptr< DESFireEV1Chip > getDESFireChip() const
Definition: desfireev1nfctag4cardservice.hpp:62
std::string getCSType() override
Definition: desfireev1nfctag4cardservice.hpp:39
~DESFireEV1NFCTag4CardService()
Definition: desfireev1nfctag4cardservice.hpp:35
DESFireEV1NFCTag4CardService(std::shared_ptr< Chip > chip)
Constructor.
Definition: desfireev1nfctag4cardservice.hpp:30
The ISO7816 NFC Tag 4 storage card service base class.
Definition: iso7816nfctag4cardservice.hpp:22
DESFire EV1 chip.
#define NFC_CARDSERVICE_DESFIREEV1
Definition: desfireev1nfctag4cardservice.hpp:17
NFC Tag 4 card service.
std::vector< uint8_t > ByteVector
Definition: lla_fwd.hpp:80
Definition: asn1.hpp:9