231 lines
8.4 KiB
C++
231 lines
8.4 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.
|
|
*/
|
|
/*
|
|
* Jfjoch_settings.h
|
|
*
|
|
* Default settings for Jungfraujoch software. This structure is used to provide default settings using configuration JSON file and is not used in HTTP.
|
|
*/
|
|
|
|
#ifndef Jfjoch_settings_H_
|
|
#define Jfjoch_settings_H_
|
|
|
|
|
|
#include "Zeromq_preview_settings.h"
|
|
#include "Pcie_devices_inner.h"
|
|
#include <string>
|
|
#include "File_writer_settings.h"
|
|
#include "Azim_int_settings.h"
|
|
#include "Image_format_settings.h"
|
|
#include "Zeromq_metadata_settings.h"
|
|
#include "Detector_settings.h"
|
|
#include <vector>
|
|
#include "Indexing_settings.h"
|
|
#include "Detector.h"
|
|
#include "Image_pusher_type.h"
|
|
#include "Zeromq_settings.h"
|
|
#include "Instrument_metadata.h"
|
|
#include <nlohmann/json.hpp>
|
|
|
|
namespace org::openapitools::server::model
|
|
{
|
|
|
|
/// <summary>
|
|
/// Default settings for Jungfraujoch software. This structure is used to provide default settings using configuration JSON file and is not used in HTTP.
|
|
/// </summary>
|
|
class Jfjoch_settings
|
|
{
|
|
public:
|
|
Jfjoch_settings();
|
|
virtual ~Jfjoch_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 Jfjoch_settings& rhs) const;
|
|
bool operator!=(const Jfjoch_settings& rhs) const;
|
|
|
|
/////////////////////////////////////////////
|
|
/// Jfjoch_settings members
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
std::vector<org::openapitools::server::model::Pcie_devices_inner> getPcie() const;
|
|
void setPcie(std::vector<org::openapitools::server::model::Pcie_devices_inner> const& value);
|
|
bool pcieIsSet() const;
|
|
void unsetPcie();
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
org::openapitools::server::model::Zeromq_settings getZeromq() const;
|
|
void setZeromq(org::openapitools::server::model::Zeromq_settings const& value);
|
|
bool zeromqIsSet() const;
|
|
void unsetZeromq();
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
org::openapitools::server::model::Instrument_metadata getInstrument() const;
|
|
void setInstrument(org::openapitools::server::model::Instrument_metadata const& value);
|
|
bool instrumentIsSet() const;
|
|
void unsetInstrument();
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
org::openapitools::server::model::File_writer_settings getFileWriter() const;
|
|
void setFileWriter(org::openapitools::server::model::File_writer_settings const& value);
|
|
bool fileWriterIsSet() const;
|
|
void unsetFile_writer();
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
std::vector<org::openapitools::server::model::Detector> getDetector() const;
|
|
void setDetector(std::vector<org::openapitools::server::model::Detector> const& value);
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
org::openapitools::server::model::Indexing_settings getIndexing() const;
|
|
void setIndexing(org::openapitools::server::model::Indexing_settings const& value);
|
|
bool indexingIsSet() const;
|
|
void unsetIndexing();
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
org::openapitools::server::model::Detector_settings getDetectorSettings() const;
|
|
void setDetectorSettings(org::openapitools::server::model::Detector_settings const& value);
|
|
bool detectorSettingsIsSet() const;
|
|
void unsetDetector_settings();
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
org::openapitools::server::model::Azim_int_settings getAzimInt() const;
|
|
void setAzimInt(org::openapitools::server::model::Azim_int_settings const& value);
|
|
bool azimIntIsSet() const;
|
|
void unsetAzim_int();
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
org::openapitools::server::model::Image_format_settings getImageFormat() const;
|
|
void setImageFormat(org::openapitools::server::model::Image_format_settings const& value);
|
|
bool imageFormatIsSet() const;
|
|
void unsetImage_format();
|
|
/// <summary>
|
|
/// Size of internal buffer in MiB for images before they are sent to a stream
|
|
/// </summary>
|
|
int32_t getImageBufferMiB() const;
|
|
void setImageBufferMiB(int32_t const value);
|
|
bool imageBufferMiBIsSet() const;
|
|
void unsetImage_buffer_MiB();
|
|
/// <summary>
|
|
/// Number of threads used by the receiver
|
|
/// </summary>
|
|
int32_t getReceiverThreads() const;
|
|
void setReceiverThreads(int32_t const value);
|
|
bool receiverThreadsIsSet() const;
|
|
void unsetReceiver_threads();
|
|
/// <summary>
|
|
/// NUMA policy to bind CPUs
|
|
/// </summary>
|
|
std::string getNumaPolicy() const;
|
|
void setNumaPolicy(std::string const& value);
|
|
bool numaPolicyIsSet() const;
|
|
void unsetNuma_policy();
|
|
/// <summary>
|
|
/// Location of built JavaScript web frontend
|
|
/// </summary>
|
|
std::string getFrontendDirectory() const;
|
|
void setFrontendDirectory(std::string const& value);
|
|
/// <summary>
|
|
/// Address to ML-based inference servers
|
|
/// </summary>
|
|
std::vector<std::string> getInferenceServerAddr() const;
|
|
void setInferenceServerAddr(std::vector<std::string> const& value);
|
|
bool inferenceServerAddrIsSet() const;
|
|
void unsetInference_server_addr();
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
org::openapitools::server::model::Image_pusher_type getImagePusher() const;
|
|
void setImagePusher(org::openapitools::server::model::Image_pusher_type const& value);
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
org::openapitools::server::model::Zeromq_preview_settings getZeromqPreview() const;
|
|
void setZeromqPreview(org::openapitools::server::model::Zeromq_preview_settings const& value);
|
|
bool zeromqPreviewIsSet() const;
|
|
void unsetZeromq_preview();
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
org::openapitools::server::model::Zeromq_metadata_settings getZeromqMetadata() const;
|
|
void setZeromqMetadata(org::openapitools::server::model::Zeromq_metadata_settings const& value);
|
|
bool zeromqMetadataIsSet() const;
|
|
void unsetZeromq_metadata();
|
|
|
|
friend void to_json(nlohmann::json& j, const Jfjoch_settings& o);
|
|
friend void from_json(const nlohmann::json& j, Jfjoch_settings& o);
|
|
protected:
|
|
std::vector<org::openapitools::server::model::Pcie_devices_inner> m_Pcie;
|
|
bool m_PcieIsSet;
|
|
org::openapitools::server::model::Zeromq_settings m_Zeromq;
|
|
bool m_ZeromqIsSet;
|
|
org::openapitools::server::model::Instrument_metadata m_Instrument;
|
|
bool m_InstrumentIsSet;
|
|
org::openapitools::server::model::File_writer_settings m_File_writer;
|
|
bool m_File_writerIsSet;
|
|
std::vector<org::openapitools::server::model::Detector> m_Detector;
|
|
|
|
org::openapitools::server::model::Indexing_settings m_Indexing;
|
|
bool m_IndexingIsSet;
|
|
org::openapitools::server::model::Detector_settings m_Detector_settings;
|
|
bool m_Detector_settingsIsSet;
|
|
org::openapitools::server::model::Azim_int_settings m_Azim_int;
|
|
bool m_Azim_intIsSet;
|
|
org::openapitools::server::model::Image_format_settings m_Image_format;
|
|
bool m_Image_formatIsSet;
|
|
int32_t m_Image_buffer_MiB;
|
|
bool m_Image_buffer_MiBIsSet;
|
|
int32_t m_Receiver_threads;
|
|
bool m_Receiver_threadsIsSet;
|
|
std::string m_Numa_policy;
|
|
bool m_Numa_policyIsSet;
|
|
std::string m_Frontend_directory;
|
|
|
|
std::vector<std::string> m_Inference_server_addr;
|
|
bool m_Inference_server_addrIsSet;
|
|
org::openapitools::server::model::Image_pusher_type m_Image_pusher;
|
|
|
|
org::openapitools::server::model::Zeromq_preview_settings m_Zeromq_preview;
|
|
bool m_Zeromq_previewIsSet;
|
|
org::openapitools::server::model::Zeromq_metadata_settings m_Zeromq_metadata;
|
|
bool m_Zeromq_metadataIsSet;
|
|
|
|
};
|
|
|
|
} // namespace org::openapitools::server::model
|
|
|
|
#endif /* Jfjoch_settings_H_ */
|