LibLogicalAccess  2.5.0
An Open Source RFID Library
Loading...
Searching...
No Matches
accesscontrolcardservice.hpp
Go to the documentation of this file.
1
7#ifndef LOGICALACCESS_ACCESSCONTROLCARDSERVICE_HPP
8#define LOGICALACCESS_ACCESSCONTROLCARDSERVICE_HPP
9
15
16namespace logicalaccess
17{
21typedef std::vector<std::shared_ptr<Format>> FormatList;
22
23
28{
32};
33
34#define ACCESSCONTROLCARDSERVICE "AccessControl"
35
39class LLA_CORE_API AccessControlCardService : public CardService
40{
41 public:
42 constexpr static const CardServiceType service_type_ = CST_ACCESS_CONTROL;
43
48 explicit AccessControlCardService(std::shared_ptr<Chip> chip);
49
54
55 std::string getCSType() override
56 {
58 }
59
67 virtual std::shared_ptr<Format> readFormat(std::shared_ptr<Format> format,
68 std::shared_ptr<Location> location,
69 std::shared_ptr<AccessInfo> aiToUse);
70
78 {
79 return last_signature_;
80 }
81
90 virtual bool writeFormat(std::shared_ptr<Format> format,
91 std::shared_ptr<Location> location,
92 std::shared_ptr<AccessInfo> aiToUse,
93 std::shared_ptr<AccessInfo> aiToWrite);
94
99 virtual FormatList getSupportedFormatList();
100
105 FormatList getHIDWiegandFormatList() const;
106
112 {
113 throw std::runtime_error("Not implemented");
114 }
115
122 virtual void writePACSBit(const ByteVector &pacsbits)
123 {
124 throw std::runtime_error("Not implemented");
125 }
126
127 protected:
129};
130}
131
132#endif
#define ACCESSCONTROLCARDSERVICE
Definition: accesscontrolcardservice.hpp:34
AccessInfo.
Card service.
The base access control card service class for all access control services.
Definition: accesscontrolcardservice.hpp:40
SignatureResult last_signature_
Definition: accesscontrolcardservice.hpp:128
virtual ByteVector getPACSBits(PACS_EXTRACTION_MODE)
Definition: accesscontrolcardservice.hpp:111
virtual void writePACSBit(const ByteVector &pacsbits)
Definition: accesscontrolcardservice.hpp:122
std::string getCSType() override
Definition: accesscontrolcardservice.hpp:55
SignatureResult IKS_getPayloadSignature() const
Definition: accesscontrolcardservice.hpp:77
The base card service class for all services.
Definition: cardservice.hpp:50
Format.
std::vector< uint8_t > ByteVector
Definition: lla_fwd.hpp:80
Location.
Definition: asn1.hpp:9
std::vector< std::shared_ptr< Format > > FormatList
A format list.
Definition: accesscontrolcardservice.hpp:21
PACS_EXTRACTION_MODE
Definition: accesscontrolcardservice.hpp:28
CardServiceType
The card services.
Definition: cardservice.hpp:35
@ CST_ACCESS_CONTROL
Definition: cardservice.hpp:37
Definition: RemoteCrypto.hpp:9