Skip to main content
Version: 1.0.12

ecfacade::GenericDevice

Application handle for a device whose profile implements none of the typed capability contracts (not an Axis, [IoModule](/lxmaster/api/classes/IoModule), or Encoder) – e.g. More...

#include <generic_device.hpp>

Inherits from ecfacade::DeviceFacade

Public Functions

Name
DeviceFacade(ecdev::IEthercatDevice * device, std::string name)

Additional inherited members

Public Functions inherited from ecfacade::DeviceFacade

Name
const std::string &name() const
ENI/ESI slave name this handle maps to (for logs / UI).
ecdev::IDeviceProfile *deviceProfile() const
The underlying device-class profile, for advanced callers that bound a custom profile (e.g.
voidconfigure(ecdev::BringupState maxState)
Opt this device into a maximum bring-up state.
voidconfigure()
Convenience for the common "bring this device fully operational" case (configure(Op)).

Protected Attributes inherited from ecfacade::DeviceFacade

Name
std::stringname_
ecdev::IEthercatDevice *device_

Detailed Description

class ecfacade::GenericDevice;

Application handle for a device whose profile implements none of the typed capability contracts (not an Axis, [IoModule](/lxmaster/api/classes/IoModule), or Encoder) – e.g.

an EtherCAT IMU or any other vendor device modelled by a custom [ecdev::IDeviceProfile](/lxmaster/api/classes/IDeviceProfile).

It adds nothing beyond DeviceFacade: the generic device is reached via EcNetwork::devices(), brought to OPERATIONAL with configure(), and its custom profile is obtained with deviceProfile() (then recovered to the concrete profile type with a profileName()-guarded static_cast, RTTI-free, once at setup – see deviceProfile()). A device that also exposes a typed capability still appears here in addition to its typed list, so devices() is the complete set of profile-carrying slaves.

Public Functions Documentation

function DeviceFacade

DeviceFacade(
ecdev::IEthercatDevice * device,
std::string name
)

Updated on 2026-07-04 at 20:22:54 +0000