PROFINET IO Controller Stack 1.0.0
Modern C++ implementation of a PROFINET IO Controller stack
Loading...
Searching...
No Matches
profinet::gsdml::GSDMLModule Struct Reference

A GSDML module definition (ModuleItem), possibly offering multiple virtual submodules. More...

#include <gsdml.h>

+ Collaboration diagram for profinet::gsdml::GSDMLModule:

Public Attributes

std::string id
 GSDML ID attribute (used to resolve ModuleItemTarget references).
 
std::uint32_t moduleIdentNumber = 0
 Module ident number (hex value from the GSDML, parsed to an integer).
 
std::string name
 Human-readable module name (from the GSDML's Name/TextId, resolved via ExternalTextList).
 
std::map< std::string, GSDMLSubmodulesubmodules
 Virtual submodules this module offers, keyed by their GSDML ID.
 
std::vector< GSDMLSubmoduleReferencesubmoduleReferences
 References to globally defined SubmoduleItem definitions.
 
std::vector< int > physicalSubslots
 Physical subslots supported by this module.
 

Detailed Description

A GSDML module definition (ModuleItem), possibly offering multiple virtual submodules.

Definition at line 83 of file gsdml.h.

Member Data Documentation

◆ id

std::string profinet::gsdml::GSDMLModule::id

GSDML ID attribute (used to resolve ModuleItemTarget references).

Definition at line 86 of file gsdml.h.

Referenced by profinet::gsdml::GSDMLDevice::BuildIoSlots(), and profinet::gsdml::ParseGsdmlString().

◆ moduleIdentNumber

std::uint32_t profinet::gsdml::GSDMLModule::moduleIdentNumber = 0

Module ident number (hex value from the GSDML, parsed to an integer).

Definition at line 88 of file gsdml.h.

Referenced by profinet::gsdml::ParseGsdmlString().

◆ name

std::string profinet::gsdml::GSDMLModule::name

Human-readable module name (from the GSDML's Name/TextId, resolved via ExternalTextList).

Definition at line 90 of file gsdml.h.

Referenced by profinet::gsdml::ParseGsdmlString().

◆ physicalSubslots

std::vector<int> profinet::gsdml::GSDMLModule::physicalSubslots

Physical subslots supported by this module.

Definition at line 106 of file gsdml.h.

Referenced by profinet::gsdml::ParseGsdmlString().

◆ submoduleReferences

std::vector<GSDMLSubmoduleReference> profinet::gsdml::GSDMLModule::submoduleReferences

References to globally defined SubmoduleItem definitions.

Other GSDML files, such as Phoenix Contact GSDMLs, use UseableSubmodules/SubmoduleItemRef and define the actual submodules separately in SubmoduleList.

Definition at line 103 of file gsdml.h.

Referenced by profinet::gsdml::GSDMLDevice::BuildIoSlots(), and profinet::gsdml::ParseGsdmlString().

◆ submodules

std::map<std::string, GSDMLSubmodule> profinet::gsdml::GSDMLModule::submodules

Virtual submodules this module offers, keyed by their GSDML ID.

Some GSDML files define the submodules directly under the module using VirtualSubmoduleList.

Definition at line 96 of file gsdml.h.

Referenced by profinet::gsdml::GSDMLDevice::BuildIoSlots(), and profinet::gsdml::ParseGsdmlString().


The documentation for this struct was generated from the following file: