/** * 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.58 * 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_power_state.h" #include "Helpers.h" #include #include namespace org::openapitools::server::model { Detector_power_state::Detector_power_state() { } void Detector_power_state::validate() const { std::stringstream msg; if (!validate(msg)) { throw org::openapitools::server::helpers::ValidationException(msg.str()); } } bool Detector_power_state::validate(std::stringstream& msg) const { return validate(msg, ""); } bool Detector_power_state::validate(std::stringstream& msg, const std::string& pathPrefix) const { bool success = true; const std::string _pathPrefix = pathPrefix.empty() ? "Detector_power_state" : pathPrefix; if (m_value == Detector_power_state::eDetector_power_state::INVALID_VALUE_OPENAPI_GENERATED) { success = false; msg << _pathPrefix << ": has no value;"; } return success; } bool Detector_power_state::operator==(const Detector_power_state& rhs) const { return getValue() == rhs.getValue() ; } bool Detector_power_state::operator!=(const Detector_power_state& rhs) const { return !(*this == rhs); } void to_json(nlohmann::json& j, const Detector_power_state& o) { j = nlohmann::json::object(); switch (o.getValue()) { case Detector_power_state::eDetector_power_state::INVALID_VALUE_OPENAPI_GENERATED: j = "INVALID_VALUE_OPENAPI_GENERATED"; break; case Detector_power_state::eDetector_power_state::POWERON: j = "PowerOn"; break; case Detector_power_state::eDetector_power_state::POWEROFF: j = "PowerOff"; break; case Detector_power_state::eDetector_power_state::PARTIAL: j = "Partial"; break; } } void from_json(const nlohmann::json& j, Detector_power_state& o) { auto s = j.get(); if (s == "PowerOn") { o.setValue(Detector_power_state::eDetector_power_state::POWERON); } else if (s == "PowerOff") { o.setValue(Detector_power_state::eDetector_power_state::POWEROFF); } else if (s == "Partial") { o.setValue(Detector_power_state::eDetector_power_state::PARTIAL); } else { std::stringstream ss; ss << "Unexpected value " << s << " in json" << " cannot be converted to enum of type" << " Detector_power_state::eDetector_power_state"; throw std::invalid_argument(ss.str()); } } Detector_power_state::eDetector_power_state Detector_power_state::getValue() const { return m_value; } void Detector_power_state::setValue(Detector_power_state::eDetector_power_state value) { m_value = value; } } // namespace org::openapitools::server::model