Skip to content

InscoperAPI/API/Base/Config/SubDeviceGroupConfig.h

Namespaces

Name
Inscoper
Inscoper namespace.

Classes

Name
class Inscoper::SubDeviceGroupConfig
SubDeviceGroupConfig class provides information for sub-device group configuration.

Source code

#ifndef SUBDEVICEGROUPCONFIG_H
#define SUBDEVICEGROUPCONFIG_H

#include <Base/Config/SubDeviceConfig.h>

#include <NBO/NBO/ENBOType.h>

#include <memory>
#include <string>
#include <vector>

namespace Inscoper {

class INSCOPER_EXPORT SubDeviceGroupConfig {
public:
  SubDeviceGroupConfig();

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

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

  const std::string &getName() const;

  void setName(const std::string &name);

  unsigned short getTag() const;

  void setTag(unsigned short tag);

  Inscoper::NBO::ENBOType getNBOType() const;

  bool hasNBOType() const;

  void setNBOType(Inscoper::NBO::ENBOType nboType);

  void unsetNBOType();

  const std::vector<Inscoper::SubDeviceConfigPtr> &getSubDeviceConfigList() const;

  void setSubDeviceConfigList(const std::vector<Inscoper::SubDeviceConfigPtr> &subDevices);

  void addSubDeviceConfig(const Inscoper::SubDeviceConfigPtr &subDevice);

private:
  std::string _name;
  unsigned short _tag;
  Inscoper::NBO::ENBOType _nboType;
  bool _hasNBOType;
  std::vector<Inscoper::SubDeviceConfigPtr> _subDevices;
};

typedef std::shared_ptr<SubDeviceGroupConfig> SubDeviceGroupConfigPtr;

} // namespace Inscoper

#endif // SUBDEVICEGROUPCONFIG_H

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