AgIsoStack++
A control-function-focused implementation of the major ISOBUS and J1939 protocols
Loading...
Searching...
No Matches
isobus_data_dictionary.hpp
Go to the documentation of this file.
1//================================================================================================
10//================================================================================================
11#ifndef ISOBUS_DATA_DICTIONARY_HPP
12#define ISOBUS_DATA_DICTIONARY_HPP
13
14#include <cstdint>
15#include <string>
16
17namespace isobus
18{
21 {
22 public:
24 struct Entry
25 {
26 const std::uint16_t ddi;
27
28 const std::string name;
29 const std::string units;
30 const float resolution;
31 };
32
37 static const Entry &get_entry(std::uint16_t dataDictionaryIdentifier);
38
39 private:
40#ifndef DISABLE_ISOBUS_DATA_DICTIONARY
41 static const Entry DDI_ENTRIES[715];
42#endif
43 static const Entry DEFAULT_ENTRY;
44 };
45} // namespace isobus
46
47#endif // ISOBUS_DATA_DICTIONARY_HPP
This class contains the definition of an auto-generated lookup of all ISOBUS DDIs.
static const Entry DDI_ENTRIES[715]
A lookup table of all DDI entries in ISO11783-11.
static const Entry DEFAULT_ENTRY
A default "unknown" DDI to return if a DDI is not in the database.
static const Entry & get_entry(std::uint16_t dataDictionaryIdentifier)
Checks the ISO 11783-11 database for the given DDI number and returns the corresponding entry if foun...
This namespace encompasses all of the ISO11783 stack's functionality to reduce global namespace pollu...
A struct containing the information for a single DDI.
const std::uint16_t ddi
The DDI number.
const float resolution
The resolution of the DDI.
const std::string units
The units of the DDI.
const std::string name
The name of the DDI.