/** * 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.26 * 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 "Zeromq_metadata_settings.h" #include "Helpers.h" #include namespace org::openapitools::server::model { Zeromq_metadata_settings::Zeromq_metadata_settings() { m_Enabled = true; m_Period_ms = 1000L; m_Socket_address = ""; m_Socket_addressIsSet = false; } void Zeromq_metadata_settings::validate() const { std::stringstream msg; if (!validate(msg)) { throw org::openapitools::server::helpers::ValidationException(msg.str()); } } bool Zeromq_metadata_settings::validate(std::stringstream& msg) const { return validate(msg, ""); } bool Zeromq_metadata_settings::validate(std::stringstream& msg, const std::string& pathPrefix) const { bool success = true; const std::string _pathPrefix = pathPrefix.empty() ? "Zeromq_metadata_settings" : pathPrefix; /* Period_ms */ { const int64_t& value = m_Period_ms; const std::string currentValuePath = _pathPrefix + ".periodMs"; if (value < 1ll) { success = false; msg << currentValuePath << ": must be greater than or equal to 1;"; } } return success; } bool Zeromq_metadata_settings::operator==(const Zeromq_metadata_settings& rhs) const { return (isEnabled() == rhs.isEnabled()) && (getPeriodMs() == rhs.getPeriodMs()) && ((!socketAddressIsSet() && !rhs.socketAddressIsSet()) || (socketAddressIsSet() && rhs.socketAddressIsSet() && getSocketAddress() == rhs.getSocketAddress())) ; } bool Zeromq_metadata_settings::operator!=(const Zeromq_metadata_settings& rhs) const { return !(*this == rhs); } void to_json(nlohmann::json& j, const Zeromq_metadata_settings& o) { j = nlohmann::json::object(); j["enabled"] = o.m_Enabled; j["period_ms"] = o.m_Period_ms; if(o.socketAddressIsSet()) j["socket_address"] = o.m_Socket_address; } void from_json(const nlohmann::json& j, Zeromq_metadata_settings& o) { j.at("enabled").get_to(o.m_Enabled); j.at("period_ms").get_to(o.m_Period_ms); if(j.find("socket_address") != j.end()) { j.at("socket_address").get_to(o.m_Socket_address); o.m_Socket_addressIsSet = true; } } bool Zeromq_metadata_settings::isEnabled() const { return m_Enabled; } void Zeromq_metadata_settings::setEnabled(bool const value) { m_Enabled = value; } int64_t Zeromq_metadata_settings::getPeriodMs() const { return m_Period_ms; } void Zeromq_metadata_settings::setPeriodMs(int64_t const value) { m_Period_ms = value; } std::string Zeromq_metadata_settings::getSocketAddress() const { return m_Socket_address; } void Zeromq_metadata_settings::setSocketAddress(std::string const& value) { m_Socket_address = value; m_Socket_addressIsSet = true; } bool Zeromq_metadata_settings::socketAddressIsSet() const { return m_Socket_addressIsSet; } void Zeromq_metadata_settings::unsetSocket_address() { m_Socket_addressIsSet = false; } } // namespace org::openapitools::server::model