LibLogicalAccess  2.5.0
An Open Source RFID Library
Loading...
Searching...
No Matches
mifareultralightchip.hpp
Go to the documentation of this file.
1
7#ifndef LOGICALACCESS_MIFAREULTRALIGHTCHIP_H
8#define LOGICALACCESS_MIFAREULTRALIGHTCHIP_H
9
12#include <logicalaccess/plugins/cards/mifareultralight/lla_cards_mifareultralight_api.hpp>
13#include <string>
14#include <vector>
15#include <iostream>
16
17namespace logicalaccess
18{
19#define CHIP_MIFAREULTRALIGHT "MifareUltralight"
20
24class LLA_CARDS_MIFAREULTRALIGHT_API MifareUltralightChip : public Chip
25{
26 public:
31
36 explicit MifareUltralightChip(std::string ct);
37
41 virtual ~MifareUltralightChip();
42
47 std::string getGenericCardType() const override
48 {
50 }
51
56 std::shared_ptr<LocationNode> getRootLocationNode() override;
57
63 std::shared_ptr<CardService> getService(CardServiceType serviceType) override;
64
69 virtual unsigned short getNbBlocks(bool checkOnCard = false);
70
75 std::shared_ptr<AccessInfo> createAccessInfo() const override;
76
81 std::shared_ptr<Location> createLocation() const override;
82
87 std::shared_ptr<MifareUltralightCommands> getMifareUltralightCommands() const
88 {
89 return std::dynamic_pointer_cast<MifareUltralightCommands>(getCommands());
90 }
91
92 protected:
93 static void addBlockNode(std::shared_ptr<LocationNode> rootNode, int block);
94
95 void checkRootLocationNodeName(std::shared_ptr<LocationNode> rootNode);
96
97 unsigned short d_nbblocks;
98};
99}
100
101#endif
Chip descriptor.
The base chip class for all chip. Each chip have is own object and providers according to himself and...
Definition: chip.hpp:37
The Mifare Ultralight base chip class.
Definition: mifareultralightchip.hpp:25
std::shared_ptr< MifareUltralightCommands > getMifareUltralightCommands() const
Get the Mifare Ultralight commands.
Definition: mifareultralightchip.hpp:87
unsigned short d_nbblocks
Definition: mifareultralightchip.hpp:97
std::string getGenericCardType() const override
Get the generic card type.
Definition: mifareultralightchip.hpp:47
#define CHIP_MIFAREULTRALIGHT
Definition: mifareultralightchip.hpp:19
Mifare Ultralight commands.
Definition: asn1.hpp:9
CardServiceType
The card services.
Definition: cardservice.hpp:35