Go to the documentation of this file.
27 std::shared_ptr<DeviceConfigBase> profile);
35 void print(std::stringstream&
s,
int indention)
const override;
49 DeviceConfig(std::string type, std::string name, std::shared_ptr<DeviceConfigBase> profile);
54 const std::uint32_t productCode,
55 const std::uint32_t serialNumber);
63 std::list<std::reference_wrapper<DeviceConfigBase>>
68 void print(std::stringstream&
s,
int indention)
const override;
73 void addSlaveConfig(std::shared_ptr<SlaveConfig> slaveConfig);
75 void addSubDeviceConfig(
const std::string name,
76 std::shared_ptr<DeviceConfigBase> subDeviceConfig);
78 std::list<std::shared_ptr<SlaveConfig>> slaveConfigs;
79 std::map<std::string, std::shared_ptr<DeviceConfigBase>> subDeviceConfigs;
bool checkAllItemsRead(std::vector< std::string > &errors) const override
This method is called once the device has read the configuration data it needs.
void onParsingFinished() override
This method is called when the config is completely read form the HardwareConfig file.
~DeviceConfigBase()=default
friend class DeviceConfig
DeviceConfigBase(std::string type, std::string name)
std::list< std::reference_wrapper< DeviceConfigBase > > getSubDeviceConfigsWithType(const std::string subDeviceType)
void print(std::stringstream &s, int indention) const override
Print this configuration.
std::string getName() const
A base class that does not have Subdevices or Slaves but can be used for Subdevices or DeviceProfiles...
std::string getType() const
SlaveConfig & getOnlySlaveConfig()
SlaveConfig & getSlaveConfig(const std::uint32_t vendorID, const std::uint32_t productCode, const std::uint32_t serialNumber)
void print(std::stringstream &s, int indention) const override
Print this configuration.
The Config class is the base class of all specialized configurations that have a direct key -> value ...
double s(double t, double s0, double v0, double a0, double j)
DeviceConfigBase & getSubdeviceConfig(const std::string &subDeviceName)
Config with additional Config objects for controllers.