|
LibLogicalAccess
2.5.0
An Open Source RFID Library
|
A data field base class. More...
#include <datafield.hpp>
Public Member Functions | |
| DataField () | |
| Constructor. | |
| virtual | ~DataField () |
| Destructor. | |
| virtual unsigned int | getDataLength () const |
| Get data length in bits. | |
| virtual void | setPosition (unsigned int position) |
| Set the field position in bits. | |
| unsigned int | getPosition () const |
| Get the field position in bits. | |
| virtual DataFieldType | getDFType () const =0 |
| Get the field type. | |
| void | setName (const std::string &name) |
| Set the field name. | |
| std::string | getName () const |
| Get the field name. | |
| virtual BitsetStream | getLinearData (const BitsetStream &data) const =0 |
| Get linear data. | |
| virtual void | setLinearData (const ByteVector &data)=0 |
| Set linear data. | |
| virtual bool | checkSkeleton (std::shared_ptr< DataField > field) const =0 |
| Check the current field skeleton with another field. | |
| void | serialize (boost::property_tree::ptree &parentNode) override |
| Serialize the current object to XML. | |
| void | unSerialize (boost::property_tree::ptree &node) override |
| UnSerialize a XML node to the current object. | |
Public Member Functions inherited from logicalaccess::XmlSerializable | |
| virtual | ~XmlSerializable ()=default |
| virtual std::string | serialize () |
| Serialize object to Xml Node string. | |
| virtual std::string | serializeWithHeaders () |
| Serialize object to Xml Node string, with xml headers. | |
| virtual void | serialize (boost::property_tree::ptree &parentNode)=0 |
| Serialize object to Xml Node. | |
| virtual void | serializeToFile (const std::string &filename) |
| Serialize object to a Xml file. | |
| virtual void | unSerialize (boost::property_tree::ptree &node)=0 |
| UnSerialize object from a Xml Node. | |
| virtual void | unSerialize (const std::string &xmlstring, const std::string &rootNode) |
| UnSerialize object from a Xml Node string. | |
| virtual void | unSerialize (std::istream &is, const std::string &rootNode) |
| UnSerialize object from a Xml node. | |
| virtual void | unSerialize (boost::property_tree::ptree &node, const std::string &rootNode) |
| UnSerialize object from a Xml node. | |
| virtual void | unSerializeFromFile (const std::string &filename) |
| UnSerialize object from a Xml file. | |
| virtual std::string | getDefaultXmlNodeName () const =0 |
| Get the default Xml Node name for this object. | |
Protected Attributes | |
| std::string | d_name |
| The field name. | |
| unsigned int | d_length |
| The field length in bits. | |
| unsigned int | d_position |
| The field position in bits. | |
Additional Inherited Members | |
Static Public Member Functions inherited from logicalaccess::XmlSerializable | |
| static std::string | removeXmlDeclaration (const std::string &xmlstring) |
| Remove Xml declaration from a xml string. | |
| static ByteVector | formatHexString (std::string hexstr) |
| Format hex string to hex string with space. | |
Static Protected Member Functions inherited from logicalaccess::XmlSerializable | |
| static unsigned long long | atoull (const std::string &str) |
A data field base class.
| logicalaccess::DataField::DataField | ( | ) |
Constructor.
|
virtual |
Destructor.
|
pure virtual |
Check the current field skeleton with another field.
| field | The field to check. |
Implemented in logicalaccess::BinaryDataField, logicalaccess::NumberDataField, logicalaccess::ParityDataField, logicalaccess::StringDataField, and logicalaccess::TLVDataField.
|
virtual |
Get data length in bits.
|
pure virtual |
Get the field type.
Implemented in logicalaccess::BinaryDataField, logicalaccess::ChecksumDataField, logicalaccess::NumberDataField, logicalaccess::ParityDataField, logicalaccess::StringDataField, logicalaccess::TLVDataField, and logicalaccess::ValueDataField.
|
pure virtual |
Get linear data.
Implemented in logicalaccess::BinaryDataField, logicalaccess::ChecksumDataField, logicalaccess::NumberDataField, logicalaccess::ParityDataField, logicalaccess::StringDataField, and logicalaccess::TLVDataField.
| std::string logicalaccess::DataField::getName | ( | ) | const |
Get the field name.
| unsigned int logicalaccess::DataField::getPosition | ( | ) | const |
Get the field position in bits.
|
overridevirtual |
Serialize the current object to XML.
| parentNode | The parent node. |
Implements logicalaccess::XmlSerializable.
Reimplemented in logicalaccess::NumberDataField, logicalaccess::ParityDataField, logicalaccess::StringDataField, logicalaccess::TLVDataField, and logicalaccess::ValueDataField.
|
pure virtual |
Set linear data.
| data | Where to get data |
Implemented in logicalaccess::ChecksumDataField, logicalaccess::BinaryDataField, logicalaccess::NumberDataField, logicalaccess::ParityDataField, logicalaccess::StringDataField, and logicalaccess::TLVDataField.
| void logicalaccess::DataField::setName | ( | const std::string & | name | ) |
Set the field name.
| name | The field name. |
|
virtual |
Set the field position in bits.
| position | The field position in bits. |
Reimplemented in logicalaccess::ParityDataField, and logicalaccess::TLVDataField.
|
overridevirtual |
UnSerialize a XML node to the current object.
| node | The XML node. |
Implements logicalaccess::XmlSerializable.
Reimplemented in logicalaccess::NumberDataField, logicalaccess::ParityDataField, logicalaccess::StringDataField, logicalaccess::TLVDataField, and logicalaccess::ValueDataField.
|
protected |
The field length in bits.
|
protected |
The field name.
|
protected |
The field position in bits.
1.9.6