Files
Jungfraujoch/broker/gen/model/Detector_status.cpp
2025-07-03 15:10:04 +02:00

200 lines
5.0 KiB
C++

/**
* 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_status.h"
#include "Helpers.h"
#include <sstream>
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<int64_t>& 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<int64_t>& 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<int64_t> Detector_status::getFpgaTempDegC() const
{
return m_Fpga_temp_degC;
}
void Detector_status::setFpgaTempDegC(std::vector<int64_t> const value)
{
m_Fpga_temp_degC = value;
}
std::vector<int64_t> Detector_status::getHighVoltageV() const
{
return m_High_voltage_V;
}
void Detector_status::setHighVoltageV(std::vector<int64_t> const value)
{
m_High_voltage_V = value;
}
} // namespace org::openapitools::server::model