Skip to content

InscoperAPI/API/Base/Diag/DiagResults.h

Namespaces

Name
Inscoper
Inscoper namespace.

Classes

Name
class Inscoper::DiagResults
DiagResults class contains the results from a device diagnostic.

Source code

#ifndef DIAGRESULTS_H
#define DIAGRESULTS_H

#include <Base/Config/DriverConfig.h>
#include <Base/Device/EFunctionType.h>
#include <Base/Diag/CameraDiagInfo.h>
#include <Base/Diag/Constraint.h>
#include <Base/Diag/EFunctionStatus.h>
#include <Base/Diag/ESubDeviceStatus.h>
#include <Global.h>

#include <map>
#include <memory>

namespace Inscoper {

class INSCOPER_EXPORT DiagResults {
public:
  DiagResults();

  ~DiagResults();

  void setSubDeviceStatus(const std::map<unsigned short, Inscoper::ESubDeviceStatus> &statusMap);

  Inscoper::ESubDeviceStatus getSubDeviceStatus(unsigned short subDeviceTag);

  Inscoper::EFunctionStatus getFunctionStatus(unsigned short subDeviceTag, Inscoper::EFunctionType functionType);

  Inscoper::ConstraintPtr getParamConstraint(unsigned short paramTag);

  std::map<unsigned short, Inscoper::ESubDeviceStatus> getSubDeviceStatusMap();

  std::map<unsigned short, Inscoper::ConstraintPtr> getParamConstraintMap();

  void addParamConstraint(unsigned short paramTag, const Inscoper::ConstraintPtr &constraint);

  void addFunctionStatus(unsigned short subDeviceTag, Inscoper::EFunctionType functionType,
                         Inscoper::EFunctionStatus functionStatus);

  const std::string &getName() const;

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

  const Inscoper::DriverConfigPtr &getDriverConfig() const;

  void setDriverConfig(const Inscoper::DriverConfigPtr &driverConfig);

  const Inscoper::CameraDiagInfoPtr &getCameraDiagInfo() const;

  void setCameraDiagInfo(const Inscoper::CameraDiagInfoPtr &cameraDiagInfo);

private:
  std::map<unsigned short, Inscoper::ESubDeviceStatus> _statusMap;
  std::map<unsigned short, Inscoper::ConstraintPtr> _constraintMap;
  std::map<unsigned short, std::map<Inscoper::EFunctionType, Inscoper::EFunctionStatus>> _functionMap;

  std::string _name;
  Inscoper::DriverConfigPtr _driverConfig;
  Inscoper::CameraDiagInfoPtr _cameraDiagInfo;
};

typedef std::shared_ptr<DiagResults> DiagResultsPtr;

} // namespace Inscoper

#endif // DIAGRESULTS_H

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