/** * Jungfraujoch * API to control Jungfraujoch developed by the Paul Scherrer Institute (Switzerland). Jungfraujoch is a data acquisition and analysis system for pixel array detectors, primarly PSI JUNGFRAU. Jungfraujoch uses FPGA boards to acquire data at high data rates. * * The version of the OpenAPI document: 1.0.0-rc.39 * Contact: filip.leonarski@psi.ch * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ #include "Detector_status.h" #include "Helpers.h" #include namespace org::openapitools::server::model { Detector_status::Detector_status() { m_Server_version = ""; m_Number_of_triggers_left = 0L; } void Detector_status::validate() const { std::stringstream msg; if (!validate(msg)) { throw org::openapitools::server::helpers::ValidationException(msg.str()); } } bool Detector_status::validate(std::stringstream& msg) const { return validate(msg, ""); } bool Detector_status::validate(std::stringstream& msg, const std::string& pathPrefix) const { bool success = true; const std::string _pathPrefix = pathPrefix.empty() ? "Detector_status" : pathPrefix; /* Fpga_temp_degC */ { const std::vector& value = m_Fpga_temp_degC; const std::string currentValuePath = _pathPrefix + ".fpgaTempDegC"; { // Recursive validation of array elements const std::string oldValuePath = currentValuePath; int i = 0; for (const int64_t& value : value) { const std::string currentValuePath = oldValuePath + "[" + std::to_string(i) + "]"; i++; } } } /* High_voltage_V */ { const std::vector& value = m_High_voltage_V; const std::string currentValuePath = _pathPrefix + ".highVoltageV"; { // Recursive validation of array elements const std::string oldValuePath = currentValuePath; int i = 0; for (const int64_t& value : value) { const std::string currentValuePath = oldValuePath + "[" + std::to_string(i) + "]"; i++; } } } return success; } bool Detector_status::operator==(const Detector_status& rhs) const { return (getState() == rhs.getState()) && (getPowerchip() == rhs.getPowerchip()) && (getServerVersion() == rhs.getServerVersion()) && (getNumberOfTriggersLeft() == rhs.getNumberOfTriggersLeft()) && (getFpgaTempDegC() == rhs.getFpgaTempDegC()) && (getHighVoltageV() == rhs.getHighVoltageV()) ; } bool Detector_status::operator!=(const Detector_status& rhs) const { return !(*this == rhs); } void to_json(nlohmann::json& j, const Detector_status& o) { j = nlohmann::json::object(); j["state"] = o.m_State; j["powerchip"] = o.m_Powerchip; j["server_version"] = o.m_Server_version; j["number_of_triggers_left"] = o.m_Number_of_triggers_left; j["fpga_temp_degC"] = o.m_Fpga_temp_degC; j["high_voltage_V"] = o.m_High_voltage_V; } void from_json(const nlohmann::json& j, Detector_status& o) { j.at("state").get_to(o.m_State); j.at("powerchip").get_to(o.m_Powerchip); j.at("server_version").get_to(o.m_Server_version); j.at("number_of_triggers_left").get_to(o.m_Number_of_triggers_left); j.at("fpga_temp_degC").get_to(o.m_Fpga_temp_degC); j.at("high_voltage_V").get_to(o.m_High_voltage_V); } org::openapitools::server::model::Detector_state Detector_status::getState() const { return m_State; } void Detector_status::setState(org::openapitools::server::model::Detector_state const& value) { m_State = value; } org::openapitools::server::model::Detector_power_state Detector_status::getPowerchip() const { return m_Powerchip; } void Detector_status::setPowerchip(org::openapitools::server::model::Detector_power_state const& value) { m_Powerchip = value; } std::string Detector_status::getServerVersion() const { return m_Server_version; } void Detector_status::setServerVersion(std::string const& value) { m_Server_version = value; } int64_t Detector_status::getNumberOfTriggersLeft() const { return m_Number_of_triggers_left; } void Detector_status::setNumberOfTriggersLeft(int64_t const value) { m_Number_of_triggers_left = value; } std::vector Detector_status::getFpgaTempDegC() const { return m_Fpga_temp_degC; } void Detector_status::setFpgaTempDegC(std::vector const value) { m_Fpga_temp_degC = value; } std::vector Detector_status::getHighVoltageV() const { return m_High_voltage_V; } void Detector_status::setHighVoltageV(std::vector const value) { m_High_voltage_V = value; } } // namespace org::openapitools::server::model