132 lines
4.2 KiB
C++
132 lines
4.2 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.17
|
|
* 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.
|
|
*/
|
|
/*
|
|
* Image_format_settings.h
|
|
*
|
|
*
|
|
*/
|
|
|
|
#ifndef Image_format_settings_H_
|
|
#define Image_format_settings_H_
|
|
|
|
|
|
#include <nlohmann/json.hpp>
|
|
|
|
namespace org::openapitools::server::model
|
|
{
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
class Image_format_settings
|
|
{
|
|
public:
|
|
Image_format_settings();
|
|
virtual ~Image_format_settings() = default;
|
|
|
|
|
|
/// <summary>
|
|
/// Validate the current data in the model. Throws a ValidationException on failure.
|
|
/// </summary>
|
|
void validate() const;
|
|
|
|
/// <summary>
|
|
/// Validate the current data in the model. Returns false on error and writes an error
|
|
/// message into the given stringstream.
|
|
/// </summary>
|
|
bool validate(std::stringstream& msg) const;
|
|
|
|
/// <summary>
|
|
/// Helper overload for validate. Used when one model stores another model and calls it's validate.
|
|
/// Not meant to be called outside that case.
|
|
/// </summary>
|
|
bool validate(std::stringstream& msg, const std::string& pathPrefix) const;
|
|
|
|
bool operator==(const Image_format_settings& rhs) const;
|
|
bool operator!=(const Image_format_settings& rhs) const;
|
|
|
|
/////////////////////////////////////////////
|
|
/// Image_format_settings members
|
|
|
|
/// <summary>
|
|
/// Enable summation of images to a given image_time If disabled images are saved according to original detector speed, but image count is adjusted
|
|
/// </summary>
|
|
bool isSummation() const;
|
|
void setSummation(bool const value);
|
|
/// <summary>
|
|
/// Place module read-out into their location on composed detector and extend multipixels
|
|
/// </summary>
|
|
bool isGeometryTransform() const;
|
|
void setGeometryTransform(bool const value);
|
|
/// <summary>
|
|
/// Convert pixel value in ADU to photon counts/energy Only affects JUNGFRAU detector
|
|
/// </summary>
|
|
bool isJungfrauConversion() const;
|
|
void setJungfrauConversion(bool const value);
|
|
/// <summary>
|
|
/// Used to convert energy deposited into pixel to counts If not provided incident_energy_keV is used
|
|
/// </summary>
|
|
float getJungfrauConversionFactorKeV() const;
|
|
void setJungfrauConversionFactorKeV(float const value);
|
|
bool jungfrauConversionFactorKeVIsSet() const;
|
|
void unsetJungfrau_conversion_factor_keV();
|
|
/// <summary>
|
|
/// Bit depth of resulting image (it doesn't affect the original detector value) If not provided value is adjusted automatically
|
|
/// </summary>
|
|
int64_t getBitDepthImage() const;
|
|
void setBitDepthImage(int64_t const value);
|
|
bool bitDepthImageIsSet() const;
|
|
void unsetBit_depth_image();
|
|
/// <summary>
|
|
/// Controls if pixels have signed output If not provided value is adjusted automatically
|
|
/// </summary>
|
|
bool isSignedOutput() const;
|
|
void setSignedOutput(bool const value);
|
|
bool signedOutputIsSet() const;
|
|
void unsetSigned_output();
|
|
/// <summary>
|
|
/// Mask 1 pixel on the module boundary
|
|
/// </summary>
|
|
bool isMaskModuleEdges() const;
|
|
void setMaskModuleEdges(bool const value);
|
|
/// <summary>
|
|
/// Mask multipixels on chip boundary
|
|
/// </summary>
|
|
bool isMaskChipEdges() const;
|
|
void setMaskChipEdges(bool const value);
|
|
|
|
friend void to_json(nlohmann::json& j, const Image_format_settings& o);
|
|
friend void from_json(const nlohmann::json& j, Image_format_settings& o);
|
|
protected:
|
|
bool m_Summation;
|
|
|
|
bool m_Geometry_transform;
|
|
|
|
bool m_Jungfrau_conversion;
|
|
|
|
float m_Jungfrau_conversion_factor_keV;
|
|
bool m_Jungfrau_conversion_factor_keVIsSet;
|
|
int64_t m_Bit_depth_image;
|
|
bool m_Bit_depth_imageIsSet;
|
|
bool m_Signed_output;
|
|
bool m_Signed_outputIsSet;
|
|
bool m_Mask_module_edges;
|
|
|
|
bool m_Mask_chip_edges;
|
|
|
|
|
|
};
|
|
|
|
} // namespace org::openapitools::server::model
|
|
|
|
#endif /* Image_format_settings_H_ */
|