Skip to content

InscoperAPI/API/Base/Config/Config.h

Namespaces

Name
Inscoper
Inscoper namespace.

Classes

Name
class Inscoper::Config
Config class provides information for global configuration.

Source code

#ifndef CONFIG_H
#define CONFIG_H

#include <Base/Config/DeviceConfig.h>
#include <Shared/Log/ELogLevel.h>

#include <memory>

namespace Inscoper {

class INSCOPER_EXPORT Config {
public:
  Config();

  void fromXML(Inscoper::XMLNode &xml) INSCOPER_EXCEPTION;

  void toXML(Inscoper::XMLNode &xmlParent) INSCOPER_EXCEPTION;

  const std::vector<std::string> &getLibraryPaths() const;

  void setLibraryPaths(const std::vector<std::string> &libraryPaths);

  const std::vector<std::string> &getDriverList() const;

  const std::vector<Inscoper::DeviceConfigPtr> &getDeviceList() const;

  void setDeviceList(const std::vector<Inscoper::DeviceConfigPtr> &deviceList);

  void addDeviceConfig(const Inscoper::DeviceConfigPtr &device);

  const std::string &getConfigPath() const;

  void setConfigPath(const std::string &configPath);

private:
  // API Config
  std::string _configPath;
  std::vector<std::string> _libraryPaths;

  // Drivers
  std::vector<std::string> _driverList;

  // Devices
  std::vector<Inscoper::DeviceConfigPtr> _deviceList;
};

typedef std::shared_ptr<Config> ConfigPtr;

} // namespace Inscoper

#endif // CONFIG_H

Updated on 2026-09-03 at 12:14:17 +0200