340 lines
10 KiB
C++
340 lines
10 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.25
|
|
* 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 "Image_format_settings.h"
|
|
#include "Helpers.h"
|
|
|
|
#include <sstream>
|
|
|
|
namespace org::openapitools::server::model
|
|
{
|
|
|
|
Image_format_settings::Image_format_settings()
|
|
{
|
|
m_Summation = false;
|
|
m_Geometry_transform = false;
|
|
m_Jungfrau_conversion = false;
|
|
m_Jungfrau_conversion_factor_keV = 0.0f;
|
|
m_Jungfrau_conversion_factor_keVIsSet = false;
|
|
m_Bit_depth_image = 0L;
|
|
m_Bit_depth_imageIsSet = false;
|
|
m_Signed_output = false;
|
|
m_Signed_outputIsSet = false;
|
|
m_Mask_module_edges = true;
|
|
m_Mask_chip_edges = true;
|
|
m_Jungfrau_mask_pixels_without_g0 = true;
|
|
m_Jungfrau_mask_pixels_without_g0IsSet = false;
|
|
m_Apply_mask = false;
|
|
m_Jungfrau_pedestal_g0_rms_limit = 100L;
|
|
m_Jungfrau_pedestal_g0_rms_limitIsSet = false;
|
|
|
|
}
|
|
|
|
void Image_format_settings::validate() const
|
|
{
|
|
std::stringstream msg;
|
|
if (!validate(msg))
|
|
{
|
|
throw org::openapitools::server::helpers::ValidationException(msg.str());
|
|
}
|
|
}
|
|
|
|
bool Image_format_settings::validate(std::stringstream& msg) const
|
|
{
|
|
return validate(msg, "");
|
|
}
|
|
|
|
bool Image_format_settings::validate(std::stringstream& msg, const std::string& pathPrefix) const
|
|
{
|
|
bool success = true;
|
|
const std::string _pathPrefix = pathPrefix.empty() ? "Image_format_settings" : pathPrefix;
|
|
|
|
|
|
if (jungfrauConversionFactorKeVIsSet())
|
|
{
|
|
const float& value = m_Jungfrau_conversion_factor_keV;
|
|
const std::string currentValuePath = _pathPrefix + ".jungfrauConversionFactorKeV";
|
|
|
|
|
|
if (value < static_cast<float>(0.001))
|
|
{
|
|
success = false;
|
|
msg << currentValuePath << ": must be greater than or equal to 0.001;";
|
|
}
|
|
if (value > static_cast<float>(500.0))
|
|
{
|
|
success = false;
|
|
msg << currentValuePath << ": must be less than or equal to 500.0;";
|
|
}
|
|
|
|
}
|
|
|
|
if (jungfrauPedestalG0RmsLimitIsSet())
|
|
{
|
|
const int64_t& value = m_Jungfrau_pedestal_g0_rms_limit;
|
|
const std::string currentValuePath = _pathPrefix + ".jungfrauPedestalG0RmsLimit";
|
|
|
|
|
|
if (value < 0ll)
|
|
{
|
|
success = false;
|
|
msg << currentValuePath << ": must be greater than or equal to 0;";
|
|
}
|
|
|
|
}
|
|
|
|
return success;
|
|
}
|
|
|
|
bool Image_format_settings::operator==(const Image_format_settings& rhs) const
|
|
{
|
|
return
|
|
|
|
|
|
(isSummation() == rhs.isSummation())
|
|
&&
|
|
|
|
(isGeometryTransform() == rhs.isGeometryTransform())
|
|
&&
|
|
|
|
(isJungfrauConversion() == rhs.isJungfrauConversion())
|
|
&&
|
|
|
|
|
|
((!jungfrauConversionFactorKeVIsSet() && !rhs.jungfrauConversionFactorKeVIsSet()) || (jungfrauConversionFactorKeVIsSet() && rhs.jungfrauConversionFactorKeVIsSet() && getJungfrauConversionFactorKeV() == rhs.getJungfrauConversionFactorKeV())) &&
|
|
|
|
|
|
((!bitDepthImageIsSet() && !rhs.bitDepthImageIsSet()) || (bitDepthImageIsSet() && rhs.bitDepthImageIsSet() && getBitDepthImage() == rhs.getBitDepthImage())) &&
|
|
|
|
|
|
((!signedOutputIsSet() && !rhs.signedOutputIsSet()) || (signedOutputIsSet() && rhs.signedOutputIsSet() && isSignedOutput() == rhs.isSignedOutput())) &&
|
|
|
|
(isMaskModuleEdges() == rhs.isMaskModuleEdges())
|
|
&&
|
|
|
|
(isMaskChipEdges() == rhs.isMaskChipEdges())
|
|
&&
|
|
|
|
|
|
((!jungfrauMaskPixelsWithoutG0IsSet() && !rhs.jungfrauMaskPixelsWithoutG0IsSet()) || (jungfrauMaskPixelsWithoutG0IsSet() && rhs.jungfrauMaskPixelsWithoutG0IsSet() && isJungfrauMaskPixelsWithoutG0() == rhs.isJungfrauMaskPixelsWithoutG0())) &&
|
|
|
|
(isApplyMask() == rhs.isApplyMask())
|
|
&&
|
|
|
|
|
|
((!jungfrauPedestalG0RmsLimitIsSet() && !rhs.jungfrauPedestalG0RmsLimitIsSet()) || (jungfrauPedestalG0RmsLimitIsSet() && rhs.jungfrauPedestalG0RmsLimitIsSet() && getJungfrauPedestalG0RmsLimit() == rhs.getJungfrauPedestalG0RmsLimit()))
|
|
|
|
;
|
|
}
|
|
|
|
bool Image_format_settings::operator!=(const Image_format_settings& rhs) const
|
|
{
|
|
return !(*this == rhs);
|
|
}
|
|
|
|
void to_json(nlohmann::json& j, const Image_format_settings& o)
|
|
{
|
|
j = nlohmann::json::object();
|
|
j["summation"] = o.m_Summation;
|
|
j["geometry_transform"] = o.m_Geometry_transform;
|
|
j["jungfrau_conversion"] = o.m_Jungfrau_conversion;
|
|
if(o.jungfrauConversionFactorKeVIsSet())
|
|
j["jungfrau_conversion_factor_keV"] = o.m_Jungfrau_conversion_factor_keV;
|
|
if(o.bitDepthImageIsSet())
|
|
j["bit_depth_image"] = o.m_Bit_depth_image;
|
|
if(o.signedOutputIsSet())
|
|
j["signed_output"] = o.m_Signed_output;
|
|
j["mask_module_edges"] = o.m_Mask_module_edges;
|
|
j["mask_chip_edges"] = o.m_Mask_chip_edges;
|
|
if(o.jungfrauMaskPixelsWithoutG0IsSet())
|
|
j["jungfrau_mask_pixels_without_g0"] = o.m_Jungfrau_mask_pixels_without_g0;
|
|
j["apply_mask"] = o.m_Apply_mask;
|
|
if(o.jungfrauPedestalG0RmsLimitIsSet())
|
|
j["jungfrau_pedestal_g0_rms_limit"] = o.m_Jungfrau_pedestal_g0_rms_limit;
|
|
|
|
}
|
|
|
|
void from_json(const nlohmann::json& j, Image_format_settings& o)
|
|
{
|
|
j.at("summation").get_to(o.m_Summation);
|
|
j.at("geometry_transform").get_to(o.m_Geometry_transform);
|
|
j.at("jungfrau_conversion").get_to(o.m_Jungfrau_conversion);
|
|
if(j.find("jungfrau_conversion_factor_keV") != j.end())
|
|
{
|
|
j.at("jungfrau_conversion_factor_keV").get_to(o.m_Jungfrau_conversion_factor_keV);
|
|
o.m_Jungfrau_conversion_factor_keVIsSet = true;
|
|
}
|
|
if(j.find("bit_depth_image") != j.end())
|
|
{
|
|
j.at("bit_depth_image").get_to(o.m_Bit_depth_image);
|
|
o.m_Bit_depth_imageIsSet = true;
|
|
}
|
|
if(j.find("signed_output") != j.end())
|
|
{
|
|
j.at("signed_output").get_to(o.m_Signed_output);
|
|
o.m_Signed_outputIsSet = true;
|
|
}
|
|
j.at("mask_module_edges").get_to(o.m_Mask_module_edges);
|
|
j.at("mask_chip_edges").get_to(o.m_Mask_chip_edges);
|
|
if(j.find("jungfrau_mask_pixels_without_g0") != j.end())
|
|
{
|
|
j.at("jungfrau_mask_pixels_without_g0").get_to(o.m_Jungfrau_mask_pixels_without_g0);
|
|
o.m_Jungfrau_mask_pixels_without_g0IsSet = true;
|
|
}
|
|
j.at("apply_mask").get_to(o.m_Apply_mask);
|
|
if(j.find("jungfrau_pedestal_g0_rms_limit") != j.end())
|
|
{
|
|
j.at("jungfrau_pedestal_g0_rms_limit").get_to(o.m_Jungfrau_pedestal_g0_rms_limit);
|
|
o.m_Jungfrau_pedestal_g0_rms_limitIsSet = true;
|
|
}
|
|
|
|
}
|
|
|
|
bool Image_format_settings::isSummation() const
|
|
{
|
|
return m_Summation;
|
|
}
|
|
void Image_format_settings::setSummation(bool const value)
|
|
{
|
|
m_Summation = value;
|
|
}
|
|
bool Image_format_settings::isGeometryTransform() const
|
|
{
|
|
return m_Geometry_transform;
|
|
}
|
|
void Image_format_settings::setGeometryTransform(bool const value)
|
|
{
|
|
m_Geometry_transform = value;
|
|
}
|
|
bool Image_format_settings::isJungfrauConversion() const
|
|
{
|
|
return m_Jungfrau_conversion;
|
|
}
|
|
void Image_format_settings::setJungfrauConversion(bool const value)
|
|
{
|
|
m_Jungfrau_conversion = value;
|
|
}
|
|
float Image_format_settings::getJungfrauConversionFactorKeV() const
|
|
{
|
|
return m_Jungfrau_conversion_factor_keV;
|
|
}
|
|
void Image_format_settings::setJungfrauConversionFactorKeV(float const value)
|
|
{
|
|
m_Jungfrau_conversion_factor_keV = value;
|
|
m_Jungfrau_conversion_factor_keVIsSet = true;
|
|
}
|
|
bool Image_format_settings::jungfrauConversionFactorKeVIsSet() const
|
|
{
|
|
return m_Jungfrau_conversion_factor_keVIsSet;
|
|
}
|
|
void Image_format_settings::unsetJungfrau_conversion_factor_keV()
|
|
{
|
|
m_Jungfrau_conversion_factor_keVIsSet = false;
|
|
}
|
|
int64_t Image_format_settings::getBitDepthImage() const
|
|
{
|
|
return m_Bit_depth_image;
|
|
}
|
|
void Image_format_settings::setBitDepthImage(int64_t const value)
|
|
{
|
|
m_Bit_depth_image = value;
|
|
m_Bit_depth_imageIsSet = true;
|
|
}
|
|
bool Image_format_settings::bitDepthImageIsSet() const
|
|
{
|
|
return m_Bit_depth_imageIsSet;
|
|
}
|
|
void Image_format_settings::unsetBit_depth_image()
|
|
{
|
|
m_Bit_depth_imageIsSet = false;
|
|
}
|
|
bool Image_format_settings::isSignedOutput() const
|
|
{
|
|
return m_Signed_output;
|
|
}
|
|
void Image_format_settings::setSignedOutput(bool const value)
|
|
{
|
|
m_Signed_output = value;
|
|
m_Signed_outputIsSet = true;
|
|
}
|
|
bool Image_format_settings::signedOutputIsSet() const
|
|
{
|
|
return m_Signed_outputIsSet;
|
|
}
|
|
void Image_format_settings::unsetSigned_output()
|
|
{
|
|
m_Signed_outputIsSet = false;
|
|
}
|
|
bool Image_format_settings::isMaskModuleEdges() const
|
|
{
|
|
return m_Mask_module_edges;
|
|
}
|
|
void Image_format_settings::setMaskModuleEdges(bool const value)
|
|
{
|
|
m_Mask_module_edges = value;
|
|
}
|
|
bool Image_format_settings::isMaskChipEdges() const
|
|
{
|
|
return m_Mask_chip_edges;
|
|
}
|
|
void Image_format_settings::setMaskChipEdges(bool const value)
|
|
{
|
|
m_Mask_chip_edges = value;
|
|
}
|
|
bool Image_format_settings::isJungfrauMaskPixelsWithoutG0() const
|
|
{
|
|
return m_Jungfrau_mask_pixels_without_g0;
|
|
}
|
|
void Image_format_settings::setJungfrauMaskPixelsWithoutG0(bool const value)
|
|
{
|
|
m_Jungfrau_mask_pixels_without_g0 = value;
|
|
m_Jungfrau_mask_pixels_without_g0IsSet = true;
|
|
}
|
|
bool Image_format_settings::jungfrauMaskPixelsWithoutG0IsSet() const
|
|
{
|
|
return m_Jungfrau_mask_pixels_without_g0IsSet;
|
|
}
|
|
void Image_format_settings::unsetJungfrau_mask_pixels_without_g0()
|
|
{
|
|
m_Jungfrau_mask_pixels_without_g0IsSet = false;
|
|
}
|
|
bool Image_format_settings::isApplyMask() const
|
|
{
|
|
return m_Apply_mask;
|
|
}
|
|
void Image_format_settings::setApplyMask(bool const value)
|
|
{
|
|
m_Apply_mask = value;
|
|
}
|
|
int64_t Image_format_settings::getJungfrauPedestalG0RmsLimit() const
|
|
{
|
|
return m_Jungfrau_pedestal_g0_rms_limit;
|
|
}
|
|
void Image_format_settings::setJungfrauPedestalG0RmsLimit(int64_t const value)
|
|
{
|
|
m_Jungfrau_pedestal_g0_rms_limit = value;
|
|
m_Jungfrau_pedestal_g0_rms_limitIsSet = true;
|
|
}
|
|
bool Image_format_settings::jungfrauPedestalG0RmsLimitIsSet() const
|
|
{
|
|
return m_Jungfrau_pedestal_g0_rms_limitIsSet;
|
|
}
|
|
void Image_format_settings::unsetJungfrau_pedestal_g0_rms_limit()
|
|
{
|
|
m_Jungfrau_pedestal_g0_rms_limitIsSet = false;
|
|
}
|
|
|
|
|
|
} // namespace org::openapitools::server::model
|
|
|