Motion Master 6.0.0-alpha.86
Next-generation motion control software
Loading...
Searching...
No Matches
esi_entry.cc File Reference
#include "etg/esi_entry.h"
#include <algorithm>
#include <format>
#include <map>
#include <nlohmann/json.hpp>
#include <string>
#include <string_view>
#include <unordered_map>
#include <utility>
#include <vector>
#include "core/util.h"
Include dependency graph for esi_entry.cc:

Namespaces

namespace  mm
 
namespace  mm::etg
 

Functions

std::expected< EsiEntryTable, std::string > mm::etg::buildDeviceEntries (const EsiFile &file, const EsiDevice &device, const EsiEntryOptions &options={})
 Expands a device into a flat, slot-merged vector of object-dictionary entries.
 
void mm::etg::to_json (nlohmann::json &j, const EsiEnumOption &v)
 Serialises an entry to JSON. Raw byte vectors are emitted as uppercase hexBinary strings, the same spelling the ESI itself uses; absent optionals are omitted.
 
void mm::etg::to_json (nlohmann::json &j, const EsiEntrySource &v)
 
void mm::etg::to_json (nlohmann::json &j, const EsiEntry &v)
 
void mm::etg::to_json (nlohmann::json &j, const EsiEntryTable &v)
 

Variable Documentation

◆ bitOffset

uint16_t bitOffset = 0

◆ bitSize

uint16_t bitSize = 0

◆ completeAccessDefault

bool completeAccessDefault = false

◆ count

std::size_t count = 0

◆ dictionary

const EsiDictionary* dictionary = nullptr

◆ entryName

std::string entryName

◆ entryProperties

const std::vector<Property>* entryProperties = nullptr

Overrides flagSource's, if set.

◆ firstIndex

uint16_t firstIndex = 0

◆ firstSubindex

uint8_t firstSubindex = 0

◆ flagSource

const EsiDataType::SubItem* flagSource = nullptr

Flags + per-entry properties.

◆ indexOffset

uint32_t indexOffset = 0

◆ info

const EsiObject::Info* info = nullptr

Value metadata, may be null.

◆ label

std::string label

For warning messages: "device" or "module 0x04020001 slot 1".

◆ moduleOverride

bool moduleOverride = false

◆ origin

EsiEntrySource origin

◆ pdoIndexOffset

uint32_t pdoIndexOffset = 0

◆ sources

std::vector<std::string> sources

◆ subindex

uint8_t subindex = 0

◆ typeName

std::string_view typeName

◆ types

std::unordered_map<std::string_view, const EsiDataType*> types