LibLogicalAccess  2.5.0
An Open Source RFID Library
Loading...
Searching...
No Matches
lockcontroltlv.hpp
Go to the documentation of this file.
1
7#ifndef LOGICALACCESS_LOCKCONTROLTLV_HPP
8#define LOGICALACCESS_LOCKCONTROLTLV_HPP
9
11#include <cmath>
12
13namespace logicalaccess
14{
15 class LLA_CORE_API LockControlTlv : public NfcData
16 {
17 public:
20 LockControlTlv(int ad, unsigned char nodlb = 0x10, unsigned char blplb = 0x04);
22 int getAdditionalDataSize() const;
23 void setAdditionalDataSize(int additionalDataSize);
24 unsigned char getNumberOfDynamicLockBits() const;
25 void setNumberOfDynamicLockBits(unsigned char numberOfDynamicLockBits);
26 unsigned char getBytesLockedPerLockBit() const;
27 void setBytesLockedPerLockBit(unsigned char bytesLockedPerLockBit);
28 unsigned char getBytesPerPage() const;
29 void setBytesPerPage(unsigned char bytesPerPage);
30 unsigned char getOffset() const;
31 void setOffest(unsigned char offset);
32 unsigned char getPageAddr() const;
33 void setPageAddr(unsigned char pageAddr);
34 unsigned char getDynamicLockBytesPosition() const;
35 void setDynamicLockBytesPosition(unsigned char dynamicLockBytesPosition);
36
37 void serialize(boost::property_tree::ptree &parentNode) override;
38 void unSerialize(boost::property_tree::ptree &node) override;
39 std::string getDefaultXmlNodeName() const override;
40
41 static std::shared_ptr<LockControlTlv> tlvToLockControl(ByteVector tlv);
42
43 static ByteVector lockControlToTLV(std::shared_ptr<LockControlTlv> data);
44 private:
45 void calculateLockPosition();
49 unsigned char _bytesPerPage;
50 unsigned char _offset;
51 unsigned char _pageAddr;
53
54 };
55}
56
57#endif
Definition: lockcontroltlv.hpp:16
int _additionalDataSize
Definition: lockcontroltlv.hpp:46
unsigned char _pageAddr
Definition: lockcontroltlv.hpp:51
unsigned char _bytesLockedPerLockBit
Definition: lockcontroltlv.hpp:48
unsigned char _bytesPerPage
Definition: lockcontroltlv.hpp:49
unsigned char _dynamicLockBytesPosition
Definition: lockcontroltlv.hpp:52
unsigned char _numberOfDynamicLockBits
Definition: lockcontroltlv.hpp:47
unsigned char _offset
Definition: lockcontroltlv.hpp:50
Definition: nfcdata.hpp:16
std::vector< uint8_t > ByteVector
Definition: lla_fwd.hpp:80
Definition: asn1.hpp:9