Merge branch '2410-1.0.0-rc.17-2' into 'main'
version 1.0.0-rc.17 See merge request jungfraujoch/nextgendcu!84
This commit is contained in:
commit
7cc6f4508a
183 files changed
+2155
-954
No files matched your search
@@ -0,0 +1,329 @@
|
||||
stages:
|
||||
- build
|
||||
- test
|
||||
- synthesis
|
||||
- release
|
||||
|
||||
build:x86:gcc:
|
||||
stage: build
|
||||
variables:
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
tags:
|
||||
- gcc
|
||||
- x86
|
||||
needs: []
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- cmake -DCMAKE_BUILD_TYPE=Release ..
|
||||
- make -j48
|
||||
|
||||
build:x86:gcc_writer:
|
||||
stage: build
|
||||
variables:
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
tags:
|
||||
- gcc
|
||||
- x86
|
||||
needs: []
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- cmake -DCMAKE_BUILD_TYPE=Release -DJFJOCH_WRITER_ONLY=ON ..
|
||||
- make -j48
|
||||
|
||||
build:x86:driver:
|
||||
stage: build
|
||||
variables:
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
tags:
|
||||
- gcc
|
||||
- x86
|
||||
needs: []
|
||||
script:
|
||||
- cd fpga/pcie_driver
|
||||
- make
|
||||
|
||||
build:x86:python_client:
|
||||
stage: build
|
||||
needs: []
|
||||
tags:
|
||||
- python
|
||||
script:
|
||||
- cd python-client
|
||||
- python3 setup.py sdist bdist_wheel
|
||||
- mv dist/* ..
|
||||
artifacts:
|
||||
paths:
|
||||
- jfjoch_client-*whl
|
||||
- jfjoch_client-*tar.gz
|
||||
expire_in: 1 week
|
||||
|
||||
build:x86:vitis_hls:
|
||||
stage: build
|
||||
tags:
|
||||
- x86
|
||||
needs: []
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
- if: $CI_PIPELINE_SOURCE == "push"
|
||||
changes:
|
||||
- fpga/hls/*
|
||||
- fpga/hdl/*
|
||||
- fpga/scripts/*
|
||||
- fpga/xdc/*
|
||||
- fpga/microblaze/*
|
||||
- fpga/include/jfjoch_fpga.h
|
||||
script:
|
||||
- source /opt/Xilinx/Vitis_HLS/2022.1/settings64.sh
|
||||
- mkdir build
|
||||
- cd build
|
||||
- /usr/bin/cmake ..
|
||||
- make hls
|
||||
|
||||
build:x86:frontend:
|
||||
stage: build
|
||||
tags:
|
||||
- x86
|
||||
needs: []
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
- /usr/bin/cmake ..
|
||||
- make frontend
|
||||
- cd ../frontend/dist
|
||||
- tar czf ../../jfjoch_frontend.tar.gz *
|
||||
artifacts:
|
||||
paths:
|
||||
- jfjoch_frontend.tar.gz
|
||||
expire_in: 1 week
|
||||
|
||||
build:x86:rpm:
|
||||
stage: build
|
||||
tags:
|
||||
- x86
|
||||
needs: []
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- cmake -DCMAKE_BUILD_TYPE=Release ..
|
||||
- make frontend
|
||||
- make -j48 package
|
||||
- mv *.rpm ..
|
||||
artifacts:
|
||||
paths:
|
||||
- "*.rpm"
|
||||
expire_in: 1 week
|
||||
|
||||
test:x86:gcc:
|
||||
stage: test
|
||||
timeout: 90m
|
||||
variables:
|
||||
CTEST_OUTPUT_ON_FAILURE: 1
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
needs: ["build:x86:gcc"]
|
||||
dependencies: []
|
||||
tags:
|
||||
- gcc
|
||||
- x86
|
||||
script:
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- mkdir -p build
|
||||
- cd build
|
||||
- cmake -DCMAKE_BUILD_TYPE=Release ..
|
||||
- make -j48 jfjoch_test HDF5DatasetWriteTest
|
||||
- cd tests
|
||||
- ./jfjoch_test -r junit -o report.xml
|
||||
- cd ../tools
|
||||
- ./HDF5DatasetWriteTest ../../tests/test_data/compression_benchmark.h5
|
||||
artifacts:
|
||||
expire_in: 1 week
|
||||
reports:
|
||||
junit: build/tests/report.xml
|
||||
|
||||
test:x86:crystfel:
|
||||
stage: test
|
||||
timeout: 90m
|
||||
variables:
|
||||
CTEST_OUTPUT_ON_FAILURE: 1
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
needs: ["build:x86:gcc"]
|
||||
dependencies: []
|
||||
tags:
|
||||
- gcc
|
||||
- x86
|
||||
- crystfel
|
||||
script:
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- mkdir -p build
|
||||
- cd build
|
||||
- cmake -DCMAKE_BUILD_TYPE=Release ..
|
||||
- make -j8 HDF5DatasetWriteTest
|
||||
- cd ../tests/crystfel
|
||||
- HDF5DATASET_WRITE_TEST_IMAGES_PER_FILE=0 ../../build/tools/HDF5DatasetWriteTest ../../tests/test_data/compression_benchmark.h5 10
|
||||
- indexamajig -i writing_test.lst -g jf4m.geom -o x.stream --indexing=xgandalf
|
||||
|
||||
test:x86:xds_durin:
|
||||
stage: test
|
||||
timeout: 90m
|
||||
variables:
|
||||
CTEST_OUTPUT_ON_FAILURE: 1
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
needs: ["build:x86:gcc"]
|
||||
dependencies: []
|
||||
tags:
|
||||
- gcc
|
||||
- x86
|
||||
- xds
|
||||
script:
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- mkdir -p build
|
||||
- cd build
|
||||
- cmake -DCMAKE_BUILD_TYPE=Release ..
|
||||
- make -j8 HDF5DatasetWriteTest
|
||||
- cd ../tests/xds_durin
|
||||
- HDF5DATASET_WRITE_TEST_IMAGES_PER_FILE=0 ../../build/tools/HDF5DatasetWriteTest ../../tests/test_data/compression_benchmark.h5 25
|
||||
- xds_par |grep -a1 ISa |tail -n1
|
||||
|
||||
test:x86:xds_neggia:
|
||||
stage: test
|
||||
timeout: 90m
|
||||
variables:
|
||||
CTEST_OUTPUT_ON_FAILURE: 1
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
needs: ["build:x86:gcc"]
|
||||
dependencies: []
|
||||
tags:
|
||||
- gcc
|
||||
- x86
|
||||
- xds
|
||||
script:
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- mkdir -p build
|
||||
- cd build
|
||||
- cmake -DCMAKE_BUILD_TYPE=Release ..
|
||||
- make -j8 HDF5DatasetWriteTest
|
||||
- cd ../tests/xds_neggia
|
||||
- HDF5DATASET_WRITE_TEST_IMAGES_PER_FILE=0 ../../build/tools/HDF5DatasetWriteTest ../../tests/test_data/compression_benchmark.h5 25
|
||||
- xds_par |grep -a1 ISa |tail -n1
|
||||
|
||||
test:x86:xia2.ssx:
|
||||
stage: test
|
||||
timeout: 90m
|
||||
variables:
|
||||
CTEST_OUTPUT_ON_FAILURE: 1
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
needs: ["build:x86:gcc"]
|
||||
dependencies: []
|
||||
tags:
|
||||
- gcc
|
||||
- x86
|
||||
- xds
|
||||
script:
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- mkdir -p build
|
||||
- mkdir -p dials_test
|
||||
- cd build
|
||||
- cmake -DCMAKE_BUILD_TYPE=Release ..
|
||||
- make -j8 HDF5DatasetWriteTest
|
||||
- cd ../dials_test
|
||||
- ../build/tools/HDF5DatasetWriteTest ../tests/test_data/compression_benchmark.h5 100
|
||||
- source /usr/local/dials-v3-17-0/dials_env.sh
|
||||
- xia2.ssx image=writing_test_master.h5 space_group=P43212 unit_cell=78.551,78.551,36.914,90.000,90.000,90.000
|
||||
|
||||
synthesis:vivado_pcie_100g:
|
||||
stage: synthesis
|
||||
dependencies: []
|
||||
variables:
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
- if: $CI_PIPELINE_SOURCE == "push"
|
||||
changes:
|
||||
- fpga/hls/*
|
||||
- fpga/hdl/*
|
||||
- fpga/scripts/*
|
||||
- fpga/xdc/*
|
||||
- fpga/pcie_driver/jfjoch_fpga.h
|
||||
- if: $CI_COMMIT_MESSAGE =~ /^FPGA/
|
||||
allow_failure: true
|
||||
tags:
|
||||
- vivado
|
||||
retry: 2
|
||||
artifacts:
|
||||
paths:
|
||||
- "jfjoch_fpga_pcie_100g.mcs"
|
||||
expire_in: 1 week
|
||||
script:
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- source /opt/Xilinx/Vivado/2022.1/settings64.sh
|
||||
- touch jfjoch_fpga_pcie_100g.mcs
|
||||
- mkdir -p build
|
||||
- cd build
|
||||
- /usr/bin/cmake ..
|
||||
- make -j4 pcie_100g
|
||||
- mv fpga/jfjoch_fpga_pcie_100g.mcs ..
|
||||
needs: ["build:x86:gcc", "test:x86:gcc"]
|
||||
|
||||
synthesis:vivado_pcie_8x10g:
|
||||
stage: synthesis
|
||||
dependencies: []
|
||||
variables:
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
- if: $CI_PIPELINE_SOURCE == "push"
|
||||
changes:
|
||||
- fpga/hls/*
|
||||
- fpga/hdl/*
|
||||
- fpga/scripts/*
|
||||
- fpga/xdc/*
|
||||
- fpga/pcie_driver/jfjoch_fpga.h
|
||||
- if: $CI_COMMIT_MESSAGE =~ /^FPGA/
|
||||
allow_failure: true
|
||||
tags:
|
||||
- vivado
|
||||
retry: 2
|
||||
artifacts:
|
||||
paths:
|
||||
- "jfjoch_fpga_pcie_8x10g.mcs"
|
||||
expire_in: 1 week
|
||||
script:
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- source /opt/Xilinx/Vivado/2022.1/settings64.sh
|
||||
- touch jfjoch_fpga_pcie_8x10g.mcs
|
||||
- mkdir -p build
|
||||
- cd build
|
||||
- /usr/bin/cmake ..
|
||||
- make -j4 pcie_8x10g
|
||||
- mv fpga/jfjoch_fpga_pcie_8x10g.mcs ..
|
||||
needs: [ "build:x86:gcc", "test:x86:gcc" ]
|
||||
|
||||
release:
|
||||
stage: release
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
when: manual
|
||||
tags:
|
||||
- x86
|
||||
dependencies:
|
||||
- synthesis:vivado_pcie_8x10g
|
||||
- synthesis:vivado_pcie_100g
|
||||
- build:x86:python_client
|
||||
- build:x86:frontend
|
||||
- build:x86:rpm
|
||||
script:
|
||||
- bash gitlab_upload_release.sh
|
||||
@@ -1,7 +1,6 @@
|
||||
stages:
|
||||
- build
|
||||
- test
|
||||
- synthesis
|
||||
- release
|
||||
|
||||
build:x86:gcc:
|
||||
@@ -64,28 +63,6 @@ build:x86:python_client:
|
||||
- jfjoch_client-*tar.gz
|
||||
expire_in: 1 week
|
||||
|
||||
build:x86:vitis_hls:
|
||||
stage: build
|
||||
tags:
|
||||
- x86
|
||||
needs: []
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
- if: $CI_PIPELINE_SOURCE == "push"
|
||||
changes:
|
||||
- fpga/hls/*
|
||||
- fpga/hdl/*
|
||||
- fpga/scripts/*
|
||||
- fpga/xdc/*
|
||||
- fpga/microblaze/*
|
||||
- fpga/include/jfjoch_fpga.h
|
||||
script:
|
||||
- source /opt/Xilinx/Vitis_HLS/2022.1/settings64.sh
|
||||
- mkdir build
|
||||
- cd build
|
||||
- /usr/bin/cmake ..
|
||||
- make hls
|
||||
|
||||
build:x86:frontend:
|
||||
stage: build
|
||||
tags:
|
||||
@@ -242,76 +219,6 @@ test:x86:xia2.ssx:
|
||||
- source /usr/local/dials-v3-17-0/dials_env.sh
|
||||
- xia2.ssx image=writing_test_master.h5 space_group=P43212 unit_cell=78.551,78.551,36.914,90.000,90.000,90.000
|
||||
|
||||
synthesis:vivado_pcie_100g:
|
||||
stage: synthesis
|
||||
dependencies: []
|
||||
variables:
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
- if: $CI_PIPELINE_SOURCE == "push"
|
||||
changes:
|
||||
- fpga/hls/*
|
||||
- fpga/hdl/*
|
||||
- fpga/scripts/*
|
||||
- fpga/xdc/*
|
||||
- fpga/pcie_driver/jfjoch_fpga.h
|
||||
- if: $CI_COMMIT_MESSAGE =~ /^FPGA/
|
||||
allow_failure: true
|
||||
tags:
|
||||
- vivado
|
||||
retry: 2
|
||||
artifacts:
|
||||
paths:
|
||||
- "jfjoch_fpga_pcie_100g.mcs"
|
||||
expire_in: 1 week
|
||||
script:
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- source /opt/Xilinx/Vivado/2022.1/settings64.sh
|
||||
- touch jfjoch_fpga_pcie_100g.mcs
|
||||
- mkdir -p build
|
||||
- cd build
|
||||
- /usr/bin/cmake ..
|
||||
- make -j4 pcie_100g
|
||||
- mv fpga/jfjoch_fpga_pcie_100g.mcs ..
|
||||
needs: ["build:x86:gcc", "test:x86:gcc"]
|
||||
|
||||
synthesis:vivado_pcie_8x10g:
|
||||
stage: synthesis
|
||||
dependencies: []
|
||||
variables:
|
||||
CC: gcc
|
||||
CXX: g++
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
- if: $CI_PIPELINE_SOURCE == "push"
|
||||
changes:
|
||||
- fpga/hls/*
|
||||
- fpga/hdl/*
|
||||
- fpga/scripts/*
|
||||
- fpga/xdc/*
|
||||
- fpga/pcie_driver/jfjoch_fpga.h
|
||||
- if: $CI_COMMIT_MESSAGE =~ /^FPGA/
|
||||
allow_failure: true
|
||||
tags:
|
||||
- vivado
|
||||
retry: 2
|
||||
artifacts:
|
||||
paths:
|
||||
- "jfjoch_fpga_pcie_8x10g.mcs"
|
||||
expire_in: 1 week
|
||||
script:
|
||||
- source /opt/rh/gcc-toolset-12/enable
|
||||
- source /opt/Xilinx/Vivado/2022.1/settings64.sh
|
||||
- touch jfjoch_fpga_pcie_8x10g.mcs
|
||||
- mkdir -p build
|
||||
- cd build
|
||||
- /usr/bin/cmake ..
|
||||
- make -j4 pcie_8x10g
|
||||
- mv fpga/jfjoch_fpga_pcie_8x10g.mcs ..
|
||||
needs: [ "build:x86:gcc", "test:x86:gcc" ]
|
||||
|
||||
release:
|
||||
stage: release
|
||||
rules:
|
||||
@@ -320,8 +227,6 @@ release:
|
||||
tags:
|
||||
- x86
|
||||
dependencies:
|
||||
- synthesis:vivado_pcie_8x10g
|
||||
- synthesis:vivado_pcie_100g
|
||||
- build:x86:python_client
|
||||
- build:x86:frontend
|
||||
- build:x86:rpm
|
||||
|
||||
+24
-11
@@ -145,18 +145,9 @@ void JFJochBrokerHttp::plot_azim_int_get(const std::optional<bool>& compression,
|
||||
}
|
||||
|
||||
void JFJochBrokerHttp::statistics_calibration_get(Pistache::Http::ResponseWriter &response) {
|
||||
auto calib = state_machine.GetCalibrationStatistics();
|
||||
nlohmann::json j;
|
||||
|
||||
for (const auto &i: calib) {
|
||||
auto output = Convert(i);
|
||||
std::stringstream s;
|
||||
assert(output.validate(s));
|
||||
|
||||
nlohmann::json j_elem;
|
||||
to_json(j_elem, output);
|
||||
j.push_back(j_elem);
|
||||
}
|
||||
for (const auto &d: Convert(state_machine.GetCalibrationStatistics()))
|
||||
j.push_back(d);
|
||||
response.send(Pistache::Http::Code::Ok, j.dump(), MIME(Application, Json));
|
||||
}
|
||||
|
||||
@@ -486,3 +477,25 @@ void JFJochBrokerHttp::fpga_status_get(Pistache::Http::ResponseWriter &response)
|
||||
j.push_back(d);
|
||||
response.send(Pistache::Http::Code::Ok, j.dump(), MIME(Application, Json));
|
||||
}
|
||||
|
||||
void JFJochBrokerHttp::statistics_get(const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) {
|
||||
org::openapitools::server::model::Jfjoch_statistics statistics;
|
||||
|
||||
auto data_collection_statistics = state_machine.GetMeasurementStatistics();
|
||||
if (data_collection_statistics)
|
||||
statistics.setMeasurement(Convert(data_collection_statistics.value()));
|
||||
|
||||
statistics.setFpga(Convert(state_machine.GetDeviceStatus()));
|
||||
statistics.setCalibration(Convert(state_machine.GetCalibrationStatistics()));
|
||||
statistics.setBroker(Convert(state_machine.GetStatus()));
|
||||
|
||||
auto det_status = state_machine.GetDetectorStatus();
|
||||
if (det_status.has_value())
|
||||
statistics.setDetector(Convert(det_status.value()));
|
||||
|
||||
nlohmann::json j = statistics;
|
||||
if (!compression.has_value() || compression.value())
|
||||
response.setCompression(Pistache::Http::Header::Encoding::Deflate);
|
||||
|
||||
response.send(Pistache::Http::Code::Ok, j.dump(), MIME(Application, Json));
|
||||
}
|
||||
@@ -161,6 +161,8 @@ class JFJochBrokerHttp : public org::openapitools::server::api::DefaultApi {
|
||||
|
||||
void config_image_format_raw_post(Pistache::Http::ResponseWriter &response) override;
|
||||
|
||||
void statistics_get(const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) override;
|
||||
|
||||
public:
|
||||
JFJochBrokerHttp(const DiffractionExperiment& experiment, std::shared_ptr<Pistache::Rest::Router> &rtr);
|
||||
void AddDetectorSetup(const DetectorSetup &setup);
|
||||
|
||||
@@ -224,6 +224,14 @@ org::openapitools::server::model::Calibration_statistics_inner Convert(const JFC
|
||||
return output;
|
||||
}
|
||||
|
||||
std::vector<org::openapitools::server::model::Calibration_statistics_inner> Convert(const std::vector<JFCalibrationModuleStatistics>& input) {
|
||||
std::vector<org::openapitools::server::model::Calibration_statistics_inner> ret;
|
||||
for (const auto &i: input)
|
||||
ret.push_back(Convert(i));
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
org::openapitools::server::model::Instrument_metadata Convert(const InstrumentMetadata& input) {
|
||||
org::openapitools::server::model::Instrument_metadata output;
|
||||
output.setInstrumentName(input.GetInstrumentName());
|
||||
|
||||
@@ -38,6 +38,7 @@ DetectorSettings Convert(const org::openapitools::server::model::Detector_settin
|
||||
org::openapitools::server::model::Detector_settings Convert(const DetectorSettings &input);
|
||||
org::openapitools::server::model::Broker_status Convert(const BrokerStatus& input);
|
||||
org::openapitools::server::model::Calibration_statistics_inner Convert(const JFCalibrationModuleStatistics& input);
|
||||
std::vector<org::openapitools::server::model::Calibration_statistics_inner> Convert(const std::vector<JFCalibrationModuleStatistics>& input);
|
||||
org::openapitools::server::model::Instrument_metadata Convert(const InstrumentMetadata& input);
|
||||
|
||||
InstrumentMetadata Convert(const org::openapitools::server::model::Instrument_metadata &input);
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
@@ -82,6 +82,7 @@ void DefaultApi::setupRoutes() {
|
||||
Routes::Post(*router, base + "/start", Routes::bind(&DefaultApi::start_post_handler, this));
|
||||
Routes::Get(*router, base + "/statistics/calibration", Routes::bind(&DefaultApi::statistics_calibration_get_handler, this));
|
||||
Routes::Get(*router, base + "/statistics/data_collection", Routes::bind(&DefaultApi::statistics_data_collection_get_handler, this));
|
||||
Routes::Get(*router, base + "/statistics", Routes::bind(&DefaultApi::statistics_get_handler, this));
|
||||
Routes::Get(*router, base + "/status", Routes::bind(&DefaultApi::status_get_handler, this));
|
||||
Routes::Post(*router, base + "/trigger", Routes::bind(&DefaultApi::trigger_post_handler, this));
|
||||
Routes::Get(*router, base + "/version", Routes::bind(&DefaultApi::version_get_handler, this));
|
||||
@@ -1396,6 +1397,35 @@ void DefaultApi::statistics_data_collection_get_handler(const Pistache::Rest::Re
|
||||
response.send(Pistache::Http::Code::Internal_Server_Error, e.what());
|
||||
}
|
||||
|
||||
}
|
||||
void DefaultApi::statistics_get_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response) {
|
||||
try {
|
||||
|
||||
|
||||
// Getting the query params
|
||||
auto compressionQuery = request.query().get("compression");
|
||||
std::optional<bool> compression;
|
||||
if(compressionQuery.has_value()){
|
||||
bool valueQuery_instance;
|
||||
if(fromStringValue(compressionQuery.value(), valueQuery_instance)){
|
||||
compression = valueQuery_instance;
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
this->statistics_get(compression, response);
|
||||
} catch (Pistache::Http::HttpError &e) {
|
||||
response.send(static_cast<Pistache::Http::Code>(e.code()), e.what());
|
||||
return;
|
||||
} catch (std::exception &e) {
|
||||
this->handleOperationException(e, response);
|
||||
return;
|
||||
}
|
||||
|
||||
} catch (std::exception &e) {
|
||||
response.send(Pistache::Http::Code::Internal_Server_Error, e.what());
|
||||
}
|
||||
|
||||
}
|
||||
void DefaultApi::status_get_handler(const Pistache::Rest::Request &, Pistache::Http::ResponseWriter response) {
|
||||
try {
|
||||
|
||||
+23
-13
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
@@ -40,6 +40,7 @@
|
||||
#include "Fpga_status_inner.h"
|
||||
#include "Image_format_settings.h"
|
||||
#include "Instrument_metadata.h"
|
||||
#include "Jfjoch_statistics.h"
|
||||
#include "Measurement_statistics.h"
|
||||
#include "Plots.h"
|
||||
#include "Preview_settings.h"
|
||||
@@ -112,6 +113,7 @@ private:
|
||||
void start_post_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
|
||||
void statistics_calibration_get_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
|
||||
void statistics_data_collection_get_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
|
||||
void statistics_get_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
|
||||
void status_get_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
|
||||
void trigger_post_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
|
||||
void version_get_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
|
||||
@@ -335,7 +337,7 @@ private:
|
||||
/// <remarks>
|
||||
/// Generate average radial integration profile
|
||||
/// </remarks>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_azim_int_get(const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate background estimate plot
|
||||
@@ -344,7 +346,7 @@ private:
|
||||
/// Mean intensity for d = 3 - 5 A per image; binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_bkg_estimate_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate error pixels plot
|
||||
@@ -353,7 +355,7 @@ private:
|
||||
/// Count of error (mean) and saturated (mean/max) pixels per image; binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_error_pixel_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate image collection efficiency plot
|
||||
@@ -362,7 +364,7 @@ private:
|
||||
/// Ratio of collected and expected packets per image; binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_image_collection_efficiency_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate indexing rate plot
|
||||
@@ -371,7 +373,7 @@ private:
|
||||
/// Image indexing rate; binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_indexing_rate_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate receiver delay plot
|
||||
@@ -380,7 +382,7 @@ private:
|
||||
/// Amount of frames the receiver is behind the FPGA for each image - used for internal debugging; binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_receiver_delay_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate receiver free send buffer plot
|
||||
@@ -389,7 +391,7 @@ private:
|
||||
/// Amount of send buffers available during frame processing - used for internal debugging; binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_receiver_free_send_buffers_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate plot of ROI max count
|
||||
@@ -398,7 +400,7 @@ private:
|
||||
/// Max count of ROI per image; binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_roi_max_count_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate ROI sum plot
|
||||
@@ -407,7 +409,7 @@ private:
|
||||
/// Sum of ROI rectangle per image; binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_roi_sum_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate plot of ROI valid pixels
|
||||
@@ -416,7 +418,7 @@ private:
|
||||
/// Number of pixels within a ROI area; pixels with special values (overload, bad pixel) are excluded; multipixels are counted just once; binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_roi_valid_pixels_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate spot count plot
|
||||
@@ -425,7 +427,7 @@ private:
|
||||
/// Number of spots per image; binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_spot_count_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Generate strong pixels plot
|
||||
@@ -434,7 +436,7 @@ private:
|
||||
/// Count of strong pixels per image (from spot finding); binning is configurable
|
||||
/// </remarks>
|
||||
/// <param name="binning">Binning of frames for the plot (0 = default binning) (optional, default to 0)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data (optional, default to true)</param>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void plot_strong_pixel_get(const std::optional<int32_t> &binning, const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Get last preview image in TIFF format for calibration with PyFAI/Dioptas
|
||||
@@ -527,6 +529,14 @@ private:
|
||||
/// </remarks>
|
||||
virtual void statistics_data_collection_get(Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Get general statistics
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
///
|
||||
/// </remarks>
|
||||
/// <param name="compression">Enable DEFLATE compression of output data. (optional, default to true)</param>
|
||||
virtual void statistics_get(const std::optional<bool> &compression, Pistache::Http::ResponseWriter &response) = 0;
|
||||
/// <summary>
|
||||
/// Get Jungfraujoch status
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -0,0 +1,259 @@
|
||||
/**
|
||||
* 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.
|
||||
*/
|
||||
|
||||
|
||||
#include "Jfjoch_statistics.h"
|
||||
#include "Helpers.h"
|
||||
|
||||
#include <sstream>
|
||||
|
||||
namespace org::openapitools::server::model
|
||||
{
|
||||
|
||||
Jfjoch_statistics::Jfjoch_statistics()
|
||||
{
|
||||
m_DetectorIsSet = false;
|
||||
m_MeasurementIsSet = false;
|
||||
m_BrokerIsSet = false;
|
||||
m_FpgaIsSet = false;
|
||||
m_CalibrationIsSet = false;
|
||||
|
||||
}
|
||||
|
||||
void Jfjoch_statistics::validate() const
|
||||
{
|
||||
std::stringstream msg;
|
||||
if (!validate(msg))
|
||||
{
|
||||
throw org::openapitools::server::helpers::ValidationException(msg.str());
|
||||
}
|
||||
}
|
||||
|
||||
bool Jfjoch_statistics::validate(std::stringstream& msg) const
|
||||
{
|
||||
return validate(msg, "");
|
||||
}
|
||||
|
||||
bool Jfjoch_statistics::validate(std::stringstream& msg, const std::string& pathPrefix) const
|
||||
{
|
||||
bool success = true;
|
||||
const std::string _pathPrefix = pathPrefix.empty() ? "Jfjoch_statistics" : pathPrefix;
|
||||
|
||||
|
||||
if (fpgaIsSet())
|
||||
{
|
||||
const std::vector<org::openapitools::server::model::Fpga_status_inner>& value = m_Fpga;
|
||||
const std::string currentValuePath = _pathPrefix + ".fpga";
|
||||
|
||||
|
||||
{ // Recursive validation of array elements
|
||||
const std::string oldValuePath = currentValuePath;
|
||||
int i = 0;
|
||||
for (const org::openapitools::server::model::Fpga_status_inner& value : value)
|
||||
{
|
||||
const std::string currentValuePath = oldValuePath + "[" + std::to_string(i) + "]";
|
||||
|
||||
success = value.validate(msg, currentValuePath + ".fpga") && success;
|
||||
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (calibrationIsSet())
|
||||
{
|
||||
const std::vector<org::openapitools::server::model::Calibration_statistics_inner>& value = m_Calibration;
|
||||
const std::string currentValuePath = _pathPrefix + ".calibration";
|
||||
|
||||
|
||||
{ // Recursive validation of array elements
|
||||
const std::string oldValuePath = currentValuePath;
|
||||
int i = 0;
|
||||
for (const org::openapitools::server::model::Calibration_statistics_inner& value : value)
|
||||
{
|
||||
const std::string currentValuePath = oldValuePath + "[" + std::to_string(i) + "]";
|
||||
|
||||
success = value.validate(msg, currentValuePath + ".calibration") && success;
|
||||
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
bool Jfjoch_statistics::operator==(const Jfjoch_statistics& rhs) const
|
||||
{
|
||||
return
|
||||
|
||||
|
||||
|
||||
((!detectorIsSet() && !rhs.detectorIsSet()) || (detectorIsSet() && rhs.detectorIsSet() && getDetector() == rhs.getDetector())) &&
|
||||
|
||||
|
||||
((!measurementIsSet() && !rhs.measurementIsSet()) || (measurementIsSet() && rhs.measurementIsSet() && getMeasurement() == rhs.getMeasurement())) &&
|
||||
|
||||
|
||||
((!brokerIsSet() && !rhs.brokerIsSet()) || (brokerIsSet() && rhs.brokerIsSet() && getBroker() == rhs.getBroker())) &&
|
||||
|
||||
|
||||
((!fpgaIsSet() && !rhs.fpgaIsSet()) || (fpgaIsSet() && rhs.fpgaIsSet() && getFpga() == rhs.getFpga())) &&
|
||||
|
||||
|
||||
((!calibrationIsSet() && !rhs.calibrationIsSet()) || (calibrationIsSet() && rhs.calibrationIsSet() && getCalibration() == rhs.getCalibration()))
|
||||
|
||||
;
|
||||
}
|
||||
|
||||
bool Jfjoch_statistics::operator!=(const Jfjoch_statistics& rhs) const
|
||||
{
|
||||
return !(*this == rhs);
|
||||
}
|
||||
|
||||
void to_json(nlohmann::json& j, const Jfjoch_statistics& o)
|
||||
{
|
||||
j = nlohmann::json::object();
|
||||
if(o.detectorIsSet())
|
||||
j["detector"] = o.m_Detector;
|
||||
if(o.measurementIsSet())
|
||||
j["measurement"] = o.m_Measurement;
|
||||
if(o.brokerIsSet())
|
||||
j["broker"] = o.m_Broker;
|
||||
if(o.fpgaIsSet() || !o.m_Fpga.empty())
|
||||
j["fpga"] = o.m_Fpga;
|
||||
if(o.calibrationIsSet() || !o.m_Calibration.empty())
|
||||
j["calibration"] = o.m_Calibration;
|
||||
|
||||
}
|
||||
|
||||
void from_json(const nlohmann::json& j, Jfjoch_statistics& o)
|
||||
{
|
||||
if(j.find("detector") != j.end())
|
||||
{
|
||||
j.at("detector").get_to(o.m_Detector);
|
||||
o.m_DetectorIsSet = true;
|
||||
}
|
||||
if(j.find("measurement") != j.end())
|
||||
{
|
||||
j.at("measurement").get_to(o.m_Measurement);
|
||||
o.m_MeasurementIsSet = true;
|
||||
}
|
||||
if(j.find("broker") != j.end())
|
||||
{
|
||||
j.at("broker").get_to(o.m_Broker);
|
||||
o.m_BrokerIsSet = true;
|
||||
}
|
||||
if(j.find("fpga") != j.end())
|
||||
{
|
||||
j.at("fpga").get_to(o.m_Fpga);
|
||||
o.m_FpgaIsSet = true;
|
||||
}
|
||||
if(j.find("calibration") != j.end())
|
||||
{
|
||||
j.at("calibration").get_to(o.m_Calibration);
|
||||
o.m_CalibrationIsSet = true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
org::openapitools::server::model::Detector_status Jfjoch_statistics::getDetector() const
|
||||
{
|
||||
return m_Detector;
|
||||
}
|
||||
void Jfjoch_statistics::setDetector(org::openapitools::server::model::Detector_status const& value)
|
||||
{
|
||||
m_Detector = value;
|
||||
m_DetectorIsSet = true;
|
||||
}
|
||||
bool Jfjoch_statistics::detectorIsSet() const
|
||||
{
|
||||
return m_DetectorIsSet;
|
||||
}
|
||||
void Jfjoch_statistics::unsetDetector()
|
||||
{
|
||||
m_DetectorIsSet = false;
|
||||
}
|
||||
org::openapitools::server::model::Measurement_statistics Jfjoch_statistics::getMeasurement() const
|
||||
{
|
||||
return m_Measurement;
|
||||
}
|
||||
void Jfjoch_statistics::setMeasurement(org::openapitools::server::model::Measurement_statistics const& value)
|
||||
{
|
||||
m_Measurement = value;
|
||||
m_MeasurementIsSet = true;
|
||||
}
|
||||
bool Jfjoch_statistics::measurementIsSet() const
|
||||
{
|
||||
return m_MeasurementIsSet;
|
||||
}
|
||||
void Jfjoch_statistics::unsetMeasurement()
|
||||
{
|
||||
m_MeasurementIsSet = false;
|
||||
}
|
||||
org::openapitools::server::model::Broker_status Jfjoch_statistics::getBroker() const
|
||||
{
|
||||
return m_Broker;
|
||||
}
|
||||
void Jfjoch_statistics::setBroker(org::openapitools::server::model::Broker_status const& value)
|
||||
{
|
||||
m_Broker = value;
|
||||
m_BrokerIsSet = true;
|
||||
}
|
||||
bool Jfjoch_statistics::brokerIsSet() const
|
||||
{
|
||||
return m_BrokerIsSet;
|
||||
}
|
||||
void Jfjoch_statistics::unsetBroker()
|
||||
{
|
||||
m_BrokerIsSet = false;
|
||||
}
|
||||
std::vector<org::openapitools::server::model::Fpga_status_inner> Jfjoch_statistics::getFpga() const
|
||||
{
|
||||
return m_Fpga;
|
||||
}
|
||||
void Jfjoch_statistics::setFpga(std::vector<org::openapitools::server::model::Fpga_status_inner> const& value)
|
||||
{
|
||||
m_Fpga = value;
|
||||
m_FpgaIsSet = true;
|
||||
}
|
||||
bool Jfjoch_statistics::fpgaIsSet() const
|
||||
{
|
||||
return m_FpgaIsSet;
|
||||
}
|
||||
void Jfjoch_statistics::unsetFpga()
|
||||
{
|
||||
m_FpgaIsSet = false;
|
||||
}
|
||||
std::vector<org::openapitools::server::model::Calibration_statistics_inner> Jfjoch_statistics::getCalibration() const
|
||||
{
|
||||
return m_Calibration;
|
||||
}
|
||||
void Jfjoch_statistics::setCalibration(std::vector<org::openapitools::server::model::Calibration_statistics_inner> const& value)
|
||||
{
|
||||
m_Calibration = value;
|
||||
m_CalibrationIsSet = true;
|
||||
}
|
||||
bool Jfjoch_statistics::calibrationIsSet() const
|
||||
{
|
||||
return m_CalibrationIsSet;
|
||||
}
|
||||
void Jfjoch_statistics::unsetCalibration()
|
||||
{
|
||||
m_CalibrationIsSet = false;
|
||||
}
|
||||
|
||||
|
||||
} // namespace org::openapitools::server::model
|
||||
|
||||
@@ -0,0 +1,120 @@
|
||||
/**
|
||||
* 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.
|
||||
*/
|
||||
/*
|
||||
* Jfjoch_statistics.h
|
||||
*
|
||||
* Pool statistics for Jungfraujoch to reduce transfers between frontend and jfjoch_broker
|
||||
*/
|
||||
|
||||
#ifndef Jfjoch_statistics_H_
|
||||
#define Jfjoch_statistics_H_
|
||||
|
||||
|
||||
#include "Calibration_statistics_inner.h"
|
||||
#include "Detector_status.h"
|
||||
#include "Broker_status.h"
|
||||
#include "Measurement_statistics.h"
|
||||
#include "Fpga_status_inner.h"
|
||||
#include <vector>
|
||||
#include <nlohmann/json.hpp>
|
||||
|
||||
namespace org::openapitools::server::model
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// Pool statistics for Jungfraujoch to reduce transfers between frontend and jfjoch_broker
|
||||
/// </summary>
|
||||
class Jfjoch_statistics
|
||||
{
|
||||
public:
|
||||
Jfjoch_statistics();
|
||||
virtual ~Jfjoch_statistics() = 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_statistics& rhs) const;
|
||||
bool operator!=(const Jfjoch_statistics& rhs) const;
|
||||
|
||||
/////////////////////////////////////////////
|
||||
/// Jfjoch_statistics members
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
org::openapitools::server::model::Detector_status getDetector() const;
|
||||
void setDetector(org::openapitools::server::model::Detector_status const& value);
|
||||
bool detectorIsSet() const;
|
||||
void unsetDetector();
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
org::openapitools::server::model::Measurement_statistics getMeasurement() const;
|
||||
void setMeasurement(org::openapitools::server::model::Measurement_statistics const& value);
|
||||
bool measurementIsSet() const;
|
||||
void unsetMeasurement();
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
org::openapitools::server::model::Broker_status getBroker() const;
|
||||
void setBroker(org::openapitools::server::model::Broker_status const& value);
|
||||
bool brokerIsSet() const;
|
||||
void unsetBroker();
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
std::vector<org::openapitools::server::model::Fpga_status_inner> getFpga() const;
|
||||
void setFpga(std::vector<org::openapitools::server::model::Fpga_status_inner> const& value);
|
||||
bool fpgaIsSet() const;
|
||||
void unsetFpga();
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
std::vector<org::openapitools::server::model::Calibration_statistics_inner> getCalibration() const;
|
||||
void setCalibration(std::vector<org::openapitools::server::model::Calibration_statistics_inner> const& value);
|
||||
bool calibrationIsSet() const;
|
||||
void unsetCalibration();
|
||||
|
||||
friend void to_json(nlohmann::json& j, const Jfjoch_statistics& o);
|
||||
friend void from_json(const nlohmann::json& j, Jfjoch_statistics& o);
|
||||
protected:
|
||||
org::openapitools::server::model::Detector_status m_Detector;
|
||||
bool m_DetectorIsSet;
|
||||
org::openapitools::server::model::Measurement_statistics m_Measurement;
|
||||
bool m_MeasurementIsSet;
|
||||
org::openapitools::server::model::Broker_status m_Broker;
|
||||
bool m_BrokerIsSet;
|
||||
std::vector<org::openapitools::server::model::Fpga_status_inner> m_Fpga;
|
||||
bool m_FpgaIsSet;
|
||||
std::vector<org::openapitools::server::model::Calibration_statistics_inner> m_Calibration;
|
||||
bool m_CalibrationIsSet;
|
||||
|
||||
};
|
||||
|
||||
} // namespace org::openapitools::server::model
|
||||
|
||||
#endif /* Jfjoch_statistics_H_ */
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* 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.16
|
||||
* 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).
|
||||
|
||||
+27
-1
@@ -5,7 +5,7 @@ info:
|
||||
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.
|
||||
version: 1.0.0-rc.16
|
||||
version: 1.0.0-rc.17
|
||||
contact:
|
||||
name: Filip Leonarski (Paul Scherrer Institute)
|
||||
email: filip.leonarski@psi.ch
|
||||
@@ -814,6 +814,20 @@ components:
|
||||
masked_pixels:
|
||||
type: integer
|
||||
format: int64
|
||||
jfjoch_statistics:
|
||||
type: object
|
||||
description: "Pool statistics for Jungfraujoch to reduce transfers between frontend and jfjoch_broker"
|
||||
properties:
|
||||
detector:
|
||||
$ref: '#/components/schemas/detector_status'
|
||||
measurement:
|
||||
$ref: '#/components/schemas/measurement_statistics'
|
||||
broker:
|
||||
$ref: '#/components/schemas/broker_status'
|
||||
fpga:
|
||||
$ref: '#/components/schemas/fpga_status'
|
||||
calibration:
|
||||
$ref: '#/components/schemas/calibration_statistics'
|
||||
preview_settings:
|
||||
type: object
|
||||
description: "Settings for JPEG rendering of preview images"
|
||||
@@ -2048,6 +2062,18 @@ paths:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/plots'
|
||||
/statistics:
|
||||
get:
|
||||
summary: Get general statistics
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/compression'
|
||||
responses:
|
||||
"200":
|
||||
description: Everything OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/jfjoch_statistics'
|
||||
/statistics/data_collection:
|
||||
get:
|
||||
summary: Get data collection statistics
|
||||
|
||||
+38
-32
@@ -349,7 +349,7 @@ data-styled.g137[id="sc-kqGpvY"]{content:"bAFwPb,"}/*!sc*/
|
||||
|
||||
<body>
|
||||
|
||||
<div id="redoc"><div class="sc-iXzffn cyBpUp redoc-wrap"><div class="sc-dPZUdm fGVzNH menu-content" style="top:0px;height:calc(100vh - 0px)"><div role="search" class="sc-dExXmK fcCKrX"><svg class="sc-kqGpvY bAFwPb search-icon" version="1.1" viewBox="0 0 1000 1000" x="0px" xmlns="http://www.w3.org/2000/svg" y="0px"><path d="M968.2,849.4L667.3,549c83.9-136.5,66.7-317.4-51.7-435.6C477.1-25,252.5-25,113.9,113.4c-138.5,138.3-138.5,362.6,0,501C219.2,730.1,413.2,743,547.6,666.5l301.9,301.4c43.6,43.6,76.9,14.9,104.2-12.4C981,928.3,1011.8,893,968.2,849.4z M524.5,522c-88.9,88.7-233,88.7-321.8,0c-88.9-88.7-88.9-232.6,0-321.3c88.9-88.7,233-88.7,321.8,0C613.4,289.4,613.4,433.3,524.5,522z"></path></svg><input placeholder="Search..." aria-label="Search" type="text" class="sc-iapVNj ivCUtK search-input" value=""/></div><div class="sc-dtBeHJ eyrQrY scrollbar-container undefined"><ul role="menu" class="sc-iHmqaY gVzKKH"><li tabindex="0" depth="2" data-item-id="/paths/~1initialize/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Initialize detector and data acquisition</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1pedestal/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Collect dark current for the detector</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1start/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Start detector</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1wait_till_done/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Wait for acquisition done</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1trigger/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Send soft trigger to the detector</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1cancel/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Cancel running data collection</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1deactivate/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Prepare detector to turn off</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1config~1detector/put" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="put" class="sc-ehiymJ hkxktA operation-type put">put</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Change detector configuration</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1config~1detector/get" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="get" class="sc-ehiymJ hkxktA operation-type get">get</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Get detector configuration</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1config~1instrument/put" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="put" class="sc-ehiymJ hkxktA operation-type put">put</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Change instrument metadata</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1config~1instrument/get" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="get" class="sc-ehiymJ hkxktA operation-type get">get</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Get instrument metadata</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1config~1image_format/put" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="put" class="sc-ehiymJ hkxktA operation-type put">put</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Change image output format</span><Line truncated
|
||||
<div id="redoc"><div class="sc-iXzffn cyBpUp redoc-wrap"><div class="sc-dPZUdm fGVzNH menu-content" style="top:0px;height:calc(100vh - 0px)"><div role="search" class="sc-dExXmK fcCKrX"><svg class="sc-kqGpvY bAFwPb search-icon" version="1.1" viewBox="0 0 1000 1000" x="0px" xmlns="http://www.w3.org/2000/svg" y="0px"><path d="M968.2,849.4L667.3,549c83.9-136.5,66.7-317.4-51.7-435.6C477.1-25,252.5-25,113.9,113.4c-138.5,138.3-138.5,362.6,0,501C219.2,730.1,413.2,743,547.6,666.5l301.9,301.4c43.6,43.6,76.9,14.9,104.2-12.4C981,928.3,1011.8,893,968.2,849.4z M524.5,522c-88.9,88.7-233,88.7-321.8,0c-88.9-88.7-88.9-232.6,0-321.3c88.9-88.7,233-88.7,321.8,0C613.4,289.4,613.4,433.3,524.5,522z"></path></svg><input placeholder="Search..." aria-label="Search" type="text" class="sc-iapVNj ivCUtK search-input" value=""/></div><div class="sc-dtBeHJ eyrQrY scrollbar-container undefined"><ul role="menu" class="sc-iHmqaY gVzKKH"><li tabindex="0" depth="2" data-item-id="/paths/~1initialize/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Initialize detector and data acquisition</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1pedestal/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Collect dark current for the detector</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1start/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Start detector</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1wait_till_done/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Wait for acquisition done</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1trigger/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Send soft trigger to the detector</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1cancel/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Cancel running data collection</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1deactivate/post" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="post" class="sc-ehiymJ hkxktA operation-type post">post</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Prepare detector to turn off</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1config~1detector/put" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="put" class="sc-ehiymJ hkxktA operation-type put">put</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Change detector configuration</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1config~1detector/get" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="get" class="sc-ehiymJ hkxktA operation-type get">get</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Get detector configuration</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1config~1instrument/put" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="put" class="sc-ehiymJ hkxktA operation-type put">put</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Change instrument metadata</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1config~1instrument/get" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="get" class="sc-ehiymJ hkxktA operation-type get">get</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Get instrument metadata</span></label></li><li tabindex="0" depth="2" data-item-id="/paths/~1config~1image_format/put" role="menuitem" class="sc-kYxEyd jiiTgL"><label class="sc-bpUCxw iwtEuE -depth2"><span type="put" class="sc-ehiymJ hkxktA operation-type put">put</span><span tabindex="0" width="calc(100% - 38px)" class="sc-eyvHYj kgCeIH">Change image output format</span><Line truncated
|
||||
m -673.67664,1221.6502 -231.2455,-231.24803 55.6165,
|
||||
-55.627 c 30.5891,-30.59485 56.1806,-55.627 56.8701,-55.627 0.6894,
|
||||
0 79.8637,78.60862 175.9427,174.68583 l 174.6892,174.6858 174.6892,
|
||||
@@ -367,7 +367,7 @@ data-styled.g137[id="sc-kqGpvY"]{content:"bAFwPb,"}/*!sc*/
|
||||
55.627 l 55.6165,55.627 -231.245496,231.24803 c -127.185,127.1864
|
||||
-231.5279,231.248 -231.873,231.248 -0.3451,0 -104.688,
|
||||
-104.0616 -231.873,-231.248 z
|
||||
" fill="currentColor"></path></g></svg></div></div><div class="sc-lnPyOc exixUa api-content"><div class="sc-dcJtft gWwwsw"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo api-info"><h1 class="sc-imWZod sc-fTFkHh cDCvoe hJudwp">Jungfraujoch<!-- --> <span>(<!-- -->1.0.0-rc.16<!-- -->)</span></h1><p>Download OpenAPI specification<!-- -->:<a download="openapi.json" target="_blank" class="sc-ktJcvw dyWjRw">Download</a></p><div class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><div class="sc-kMkwmO knZeAO"><div class="sc-fiCwYx foAXyM"><span class="sc-gmgEyz fOljxM">Filip Leonarski (Paul Scherrer Institute)<!-- -->:<!-- --> <a href="mailto:filip.leonarski@psi.ch">filip.leonarski@psi.ch</a></span> <!-- --> <!-- --> </div></div></div><div data-role="redoc-summary" html="" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"></div><div data-role="redoc-description" html="<p>API to control Jungfraujoch developed by the Paul Scherrer Institute (Switzerland).
|
||||
" fill="currentColor"></path></g></svg></div></div><div class="sc-lnPyOc exixUa api-content"><div class="sc-dcJtft gWwwsw"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo api-info"><h1 class="sc-imWZod sc-fTFkHh cDCvoe hJudwp">Jungfraujoch<!-- --> <span>(<!-- -->1.0.0-rc.17<!-- -->)</span></h1><p>Download OpenAPI specification<!-- -->:<a download="openapi.json" target="_blank" class="sc-ktJcvw dyWjRw">Download</a></p><div class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><div class="sc-kMkwmO knZeAO"><div class="sc-fiCwYx foAXyM"><span class="sc-gmgEyz fOljxM">Filip Leonarski (Paul Scherrer Institute)<!-- -->:<!-- --> <a href="mailto:filip.leonarski@psi.ch">filip.leonarski@psi.ch</a></span> <!-- --> <!-- --> </div></div></div><div data-role="redoc-summary" html="" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"></div><div data-role="redoc-description" html="<p>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.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>API to control Jungfraujoch developed by the Paul Scherrer Institute (Switzerland).
|
||||
@@ -887,8 +887,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Mean intensity for d = 3 - 5 A per image; binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Everything OK. Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Everything OK. Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -899,8 +899,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Number of spots per image; binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -911,8 +911,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Image indexing rate; binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -923,8 +923,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Count of error (mean) and saturated (mean/max) pixels per image; binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -935,8 +935,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Count of strong pixels per image (from spot finding); binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -947,8 +947,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Sum of ROI rectangle per image; binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -959,8 +959,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Max count of ROI per image; binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -971,8 +971,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Number of pixels within a ROI area; pixels with special values (overload, bad pixel) are excluded; multipixels are counted just once; binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Response will be by default compressed with deflate algorithm, if using curl, use --compressed option.</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -983,8 +983,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Amount of frames the receiver is behind the FPGA for each image - used for internal debugging; binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Everything OK</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Everything OK</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -995,8 +995,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Amount of send buffers available during frame processing - used for internal debugging; binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Everything OK</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Everything OK</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -1007,8 +1007,8 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Ratio of collected and expected packets per image; binning is configurable</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="binning" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">binning</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Binning of frames for the plot (0 = default binning)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Binning of frames for the plot (0 = default binning)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Everything OK</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Everything OK</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU IVbkz"><svg class="sc-cwHqhk bBKyWu" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">400<!-- --> </strong><div html="<p>Input parsing or validation error</p>
|
||||
@@ -1017,13 +1017,19 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Test Jungfraujoch system</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/plot/image_collection_efficiency</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab:R9plq:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9plq:0" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9plq:0" aria-labelledby="tab:R9plq:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"title"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"plot"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"title"</span>: <span class="token string">""</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"x"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token number">0.1</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"y"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token number">0.1</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1plot~1azim_int/get" data-section-id="/paths/~1plot~1azim_int/get" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1plot~1azim_int/get" aria-label="/paths/~1plot~1azim_int/get"></a>Generate radial integration profile<!-- --> </h2><div class="sc-ePDMnc bFMrcX"><div html="<p>Generate average radial integration profile</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Generate average radial integration profile</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data</p>
|
||||
</div></div><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Everything OK</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Everything OK</p>
|
||||
</div></button></div></div></div><div class="sc-iGgVNO sc-gsFSjX hqwGrr ggsSF"><div class="sc-dkmVhU ciDfNo"><button class="sc-iEXLnV jJBChh"><span type="get" class="sc-EgOky fPaeRy http-verb get">get</span><span class="sc-ejfMNw gHPYVn">/plot/azim_int</span><svg class="sc-cwHqhk fxsrq" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-eZYMKX fuVsyo"><div class="sc-dlWDvs kyqjNC"><div html="<p>Test Jungfraujoch system</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Test Jungfraujoch system</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/plot/azim_int</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab:R9pma:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9pma:0" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9pma:0" aria-labelledby="tab:R9pma:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"title"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"plot"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"title"</span>: <span class="token string">""</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"x"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token number">0.1</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"y"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token number">0.1</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1statistics~1data_collection/get" data-section-id="/paths/~1statistics~1data_collection/get" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1statistics~1data_collection/get" aria-label="/paths/~1statistics~1data_collection/get"></a>Get data collection statistics<!-- --> </h2><div class="sc-ePDMnc bFMrcX"><div html="<p>Results of the last data collection</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/plot/azim_int</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab:R9pma:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9pma:0" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9pma:0" aria-labelledby="tab:R9pma:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"title"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"plot"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"title"</span>: <span class="token string">""</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"x"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token number">0.1</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"y"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token number">0.1</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1statistics/get" data-section-id="/paths/~1statistics/get" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1statistics/get" aria-label="/paths/~1statistics/get"></a>Get general statistics<!-- --> </h2><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class="last "><td kind="field" title="compression" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">compression</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Enable DEFLATE compression of output data.</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Enable DEFLATE compression of output data.</p>
|
||||
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Everything OK</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Everything OK</p>
|
||||
</div></button></div></div></div><div class="sc-iGgVNO sc-gsFSjX hqwGrr ggsSF"><div class="sc-dkmVhU ciDfNo"><button class="sc-iEXLnV jJBChh"><span type="get" class="sc-EgOky fPaeRy http-verb get">get</span><span class="sc-ejfMNw gHPYVn">/statistics</span><svg class="sc-cwHqhk fxsrq" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-eZYMKX fuVsyo"><div class="sc-dlWDvs kyqjNC"><div html="<p>Test Jungfraujoch system</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Test Jungfraujoch system</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/statistics</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab:R9pmq:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9pmq:0" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9pmq:0" aria-labelledby="tab:R9pmq:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"detector"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"state"</span>: <span class="token string">"Idle"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"powerchip"</span>: <span class="token string">"PowerOn"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"server_version"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"number_of_triggers_left"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"fpga_temp_degC"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token number">0</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"high_voltage_V"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token number">0</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"measurement"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"file_prefix"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"run_number"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"experiment_group"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"images_expected"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"images_collected"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"images_sent"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"images_discarded_lossy_compression"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"max_image_number_sent"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token strLine truncated
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Results of the last data collection</p>
|
||||
</div></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Everything OK</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Everything OK</p>
|
||||
@@ -1031,13 +1037,13 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>No data collection performed so far</p>
|
||||
</div></button></div></div></div><div class="sc-iGgVNO sc-gsFSjX hqwGrr ggsSF"><div class="sc-dkmVhU ciDfNo"><button class="sc-iEXLnV jJBChh"><span type="get" class="sc-EgOky fPaeRy http-verb get">get</span><span class="sc-ejfMNw gHPYVn">/statistics/data_collection</span><svg class="sc-cwHqhk fxsrq" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-eZYMKX fuVsyo"><div class="sc-dlWDvs kyqjNC"><div html="<p>Test Jungfraujoch system</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Test Jungfraujoch system</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/statistics/data_collection</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab:R9pmq:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9pmq:0" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9pmq:0" aria-labelledby="tab:R9pmq:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"file_prefix"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"run_number"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"experiment_group"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"images_expected"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"images_collected"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"images_sent"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"images_discarded_lossy_compression"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"max_image_number_sent"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"collection_efficiency"</span>: <span class="token number">1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"compression_ratio"</span>: <span class="token number">5.3</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"cancelled"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"max_receiver_delay"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"indexing_rate"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"detector_width"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"detector_height"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"detector_pixel_depth"</span>: <span class="token number">2</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"bkg_estimate"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"unit_cell"</span>: <span class="token string">"string"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1statistics~1calibration/get" data-section-id="/paths/~1statistics~1calibration/get" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1statistics~1calibration/get" aria-label="/paths/~1statistics~1calibration/get"></a>Get calibration statistics<!-- --> </h2><div class="sc-ePDMnc bFMrcX"><div html="<p>Statistics are provided for each module/storage cell separately</pLine truncated
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/statistics/data_collection</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab:R9pna:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9pna:0" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9pna:0" aria-labelledby="tab:R9pna:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"file_prefix"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"run_number"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"experiment_group"</span>: <span class="token string">"string"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"images_expected"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"images_collected"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"images_sent"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"images_discarded_lossy_compression"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"max_image_number_sent"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"collection_efficiency"</span>: <span class="token number">1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"compression_ratio"</span>: <span class="token number">5.3</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"cancelled"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"max_receiver_delay"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"indexing_rate"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"detector_width"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"detector_height"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"detector_pixel_depth"</span>: <span class="token number">2</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"bkg_estimate"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"unit_cell"</span>: <span class="token string">"string"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1statistics~1calibration/get" data-section-id="/paths/~1statistics~1calibration/get" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1statistics~1calibration/get" aria-label="/paths/~1statistics~1calibration/get"></a>Get calibration statistics<!-- --> </h2><div class="sc-ePDMnc bFMrcX"><div html="<p>Statistics are provided for each module/storage cell separately</pLine truncated
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"><p>Statistics are provided for each module/storage cell separately</p>
|
||||
</div></div><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Everything OK</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Everything OK</p>
|
||||
</div></button></div></div></div><div class="sc-iGgVNO sc-gsFSjX hqwGrr ggsSF"><div class="sc-dkmVhU ciDfNo"><button class="sc-iEXLnV jJBChh"><span type="get" class="sc-EgOky fPaeRy http-verb get">get</span><span class="sc-ejfMNw gHPYVn">/statistics/calibration</span><svg class="sc-cwHqhk fxsrq" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-eZYMKX fuVsyo"><div class="sc-dlWDvs kyqjNC"><div html="<p>Test Jungfraujoch system</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Test Jungfraujoch system</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/statistics/calibration</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab:R9pna:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9pna:0" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9pna:0" aria-labelledby="tab:R9pna:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"module_number"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"storage_cell_number"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"pedestal_g0_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"pedestal_g1_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"pedestal_g2_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"gain_g0_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"gain_g1_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"gain_g2_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"masked_pixels"</span>: <span class="token number">0</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1preview~1image.jpeg/post" data-section-id="/paths/~1preview~1image.jpeg/post" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1preview~1image.jpeg/post" aria-label="/paths/~1preview~1image.jpeg/post"></a>Get last preview image in JPEG format using custom settings<!-- --> </h2><h5 class="sc-dAlxHm fZUozT">Request Body schema: <span class="sc-cWSIco fpgAnb">application/json</span></h5><div html="" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"></div><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="saturation" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">saturation</span><div class="sc-NxrBK sc-hRJeED kMMoBE gypzqL">required</div></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz"> <!-- --><<!-- -->int64<!-- -->><!-- --> </span><span> <span class="sc-NxrBK sc-fxwsqt kMMoBE eYbZrn"> <!-- -->[ 0 .. 65535 ]<!-- --> </span></span></div> <div><div html="<p>Saturation value to set contrast in the preview image</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/statistics/calibration</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab:R9pnq:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9pnq:0" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9pnq:0" aria-labelledby="tab:R9pnq:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"module_number"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"storage_cell_number"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"pedestal_g0_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"pedestal_g1_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"pedestal_g2_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"gain_g0_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"gain_g1_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"gain_g2_mean"</span>: <span class="token number">0.1</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"masked_pixels"</span>: <span class="token number">0</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1preview~1image.jpeg/post" data-section-id="/paths/~1preview~1image.jpeg/post" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1preview~1image.jpeg/post" aria-label="/paths/~1preview~1image.jpeg/post"></a>Get last preview image in JPEG format using custom settings<!-- --> </h2><h5 class="sc-dAlxHm fZUozT">Request Body schema: <span class="sc-cWSIco fpgAnb">application/json</span></h5><div html="" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq"></div><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="saturation" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">saturation</span><div class="sc-NxrBK sc-hRJeED kMMoBE gypzqL">required</div></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz"> <!-- --><<!-- -->int64<!-- -->><!-- --> </span><span> <span class="sc-NxrBK sc-fxwsqt kMMoBE eYbZrn"> <!-- -->[ 0 .. 65535 ]<!-- --> </span></span></div> <div><div html="<p>Saturation value to set contrast in the preview image</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Saturation value to set contrast in the preview image</p>
|
||||
</div></div></div></td></tr><tr class=""><td kind="field" title="show_spots" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">show_spots</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">boolean</span></div><div><span class="sc-NxrBK kMMoBE"> <!-- -->Default:<!-- --> </span> <span class="sc-NxrBK sc-ddjGcj kMMoBE jnfAav">true</span></div> <div><div html="<p>Show spot finding results on the image</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Show spot finding results on the image</p>
|
||||
@@ -1059,7 +1065,7 @@ Changing detector will set detector to <code>Inactive</code> state and will requ
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Error within Jungfraujoch code - see output message.</p>
|
||||
</div></button></div></div></div><div class="sc-iGgVNO sc-gsFSjX hqwGrr ggsSF"><div class="sc-dkmVhU ciDfNo"><button class="sc-iEXLnV jJBChh"><span type="post" class="sc-EgOky bBtSVQ http-verb post">post</span><span class="sc-ejfMNw gHPYVn">/preview/image.jpeg</span><svg class="sc-cwHqhk fxsrq" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-eZYMKX fuVsyo"><div class="sc-dlWDvs kyqjNC"><div html="<p>Test Jungfraujoch system</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Test Jungfraujoch system</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/preview/image.jpeg</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Request samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="tab:R99nq:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R99nq:0" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R99nq:0" aria-labelledby="tab:R99nq:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"saturation"</span>: <span class="token number">65535</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"show_spots"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"show_roi"</span>: <span class="token boolean">false</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"jpeg_quality"</span>: <span class="token number">100</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"show_indexed"</span>: <span class="token boolean">false</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"show_user_mask"</span>: <span class="token boolean">false</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"resolution_ring"</span>: <span class="token number">0.1</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-error react-tabs__tab--selected" role="tab" id="tab:R9pnq:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9pnq:0" tabindex="0" data-rttab="true">500</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9pnq:0" aria-labelledby="tab:R9pnq:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"msg"</span>: <span class="token string">"Detector in wrong state"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"reason"</span>: <span class="token string">"WrongDAQState"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1preview~1image.jpeg/get" data-section-id="/paths/~1preview~1image.jpeg/get" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1preview~1image.jpeg/get" aria-label="/paths/~1preview~1image.jpeg/get"></a>Get last preview image in JPEG format using default settings<!-- --> </h2><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Preview image</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/preview/image.jpeg</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Request samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="tab:R99oa:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R99oa:0" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R99oa:0" aria-labelledby="tab:R99oa:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"saturation"</span>: <span class="token number">65535</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"show_spots"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"show_roi"</span>: <span class="token boolean">false</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"jpeg_quality"</span>: <span class="token number">100</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"show_indexed"</span>: <span class="token boolean">false</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"show_user_mask"</span>: <span class="token boolean">false</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"resolution_ring"</span>: <span class="token number">0.1</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-error react-tabs__tab--selected" role="tab" id="tab:R9poa:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9poa:0" tabindex="0" data-rttab="true">500</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9poa:0" aria-labelledby="tab:R9poa:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"msg"</span>: <span class="token string">"Detector in wrong state"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"reason"</span>: <span class="token string">"WrongDAQState"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1preview~1image.jpeg/get" data-section-id="/paths/~1preview~1image.jpeg/get" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1preview~1image.jpeg/get" aria-label="/paths/~1preview~1image.jpeg/get"></a>Get last preview image in JPEG format using default settings<!-- --> </h2><div><h3 class="sc-dSIJcR hePoiW">Responses</h3><div><button class="sc-gdyfxU hDzmxh"><svg class="sc-cwHqhk jqLwgG" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bVHBsO eBHfiv">200<!-- --> </strong><div html="<p>Preview image</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Preview image</p>
|
||||
</div></button></div><div><button class="sc-gdyfxU gxzUtd" disabled=""><strong class="sc-bVHBsO eBHfiv">404<!-- --> </strong><div html="<p>No preview image recorded so far</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>No preview image recorded so far</p>
|
||||
@@ -1115,7 +1121,7 @@ User mask is not automatically applied - i.e. pixels with user mask will have a
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX cWARBq sc-dCFGXG gKOXES"><p>Error within Jungfraujoch code - see output message.</p>
|
||||
</div></button></div></div></div><div class="sc-iGgVNO sc-gsFSjX hqwGrr ggsSF"><div class="sc-dkmVhU ciDfNo"><button class="sc-iEXLnV jJBChh"><span type="put" class="sc-EgOky eJsTbX http-verb put">put</span><span class="sc-ejfMNw gHPYVn">/config/user_mask.tiff</span><svg class="sc-cwHqhk fxsrq" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-eZYMKX fuVsyo"><div class="sc-dlWDvs kyqjNC"><div html="<p>Test Jungfraujoch system</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Test Jungfraujoch system</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/config/user_mask.tiff</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-error react-tabs__tab--selected" role="tab" id="tab:R9pqq:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9pqq:0" tabindex="0" data-rttab="true">500</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9pqq:0" aria-labelledby="tab:R9pqq:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"msg"</span>: <span class="token string">"Detector in wrong state"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"reason"</span>: <span class="token string">"WrongDAQState"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1preview~1pedestal.tiff/get" data-section-id="/paths/~1preview~1pedestal.tiff/get" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1preview~1pedestal.tiff/get" aria-label="/paths/~1preview~1pedestal.tiff/get"></a>Get pedestal G0 in TIFF format<!-- --> </h2><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="gain_level" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">gain_level</span><div class="sc-NxrBK sc-hRJeED kMMoBE gypzqL">required</div></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Gain level (0, 1, 2)</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/config/user_mask.tiff</div></div></div></div></div><div><h3 class="sc-kpDprT cgzTaG"> <!-- -->Response samples<!-- --> </h3><div class="sc-bXCLgj tlGxN" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-error react-tabs__tab--selected" role="tab" id="tab:R9pra:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R9pra:0" tabindex="0" data-rttab="true">500</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R9pra:0" aria-labelledby="tab:R9pra:0"><div><div class="sc-bbSYpP kIESIX"><span class="sc-fjvwmM bLpZTa">Content type</span><div class="sc-JrEyx OirWV">application/json</div></div><div class="sc-uVXKs fszzxn"><div class="sc-esYjtY hxmTDe"><div class="sc-koYCI kEwLiZ"><button><div class="sc-fhzEvr gpWFPc">Copy</div></button></div><div class="sc-eeDSqt bSgSrX sc-fXSgRJ dXllNu"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"msg"</span>: <span class="token string">"Detector in wrong state"</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"reason"</span>: <span class="token string">"WrongDAQState"</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1preview~1pedestal.tiff/get" data-section-id="/paths/~1preview~1pedestal.tiff/get" class="sc-dcJtft dNqlFH"><div class="sc-kAycRU NrBoN"><div class="sc-fqkwJk jLkFlo"><h2 class="sc-jXbVAB hXYRhd"><a class="sc-jlZhRR buKOug" href="#/paths/~1preview~1pedestal.tiff/get" aria-label="/paths/~1preview~1pedestal.tiff/get"></a>Get pedestal G0 in TIFF format<!-- --> </h2><div><h5 class="sc-dAlxHm fZUozT">query<!-- --> Parameters</h5><table class="sc-dAbbbq hPLMVw"><tbody><tr class=""><td kind="field" title="gain_level" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">gain_level</span><div class="sc-NxrBK sc-hRJeED kMMoBE gypzqL">required</div></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Gain level (0, 1, 2)</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Gain level (0, 1, 2)</p>
|
||||
</div></div></div></td></tr><tr class="last "><td kind="field" title="sc" class="sc-dLNtp sc-eldOKa fCxZSn jTSwDU"><span class="sc-gFqAYk fWSzIS"></span><span class="property-name">sc</span></td><td class="sc-fPXMhL kdholP"><div><div><span class="sc-NxrBK sc-cfxfQh kMMoBE hMkdpJ"></span><span class="sc-NxrBK sc-gFAXEw kMMoBE ffgeXz">integer</span></div> <div><div html="<p>Storage cell number</p>
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Storage cell number</p>
|
||||
@@ -1131,7 +1137,7 @@ User mask is not automatically applied - i.e. pixels with user mask will have a
|
||||
" class="sc-eeDSqt sc-eBMFzZ bSgSrX gayXgA"><p>Test Jungfraujoch system</p>
|
||||
</div><div tabindex="0" role="button"><div class="sc-hHOBVR lhFNhe"><span>http://localhost:5232</span>/version</div></div></div></div></div></div></div></div></div><div class="sc-eulNPF bYFiUR"></div></div></div>
|
||||
<script>
|
||||
const __redoc_state = {"menu":{"activeItemIdx":-1},"spec":{"data":{"openapi":"3.0.3","info":{"title":"Jungfraujoch","description":"API to control Jungfraujoch developed by the Paul Scherrer Institute (Switzerland).\nJungfraujoch is a data acquisition and analysis system for pixel array detectors, primarly PSI JUNGFRAU.\nJungfraujoch uses FPGA boards to acquire data at high data rates.\n","version":"1.0.0-rc.16","contact":{"name":"Filip Leonarski (Paul Scherrer Institute)","email":"filip.leonarski@psi.ch"}},"servers":[{"url":"http://localhost:5232","description":"Test Jungfraujoch system"}],"components":{"parameters":{"binning":{"in":"query","name":"binning","required":false,"schema":{"type":"integer"},"description":"Binning of frames for the plot (0 = default binning)"},"compression":{"in":"query","name":"compression","required":false,"schema":{"type":"boolean","default":true},"description":"Enable DEFLATE compression of output data"}},"schemas":{"rotation_axis":{"description":"Definition of a crystal rotation axis","type":"object","required":["step","vector"],"properties":{"name":{"type":"string","default":"omega","minLength":1,"description":"Name of rotation axis (e.g., omega, phi)"},"step":{"type":"number","format":"float","example":0.1,"description":"Angle step in degrees"},"start":{"type":"number","format":"float","example":50,"description":"Start angle in degrees","default":0},"vector":{"type":"array","description":"Rotation axis","example":[1,0,0],"items":{"type":"number","format":"float"},"minItems":3,"maxItems":3}}},"dataset_settings":{"type":"object","required":["beam_x_pxl","beam_y_pxl","detector_distance_mm","incident_energy_keV"],"properties":{"images_per_trigger":{"type":"integer","format":"int64","minimum":1,"default":1,"description":"For standard synchrotron data collection - this is number of images collected per one TTL trigger\nFor XFEL (pulsed source) - this number is ignored and set to 1\nFor storage cell mode - this number is ignored and set to number of storage cells\n"},"ntrigger":{"type":"integer","format":"int64","default":1,"minimum":1,"description":"Number of TTL trigger that the detector is expected to receive during data collection\n"},"image_time_us":{"type":"integer","format":"int64","minimum":0,"description":"Image time. \nIf not provided (or zero value) the frame time is assumed as default.\nImage time must be multiple of frame time; max value is 256 * frame_time. \nIn XFEL mode: summation happens for frames collected with multiple triggers.\nIgnored for storage cells and if raw data are saved.\n"},"beam_x_pxl":{"type":"number","format":"float","description":"/entry/detector/beam_center_x in NXmx\nBeam center in X direction [pixels]\n"},"beam_y_pxl":{"type":"number","format":"float","description":"/entry/detector/beam_center_y in NXmx\nBeam center in X direction [pixels]\n"},"detector_distance_mm":{"type":"number","format":"float","minimum":0,"description":"/entry/detector/distance in NXmx Detector distance [mm]"},"incident_energy_keV":{"type":"number","format":"float","minimum":0.001,"maximum":500,"description":"Used to calculate /entry/beam/incident_wavelength in NXmx\nIncident particle (photon, electron) energy in keV\n"},"file_prefix":{"type":"string","default":"","description":"Prefix for filenames. If left empty, no file will be saved."},"images_per_file":{"type":"integer","format":"int64","minimum":0,"default":1000,"description":"Number of files in a single HDF5 data file (0 = write all images to a single data file)."},"space_group_number":{"type":"integer","format":"int64","minimum":0,"default":0,"maximum":194},"sample_name":{"type":"string","default":"","description":"/entry/sample/name in NXmx\nSample name\n"},"compression":{"type":"string","enum":["bslz4","bszstd","bszstd_rle","none"],"default":"bslz4"},"total_flux":{"type":"number","format":"float","description":"/entry/beam/total_flux in NXmx\nFlux incident on beam plane in photons per second. In other words this is the flux integrated over area. [photons/s]\n"},"transmission":{"type":"number","format":"float","minimum":0,"maximum":1,"description":"/entry/instrument/attenuator/attenuator_transmission\nTransmission of attenuator (filter) [no units]\n"},"goniometer":{"$ref":"#/components/schemas/rotation_axis"},"header_appendix":{"description":"Header appendix, added as user_data/user to start message (can be any valid JSON)"},"image_appendix":{"description":"Image appendix, added as user_data to image message (can be any valid JSON)"},"data_reduction_factor_serialmx":{"type":"number","format":"float","default":1,"minimum":0,"maximum":1,"description":"Rate at which non-indexed images are accepted to be forwarded to writer. \nValue of 1.0 (default) means that all images are written.\nValues below zero mean that non-indexed images will be accepted with a given probability.\n"},"pixel_value_low_threshold":{"type":"integer","format":"int64","minimum":0,"description":"Set all counts lower than the vaLine truncated
|
||||
const __redoc_state = {"menu":{"activeItemIdx":-1},"spec":{"data":{"openapi":"3.0.3","info":{"title":"Jungfraujoch","description":"API to control Jungfraujoch developed by the Paul Scherrer Institute (Switzerland).\nJungfraujoch is a data acquisition and analysis system for pixel array detectors, primarly PSI JUNGFRAU.\nJungfraujoch uses FPGA boards to acquire data at high data rates.\n","version":"1.0.0-rc.17","contact":{"name":"Filip Leonarski (Paul Scherrer Institute)","email":"filip.leonarski@psi.ch"}},"servers":[{"url":"http://localhost:5232","description":"Test Jungfraujoch system"}],"components":{"parameters":{"binning":{"in":"query","name":"binning","required":false,"schema":{"type":"integer"},"description":"Binning of frames for the plot (0 = default binning)"},"compression":{"in":"query","name":"compression","required":false,"schema":{"type":"boolean","default":true},"description":"Enable DEFLATE compression of output data."}},"schemas":{"rotation_axis":{"description":"Definition of a crystal rotation axis","type":"object","required":["step","vector"],"properties":{"name":{"type":"string","default":"omega","minLength":1,"description":"Name of rotation axis (e.g., omega, phi)"},"step":{"type":"number","format":"float","example":0.1,"description":"Angle step in degrees"},"start":{"type":"number","format":"float","example":50,"description":"Start angle in degrees","default":0},"vector":{"type":"array","description":"Rotation axis","example":[1,0,0],"items":{"type":"number","format":"float"},"minItems":3,"maxItems":3}}},"dataset_settings":{"type":"object","required":["beam_x_pxl","beam_y_pxl","detector_distance_mm","incident_energy_keV"],"properties":{"images_per_trigger":{"type":"integer","format":"int64","minimum":1,"default":1,"description":"For standard synchrotron data collection - this is number of images collected per one TTL trigger\nFor XFEL (pulsed source) - this number is ignored and set to 1\nFor storage cell mode - this number is ignored and set to number of storage cells\n"},"ntrigger":{"type":"integer","format":"int64","default":1,"minimum":1,"description":"Number of TTL trigger that the detector is expected to receive during data collection\n"},"image_time_us":{"type":"integer","format":"int64","minimum":0,"description":"Image time. \nIf not provided (or zero value) the frame time is assumed as default.\nImage time must be multiple of frame time; max value is 256 * frame_time. \nIn XFEL mode: summation happens for frames collected with multiple triggers.\nIgnored for storage cells and if raw data are saved.\n"},"beam_x_pxl":{"type":"number","format":"float","description":"/entry/detector/beam_center_x in NXmx\nBeam center in X direction [pixels]\n"},"beam_y_pxl":{"type":"number","format":"float","description":"/entry/detector/beam_center_y in NXmx\nBeam center in X direction [pixels]\n"},"detector_distance_mm":{"type":"number","format":"float","minimum":0,"description":"/entry/detector/distance in NXmx Detector distance [mm]"},"incident_energy_keV":{"type":"number","format":"float","minimum":0.001,"maximum":500,"description":"Used to calculate /entry/beam/incident_wavelength in NXmx\nIncident particle (photon, electron) energy in keV\n"},"file_prefix":{"type":"string","default":"","description":"Prefix for filenames. If left empty, no file will be saved."},"images_per_file":{"type":"integer","format":"int64","minimum":0,"default":1000,"description":"Number of files in a single HDF5 data file (0 = write all images to a single data file)."},"space_group_number":{"type":"integer","format":"int64","minimum":0,"default":0,"maximum":194},"sample_name":{"type":"string","default":"","description":"/entry/sample/name in NXmx\nSample name\n"},"compression":{"type":"string","enum":["bslz4","bszstd","bszstd_rle","none"],"default":"bslz4"},"total_flux":{"type":"number","format":"float","description":"/entry/beam/total_flux in NXmx\nFlux incident on beam plane in photons per second. In other words this is the flux integrated over area. [photons/s]\n"},"transmission":{"type":"number","format":"float","minimum":0,"maximum":1,"description":"/entry/instrument/attenuator/attenuator_transmission\nTransmission of attenuator (filter) [no units]\n"},"goniometer":{"$ref":"#/components/schemas/rotation_axis"},"header_appendix":{"description":"Header appendix, added as user_data/user to start message (can be any valid JSON)"},"image_appendix":{"description":"Image appendix, added as user_data to image message (can be any valid JSON)"},"data_reduction_factor_serialmx":{"type":"number","format":"float","default":1,"minimum":0,"maximum":1,"description":"Rate at which non-indexed images are accepted to be forwarded to writer. \nValue of 1.0 (default) means that all images are written.\nValues below zero mean that non-indexed images will be accepted with a given probability.\n"},"pixel_value_low_threshold":{"type":"integer","format":"int64","minimum":0,"description":"Set all counts lower than the vLine truncated
|
||||
|
||||
var container = document.getElementById('redoc');
|
||||
Redoc.hydrate(__redoc_state, container);
|
||||
|
||||
@@ -35,7 +35,8 @@
|
||||
|
||||
#define MASK_PEDESTAL_G0_RMS_LIMIT (1U<<4)
|
||||
|
||||
#define PEDESTAL_MIN_IMAGE_COUNT 128
|
||||
#define PEDESTAL_WRONG 16384
|
||||
#define PEDESTAL_MIN_IMAGE_COUNT 128
|
||||
#define PEDESTAL_WRONG 16384
|
||||
#define PEDESTAL_G0_WRONG_GAIN_ALLOWED_COUNT 2
|
||||
|
||||
#endif //DEFINITIONS_H
|
||||
+8
-10
@@ -104,10 +104,9 @@ void HLSDevice::SendPacket(char *buffer, int len, uint8_t user) {
|
||||
|
||||
void HLSDevice::CreateJFPacket(const DiffractionExperiment& experiment, uint64_t frame_number, uint32_t eth_packet,
|
||||
uint32_t module_number, const uint16_t *data, int8_t adjust_axis, uint8_t user) {
|
||||
char buff[256*64];
|
||||
memset(buff, 0, 256*64);
|
||||
std::vector<char> buff(256*64);
|
||||
|
||||
auto packet = (jf_raw_packet *)buff;
|
||||
auto packet = (jf_raw_packet *)buff.data();
|
||||
|
||||
packet->ether_type = htons(0x0800);
|
||||
packet->sour_mac[0] = 0x00; // module 0
|
||||
@@ -142,9 +141,9 @@ void HLSDevice::CreateJFPacket(const DiffractionExperiment& experiment, uint64_t
|
||||
for (int i = 0; i < 4096; i++)
|
||||
packet->jf.data[i] = data[i];
|
||||
}
|
||||
packet->udp_checksum = htons(checksum( (uint16_t *) (buff+42), 8192+48));
|
||||
packet->udp_checksum = htons(checksum( (uint16_t *) (buff.data()+42), 8192+48));
|
||||
|
||||
SendPacket(buff, (130+adjust_axis)*64, user);
|
||||
SendPacket(buff.data(), (130+adjust_axis)*64, user);
|
||||
}
|
||||
|
||||
void HLSDevice::CreateJFPackets(const DiffractionExperiment& experiment, uint64_t frame_number_0, uint64_t frames,
|
||||
@@ -158,10 +157,9 @@ void HLSDevice::CreateJFPackets(const DiffractionExperiment& experiment, uint64_
|
||||
void HLSDevice::CreateEIGERPacket(const DiffractionExperiment &experiment, uint64_t frame_number,
|
||||
uint32_t eth_packet, uint32_t module_number, uint32_t col, uint32_t row,
|
||||
const uint16_t *data) {
|
||||
char buff[256*64];
|
||||
memset(buff, 0, 256*64);
|
||||
std::vector<char> buff(256*64);
|
||||
|
||||
auto packet = (eiger_raw_packet *)buff;
|
||||
auto packet = (eiger_raw_packet *)buff.data();
|
||||
|
||||
packet->ether_type = htons(0x0800);
|
||||
packet->sour_mac[0] = 0x00; // module 0
|
||||
@@ -194,9 +192,9 @@ void HLSDevice::CreateEIGERPacket(const DiffractionExperiment &experiment, uint6
|
||||
for (int i = 0; i < 2048; i++)
|
||||
packet->eiger.data[i] = data[i];
|
||||
}
|
||||
packet->udp_checksum = htons(checksum( (uint16_t *) (buff+42), 4096+48));
|
||||
packet->udp_checksum = htons(checksum( (uint16_t *) (buff.data()+42), 4096+48));
|
||||
|
||||
SendPacket(buff, 66*64, 0);
|
||||
SendPacket(buff.data(), 66*64, 0);
|
||||
}
|
||||
|
||||
void HLSDevice::HW_ReadActionRegister(DataCollectionConfig *job) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
PACKAGE_NAME=jfjoch
|
||||
PACKAGE_VERSION=1.0.0-rc.16
|
||||
PACKAGE_VERSION=1.0.0-rc.17
|
||||
|
||||
DEST_MODULE_LOCATION=/extra
|
||||
BUILT_MODULE_NAME=jfjoch
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
# Copyright (2019-2024) Paul Scherrer Institute
|
||||
|
||||
VERSION=1.0.0-rc.16
|
||||
VERSION=1.0.0-rc.17
|
||||
|
||||
mkdir -p /usr/src/jfjoch-${VERSION}/src
|
||||
cp dkms.conf /usr/src/jfjoch-${VERSION}
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
MODULE_AUTHOR("Filip Leonarski; Paul Scherrer Institute");
|
||||
MODULE_DESCRIPTION("Jungfraujoch device module");
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_VERSION("1.0.0-rc.16");
|
||||
MODULE_VERSION("1.0.0-rc.17");
|
||||
|
||||
#define PCI_DEV_ID_JUNGFRAUJOCH (0x3450)
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
# Taken from https://schneide.blog/2015/08/10/packaging-kernel-modulesdrivers-using-dkms/
|
||||
|
||||
VERSION=1.0.0-rc.16
|
||||
VERSION=1.0.0-rc.17
|
||||
|
||||
occurrences=`/usr/sbin/dkms status | grep jfjoch | grep ${VERSION} | wc -l`
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
# Taken from https://schneide.blog/2015/08/10/packaging-kernel-modulesdrivers-using-dkms/
|
||||
|
||||
VERSION=1.0.0-rc.16
|
||||
VERSION=1.0.0-rc.17
|
||||
|
||||
/usr/sbin/dkms remove -m jfjoch -v ${VERSION} --all
|
||||
|
||||
|
||||
+32
-9
@@ -19,7 +19,8 @@ import InstrumentMetadata from "./components/InstrumentMetadata";
|
||||
import {JFJOCH_VERSION} from "./version";
|
||||
import FpgaStatus from "./components/FpgaStatus";
|
||||
import {PlotType} from "./components/DataProcessingPlot";
|
||||
import {OpenAPI} from "./openapi";
|
||||
import {broker_status, DefaultService, OpenAPI} from "./openapi";
|
||||
import {jfjoch_statistics} from "./openapi";
|
||||
|
||||
const jfjoch_theme = createTheme({
|
||||
palette: {
|
||||
@@ -33,23 +34,41 @@ type MyState = {
|
||||
show_module_calibration: boolean,
|
||||
show_preview: boolean,
|
||||
show_roi_setup: boolean,
|
||||
show_fpga_status: boolean
|
||||
show_fpga_status: boolean,
|
||||
connection_error: boolean,
|
||||
s: jfjoch_statistics
|
||||
}
|
||||
|
||||
type MyProps = {}
|
||||
|
||||
class App extends Component<MyProps, MyState> {
|
||||
interval: ReturnType<typeof setInterval> | undefined;
|
||||
|
||||
state : MyState = {
|
||||
show_detector_setup: false,
|
||||
show_module_calibration: false,
|
||||
show_preview: false,
|
||||
show_roi_setup: false,
|
||||
show_fpga_status: false
|
||||
show_fpga_status: false,
|
||||
connection_error: true,
|
||||
s: {}
|
||||
}
|
||||
|
||||
getValues() {
|
||||
DefaultService.getStatistics()
|
||||
.then(data => this.setState({s: data, connection_error: false}))
|
||||
.catch(_ => {
|
||||
this.setState({s: {}, connection_error: true});
|
||||
});
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
clearInterval(this.interval);
|
||||
}
|
||||
componentDidMount() {
|
||||
OpenAPI.BASE='';
|
||||
this.getValues();
|
||||
this.interval = setInterval(() => this.getValues(), 1000);
|
||||
}
|
||||
|
||||
showPreviewToggle = (event: React.ChangeEvent<HTMLInputElement>) => {
|
||||
@@ -91,10 +110,14 @@ class App extends Component<MyProps, MyState> {
|
||||
</Grid>
|
||||
};
|
||||
|
||||
isMeasuring() : boolean {
|
||||
return ((this.state.s.broker !== undefined) && (this.state.s.broker.state == broker_status.state.IDLE));
|
||||
}
|
||||
|
||||
render() {
|
||||
return <ThemeProvider theme={jfjoch_theme}>
|
||||
<CssBaseline enableColorScheme/>
|
||||
<StatusBar/> <br/><br/><br/><br/>
|
||||
<StatusBar s={this.state.s.broker}/> <br/><br/><br/><br/>
|
||||
<div style={{
|
||||
display: 'flex',
|
||||
alignItems: 'center',
|
||||
@@ -109,7 +132,7 @@ class App extends Component<MyProps, MyState> {
|
||||
<DataProcessingPlots default_tab={"12"} height={550} type={PlotType.BKG_ESTIMATE}/>
|
||||
</Grid>
|
||||
<Grid item xs={4}>
|
||||
<MeasurementStatistics/>
|
||||
<MeasurementStatistics s={(this.state.s.measurement === undefined) ? {} : this.state.s.measurement}/>
|
||||
</Grid>
|
||||
<Grid item xs={8}>
|
||||
<DataProcessingPlots default_tab={"1"} height={700} type={PlotType.INDEXING_RATE}/>
|
||||
@@ -121,7 +144,7 @@ class App extends Component<MyProps, MyState> {
|
||||
this.renderTitleWithSwitch("Live image preview", this.state.show_preview, this.showPreviewToggle)
|
||||
}
|
||||
<Grid item xs={12}>
|
||||
{this.state.show_preview ? <PreviewImage/> : ""}
|
||||
{this.state.show_preview ? <PreviewImage measuring={this.isMeasuring()}/> : ""}
|
||||
</Grid>
|
||||
<br/><br/>
|
||||
{
|
||||
@@ -129,7 +152,7 @@ class App extends Component<MyProps, MyState> {
|
||||
this.state.show_module_calibration, this.showModuleCalibrationToggle)
|
||||
}
|
||||
<Grid item xs={12}>
|
||||
{this.state.show_module_calibration ? <Calibration/> : ""}
|
||||
{this.state.show_module_calibration ? <Calibration s={this.state.s.calibration}/> : ""}
|
||||
</Grid><br/><br/>
|
||||
{
|
||||
this.renderTitleWithSwitch("Jungfraujoch expert configuration",
|
||||
@@ -142,7 +165,7 @@ class App extends Component<MyProps, MyState> {
|
||||
{this.state.show_detector_setup ?
|
||||
<Stack spacing={2}>
|
||||
<DetectorSelection/>
|
||||
<DetectorStatus/>
|
||||
<DetectorStatus s={this.state.s.detector}/>
|
||||
</Stack> : ""}
|
||||
</Grid>
|
||||
<Grid item xs={4}>
|
||||
@@ -166,7 +189,7 @@ class App extends Component<MyProps, MyState> {
|
||||
this.state.show_fpga_status, this.showFPGAStatusToggle)
|
||||
}
|
||||
<Grid item xs={12}>
|
||||
{this.state.show_fpga_status ? <FpgaStatus/> : ""}
|
||||
{this.state.show_fpga_status ? <FpgaStatus s={this.state.s.fpga}/> : ""}
|
||||
</Grid>
|
||||
</Grid>
|
||||
</div>
|
||||
|
||||
@@ -6,127 +6,12 @@ import {DataGrid, GridColDef} from "@mui/x-data-grid";
|
||||
import {calibration_statistics, DefaultService} from "../openapi";
|
||||
|
||||
type MyProps = {
|
||||
s?: calibration_statistics
|
||||
};
|
||||
|
||||
type MyState = {
|
||||
calib: calibration_statistics | undefined | null;
|
||||
connection_error: boolean;
|
||||
};
|
||||
type MyState = {};
|
||||
|
||||
class Calibration extends React.Component<MyProps, MyState> {
|
||||
interval: ReturnType<typeof setInterval> | undefined;
|
||||
|
||||
state : MyState = {
|
||||
calib: [
|
||||
{
|
||||
module_number: 0,
|
||||
storage_cell_number: 0,
|
||||
pedestal_g0_mean: 3500,
|
||||
pedestal_g1_mean: 14000,
|
||||
pedestal_g2_mean: 15000,
|
||||
gain_g0_mean: 30,
|
||||
gain_g1_mean: 11,
|
||||
gain_g2_mean: 10,
|
||||
masked_pixels: 80
|
||||
},
|
||||
{
|
||||
module_number: 1,
|
||||
storage_cell_number: 0,
|
||||
pedestal_g0_mean: 3500,
|
||||
pedestal_g1_mean: 14000,
|
||||
pedestal_g2_mean: 15000,
|
||||
gain_g0_mean: 30,
|
||||
gain_g1_mean: 11,
|
||||
gain_g2_mean: 10,
|
||||
masked_pixels: 80
|
||||
},
|
||||
{
|
||||
module_number: 2,
|
||||
storage_cell_number: 0,
|
||||
pedestal_g0_mean: 3500,
|
||||
pedestal_g1_mean: 14000,
|
||||
pedestal_g2_mean: 15000,
|
||||
gain_g0_mean: 30,
|
||||
gain_g1_mean: 11,
|
||||
gain_g2_mean: 10,
|
||||
masked_pixels: 80
|
||||
},
|
||||
{
|
||||
module_number: 3,
|
||||
storage_cell_number: 0,
|
||||
pedestal_g0_mean: 3500,
|
||||
pedestal_g1_mean: 14000,
|
||||
pedestal_g2_mean: 15000,
|
||||
gain_g0_mean: 30,
|
||||
gain_g1_mean: 11,
|
||||
gain_g2_mean: 10,
|
||||
masked_pixels: 80
|
||||
},
|
||||
{
|
||||
module_number: 4,
|
||||
storage_cell_number: 0,
|
||||
pedestal_g0_mean: 3500,
|
||||
pedestal_g1_mean: 14000,
|
||||
pedestal_g2_mean: 15000,
|
||||
gain_g0_mean: 30,
|
||||
gain_g1_mean: 11,
|
||||
gain_g2_mean: 10,
|
||||
masked_pixels: 80
|
||||
},
|
||||
{
|
||||
module_number: 5,
|
||||
storage_cell_number: 0,
|
||||
pedestal_g0_mean: 3500,
|
||||
pedestal_g1_mean: 14000,
|
||||
pedestal_g2_mean: 15000,
|
||||
gain_g0_mean: 30,
|
||||
gain_g1_mean: 11,
|
||||
gain_g2_mean: 10,
|
||||
masked_pixels: 80
|
||||
},
|
||||
{
|
||||
module_number: 6,
|
||||
storage_cell_number: 0,
|
||||
pedestal_g0_mean: 3500,
|
||||
pedestal_g1_mean: 14000,
|
||||
pedestal_g2_mean: 15000,
|
||||
gain_g0_mean: 30,
|
||||
gain_g1_mean: 11,
|
||||
gain_g2_mean: 10,
|
||||
masked_pixels: 80
|
||||
},
|
||||
{
|
||||
module_number: 7,
|
||||
storage_cell_number: 0,
|
||||
pedestal_g0_mean: 3500,
|
||||
pedestal_g1_mean: 14000,
|
||||
pedestal_g2_mean: 15000,
|
||||
gain_g0_mean: 30,
|
||||
gain_g1_mean: 11,
|
||||
gain_g2_mean: 10,
|
||||
masked_pixels: 80
|
||||
}
|
||||
],
|
||||
connection_error : true
|
||||
}
|
||||
|
||||
getValues() {
|
||||
DefaultService.getStatisticsCalibration()
|
||||
.then(data => this.setState({calib: data, connection_error: false}))
|
||||
.catch(error => {
|
||||
console.log(error);
|
||||
this.setState({connection_error: true});
|
||||
});
|
||||
}
|
||||
componentDidMount() {
|
||||
this.getValues();
|
||||
this.interval = setInterval(() => this.getValues(), 1000);
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
clearInterval(this.interval);
|
||||
}
|
||||
|
||||
columns : GridColDef[] = [
|
||||
{ field: 'module_number', type: 'number', headerName: 'Module' },
|
||||
{ field: 'storage_cell_number', type: 'number', headerName: 'SC'},
|
||||
@@ -141,10 +26,10 @@ class Calibration extends React.Component<MyProps, MyState> {
|
||||
|
||||
render() {
|
||||
return <Paper style={{textAlign: 'center'}} sx={{ height: 527, width: '100%' }}>
|
||||
{((this.state.calib !== undefined) && (this.state.calib !== null) && (this.state.calib.length > 0)) ?
|
||||
{((this.props.s !== undefined) && (this.props.s.length > 0)) ?
|
||||
<DataGrid
|
||||
getRowId={(row) => Number(row.module_number) * 64 + Number(row.storage_cell_number)}
|
||||
rows={this.state.calib}
|
||||
rows={this.props.s}
|
||||
columns={this.columns}
|
||||
initialState={{
|
||||
pagination: { paginationModel: { pageSize: 8 } },
|
||||
|
||||
@@ -4,13 +4,12 @@ import Paper from '@mui/material/Paper';
|
||||
import {Grid, Table, TableBody, TableCell, TableContainer, TableRow,} from "@mui/material";
|
||||
import {DefaultService, detector_status, detector_state, detector_power_state} from "../openapi";
|
||||
|
||||
type MyProps = {}
|
||||
|
||||
type MyState = {
|
||||
s: detector_status,
|
||||
connection_error: boolean
|
||||
type MyProps = {
|
||||
s?: detector_status
|
||||
}
|
||||
|
||||
type MyState = {}
|
||||
|
||||
function powerchipToString(s : detector_status) : string {
|
||||
switch (s.powerchip) {
|
||||
case detector_power_state.POWER_ON:
|
||||
@@ -36,47 +35,18 @@ function reduce_array(arr: number[], unit: string) : string {
|
||||
}
|
||||
|
||||
class DetectorStatus extends Component<MyProps, MyState> {
|
||||
interval: ReturnType<typeof setInterval> | undefined;
|
||||
|
||||
state : MyState = {
|
||||
s: {
|
||||
state: detector_state.NOT_CONNECTED,
|
||||
powerchip: detector_power_state.POWER_OFF,
|
||||
server_version: "N/A",
|
||||
number_of_triggers_left: 0,
|
||||
fpga_temp_degC: [-1],
|
||||
high_voltage_V: [-1]
|
||||
},
|
||||
connection_error: true
|
||||
}
|
||||
|
||||
getValues() {
|
||||
DefaultService.getDetectorStatus()
|
||||
.then(data => this.setState({
|
||||
s: data,
|
||||
connection_error: false
|
||||
}))
|
||||
.catch(error => {
|
||||
this.setState({
|
||||
s: {
|
||||
state: detector_state.NOT_CONNECTED,
|
||||
powerchip: detector_power_state.POWER_OFF,
|
||||
server_version: "N/A",
|
||||
number_of_triggers_left: 0,
|
||||
fpga_temp_degC: [-1],
|
||||
high_voltage_V: [-1]
|
||||
},
|
||||
connection_error: true
|
||||
});
|
||||
});
|
||||
}
|
||||
componentDidMount() {
|
||||
this.getValues();
|
||||
this.interval = setInterval(() => this.getValues(), 1000);
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
clearInterval(this.interval);
|
||||
det() {
|
||||
if (this.props.s === undefined)
|
||||
return {
|
||||
state: detector_state.NOT_CONNECTED,
|
||||
powerchip: detector_power_state.POWER_OFF,
|
||||
server_version: "N/A",
|
||||
number_of_triggers_left: 0,
|
||||
fpga_temp_degC: [],
|
||||
high_voltage_V: []
|
||||
}
|
||||
else
|
||||
return this.props.s;
|
||||
}
|
||||
|
||||
render() {
|
||||
@@ -91,27 +61,27 @@ class DetectorStatus extends Component<MyProps, MyState> {
|
||||
<TableBody>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Detector state: </TableCell>
|
||||
<TableCell align="right">{(this.state.s.state.toString())}</TableCell>
|
||||
<TableCell align="right">{(this.det().state.toString())}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Detector ASIC power: </TableCell>
|
||||
<TableCell align="right">{powerchipToString(this.state.s)}</TableCell>
|
||||
<TableCell align="right">{powerchipToString(this.det())}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Triggers remaining: </TableCell>
|
||||
<TableCell align="right">{this.state.s.number_of_triggers_left}</TableCell>
|
||||
<TableCell align="right">{this.det().number_of_triggers_left}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> FPGA temperature: </TableCell>
|
||||
<TableCell align="right">{reduce_array(this.state.s.fpga_temp_degC, "degC")}</TableCell>
|
||||
<TableCell component="th" scope="row"> FPGA temp.erature: </TableCell>
|
||||
<TableCell align="right">{reduce_array(this.det().fpga_temp_degC, "degC")}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> High voltage: </TableCell>
|
||||
<TableCell align="right">{reduce_array(this.state.s.high_voltage_V, "V")}</TableCell>
|
||||
<TableCell align="right">{reduce_array(this.det().high_voltage_V, "V")}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Detector server version: </TableCell>
|
||||
<TableCell align="right">{this.state.s.server_version} </TableCell>
|
||||
<TableCell align="right">{this.det().server_version} </TableCell>
|
||||
</TableRow>
|
||||
</TableBody>
|
||||
</Table>
|
||||
|
||||
@@ -52,36 +52,12 @@ function DataVolume(count_4kib: number) : string {
|
||||
|
||||
|
||||
type MyProps = {
|
||||
s?: fpga_status;
|
||||
};
|
||||
|
||||
type MyState = {
|
||||
status: fpga_status;
|
||||
connection_error: boolean;
|
||||
};
|
||||
type MyState = {};
|
||||
|
||||
class FpgaStatus extends React.Component<MyProps, MyState> {
|
||||
interval: ReturnType<typeof setInterval> | undefined;
|
||||
|
||||
state : MyState = {
|
||||
status: [],
|
||||
connection_error : true
|
||||
}
|
||||
|
||||
getValues() {
|
||||
DefaultService.getFpgaStatus()
|
||||
.then(data => this.setState({status: data, connection_error: false}))
|
||||
.catch(error => {
|
||||
this.setState({connection_error: true});
|
||||
});
|
||||
}
|
||||
componentDidMount() {
|
||||
this.getValues();
|
||||
this.interval = setInterval(() => this.getValues(), 1000);
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
clearInterval(this.interval);
|
||||
}
|
||||
|
||||
columns : GridColDef[] = [
|
||||
{ field: 'pci_dev_id', type: 'string', headerName: 'PCIe ID' },
|
||||
@@ -102,9 +78,9 @@ class FpgaStatus extends React.Component<MyProps, MyState> {
|
||||
|
||||
render() {
|
||||
return <Paper style={{textAlign: 'center'}} sx={{ height: 500, width: '100%' }}>
|
||||
{(this.state.status.length > 0) ?
|
||||
{((this.props.s !== undefined) && (this.props.s.length > 0)) ?
|
||||
<DataGrid
|
||||
rows={this.state.status}
|
||||
rows={this.props.s}
|
||||
columns={this.columns}
|
||||
getRowId={(row) => row.pci_dev_id}
|
||||
autosizeOnMount={true}
|
||||
|
||||
@@ -4,51 +4,14 @@ import Paper from '@mui/material/Paper';
|
||||
import {Grid, Table, TableBody, TableCell, TableContainer, TableRow,} from "@mui/material";
|
||||
import {DefaultService, measurement_statistics} from "../openapi";
|
||||
|
||||
type MyProps = {};
|
||||
|
||||
type MyState = {
|
||||
type MyProps = {
|
||||
s: measurement_statistics,
|
||||
connection_error: boolean
|
||||
};
|
||||
|
||||
type MyState = {};
|
||||
|
||||
class MeasurementStatistics extends Component<MyProps, MyState> {
|
||||
interval: ReturnType<typeof setInterval> | undefined;
|
||||
state : MyState = {
|
||||
s: {
|
||||
run_number: undefined,
|
||||
file_prefix: undefined,
|
||||
experiment_group: undefined,
|
||||
images_expected: 0,
|
||||
images_collected: 0,
|
||||
images_sent: 0,
|
||||
images_discarded_lossy_compression: 0,
|
||||
collection_efficiency : undefined,
|
||||
compression_ratio: undefined,
|
||||
max_receiver_delay: undefined,
|
||||
indexing_rate: undefined
|
||||
},
|
||||
connection_error: true
|
||||
}
|
||||
|
||||
getValues() {
|
||||
DefaultService.getStatisticsDataCollection()
|
||||
.then(data => this.setState({
|
||||
s: data,
|
||||
connection_error: false
|
||||
}))
|
||||
.catch(error => {
|
||||
this.setState({connection_error: true});
|
||||
});
|
||||
}
|
||||
componentDidMount() {
|
||||
this.getValues();
|
||||
this.interval = setInterval(() => this.getValues(), 1000);
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
clearInterval(this.interval);
|
||||
}
|
||||
|
||||
|
||||
render() {
|
||||
return <Paper style={{textAlign: 'center'}} sx={{ height: 550, width: '100%' }}>
|
||||
<Grid container spacing={0}>
|
||||
@@ -61,57 +24,57 @@ class MeasurementStatistics extends Component<MyProps, MyState> {
|
||||
<TableBody>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> File prefix: </TableCell>
|
||||
<TableCell align="right">{(this.state.s.file_prefix !== undefined) ? this.state.s.file_prefix : "(images not written)"}</TableCell>
|
||||
<TableCell align="right">{(this.props.s.file_prefix !== undefined) ? this.props.s.file_prefix : "(images not written)"}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Run number: </TableCell>
|
||||
<TableCell align="right">{(this.state.s.run_number !== undefined) ? this.state.s.run_number : "(not set)"}</TableCell>
|
||||
<TableCell align="right">{(this.props.s.run_number !== undefined) ? this.props.s.run_number : "(not set)"}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Experiment group: </TableCell>
|
||||
<TableCell align="right">{this.state.s.experiment_group}</TableCell>
|
||||
<TableCell align="right">{this.props.s.experiment_group}</TableCell>
|
||||
</TableRow>
|
||||
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Images expected: </TableCell>
|
||||
<TableCell align="right">{this.state.s.images_expected}</TableCell>
|
||||
<TableCell align="right">{this.props.s.images_expected}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Images collected: </TableCell>
|
||||
<TableCell align="right">{this.state.s.images_collected}</TableCell>
|
||||
<TableCell align="right">{this.props.s.images_collected}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Images sent to writer: </TableCell>
|
||||
<TableCell align="right">{this.state.s.images_sent}</TableCell>
|
||||
<TableCell align="right">{this.props.s.images_sent}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Images discarded by lossy compression: </TableCell>
|
||||
<TableCell align="right">{this.state.s.images_discarded_lossy_compression}</TableCell>
|
||||
<TableCell align="right">{this.props.s.images_discarded_lossy_compression}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Compression ratio: </TableCell>
|
||||
<TableCell align="right">{(this.state.s.compression_ratio !== undefined)
|
||||
? (this.state.s.compression_ratio.toFixed(1)) + "x" : "-" } </TableCell>
|
||||
<TableCell align="right">{(this.props.s.compression_ratio !== undefined)
|
||||
? (this.props.s.compression_ratio.toFixed(1)) + "x" : "-" } </TableCell>
|
||||
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Data acquisition efficiency: </TableCell>
|
||||
<TableCell align="right">{(this.state.s.collection_efficiency !== undefined)
|
||||
? (Math.floor(this.state.s.collection_efficiency * 1000.0) / 1000.0).toFixed(3) : "-"}</TableCell>
|
||||
<TableCell align="right">{(this.props.s.collection_efficiency !== undefined)
|
||||
? (Math.floor(this.props.s.collection_efficiency * 1000.0) / 1000.0).toFixed(3) : "-"}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Indexing rate: </TableCell>
|
||||
<TableCell align="right">{(this.state.s.indexing_rate !== undefined)
|
||||
? this.state.s.indexing_rate.toFixed(2) : "-"}</TableCell>
|
||||
<TableCell align="right">{(this.props.s.indexing_rate !== undefined)
|
||||
? this.props.s.indexing_rate.toFixed(2) : "-"}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Background estimate: </TableCell>
|
||||
<TableCell align="right">{(this.state.s.bkg_estimate !== undefined)
|
||||
? this.state.s.bkg_estimate.toPrecision(7) : "-"}</TableCell>
|
||||
<TableCell align="right">{(this.props.s.bkg_estimate !== undefined)
|
||||
? this.props.s.bkg_estimate.toPrecision(7) : "-"}</TableCell>
|
||||
</TableRow>
|
||||
<TableRow>
|
||||
<TableCell component="th" scope="row"> Unit cell: </TableCell>
|
||||
<TableCell align="right">{this.state.s.unit_cell}</TableCell>
|
||||
<TableCell align="right">{this.props.s.unit_cell}</TableCell>
|
||||
</TableRow>
|
||||
</TableBody>
|
||||
</Table>
|
||||
|
||||
Loaded 100 of 183 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user