LibLogicalAccess  2.5.0
An Open Source RFID Library
Loading...
Searching...
No Matches
topazchip.hpp
Go to the documentation of this file.
1
7#ifndef LOGICALACCESS_TOPAZCHIP_H
8#define LOGICALACCESS_TOPAZCHIP_H
9
12#include <logicalaccess/plugins/cards/topaz/lla_cards_topaz_api.hpp>
13#include <string>
14#include <vector>
15#include <iostream>
16
17namespace logicalaccess
18{
19#define CHIP_TOPAZ "Topaz"
20
24class LLA_CARDS_TOPAZ_API TopazChip : public Chip
25{
26 public:
30 TopazChip();
31
35 virtual ~TopazChip();
36
41 std::string getGenericCardType() const override
42 {
43 return CHIP_TOPAZ;
44 }
45
50 std::shared_ptr<LocationNode> getRootLocationNode() override;
51
57 std::shared_ptr<CardService> getService(CardServiceType serviceType) override;
58
63 virtual unsigned short getNbBlocks(bool checkOnCard = false);
64
69 std::shared_ptr<AccessInfo> createAccessInfo() const override;
70
75 std::shared_ptr<Location> createLocation() const override;
76
81 std::shared_ptr<TopazCommands> getTopazCommands() const
82 {
83 return std::dynamic_pointer_cast<TopazCommands>(getCommands());
84 }
85
86 protected:
87 static void addBlockNode(std::shared_ptr<LocationNode> rootNode, int block);
88
89 void checkRootLocationNodeName(std::shared_ptr<LocationNode> rootNode);
90
91 unsigned short d_nbblocks;
92};
93}
94
95#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 Topaz base chip class.
Definition: topazchip.hpp:25
std::string getGenericCardType() const override
Get the generic card type.
Definition: topazchip.hpp:41
std::shared_ptr< TopazCommands > getTopazCommands() const
Get the Topaz commands.
Definition: topazchip.hpp:81
unsigned short d_nbblocks
Definition: topazchip.hpp:91
Definition: asn1.hpp:9
CardServiceType
The card services.
Definition: cardservice.hpp:35
#define CHIP_TOPAZ
Definition: topazchip.hpp:19
Topaz commands.