mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2026-07-12 23:02:39 +02:00
Dev/matterhornserver (#1396)
Build and Deploy on local RHEL9 / build (push) Successful in 2m0s
Build on RHEL9 docker image / build (push) Successful in 3m34s
Build on RHEL8 docker image / build (push) Successful in 4m46s
Build and Deploy on local RHEL8 / build (push) Successful in 5m3s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m43s
Run Simulator Tests on local RHEL8 / build (push) Successful in 18m15s
Build and Deploy on local RHEL9 / build (push) Successful in 2m0s
Build on RHEL9 docker image / build (push) Successful in 3m34s
Build on RHEL8 docker image / build (push) Successful in 4m46s
Build and Deploy on local RHEL8 / build (push) Successful in 5m3s
Run Simulator Tests on local RHEL9 / build (push) Successful in 14m43s
Run Simulator Tests on local RHEL8 / build (push) Successful in 18m15s
* added fetch fmt server library * added first draft of matterhorn * added enum ReturnCode * added cpp TCP Interface to slsDetectorServer * added fmt to workflows * bug: added std::signal for proper handling of ctr+c * added compile option to set log level * WIP * dont use c project settings when building matterhornserver * updated logger * WIP * WIP * linked fmt to slsProjectOptions * solved merge conflict * some refactoring * cleaned up logs * added fmt to workflow * WIP * generated register defs from csv file * oops given in hex * properly added fmt as a dependency * add fmt to conda recipe * some format changes * dont use public headers of fmt * WIP * used CRTP for virtual detector * WIP * added udp functions to matterhornserver * Matterhorn in tostring * warning unused variable from other PR * fixed build * updated cmake * added Server class usable for all detectors * removed stopserver * added some more functions * wrong overload * porper cleanup of matterhorn app * PR Review * refactored directory structure * used pause insetad of sleep --------- Co-authored-by: Dhanya Thattil <dhanya.thattil@psi.ch>
This commit is contained in:
+58
-37
@@ -16,61 +16,82 @@ the shared libraries these are needed:
|
||||
* CMake >= 3.14
|
||||
* C++17 compatible compiler. (We test with gcc and clang)
|
||||
|
||||
.. note ::
|
||||
.. note::
|
||||
|
||||
For v9.x.x of slsDetectorPackage and older, C++11 compatible compiler.
|
||||
|
||||
|
||||
-----------------------
|
||||
Python bindings
|
||||
-----------------------
|
||||
Additionally the core requires the following dependencies:
|
||||
|
||||
* Python >= 3.8
|
||||
* pybind11 2.13.6 (packaged in libs)
|
||||
* fmt 12.1.0 (packaged in libs)
|
||||
* ZeroMQ 4.3.4 (packaged in libs)
|
||||
* rapidjson (packaged in libs)
|
||||
|
||||
.. note ::
|
||||
.. note::
|
||||
|
||||
Refer :ref:`pybind11 notes. <pybind for different slsDetectorPackage versions>`
|
||||
Both fmt, ZeroMQ and rapidjson are bundled in libs. One does not need to pre-install them on the system. Alternatively, one can fetch fmt and ZeroMQ from GitHub by passing the cmake options ``-DSLS_FETCH_FMT_FROM_GITHUB=ON`` and ``-DSLS_FETCH_ZEROMQ_FROM_GITHUB=ON`` respectively.
|
||||
|
||||
-----------------------
|
||||
ZeroMQ
|
||||
-----------------------
|
||||
|
||||
* Zeromq 4.3.4 (packaged in libs)
|
||||
|
||||
.. note ::
|
||||
.. note::
|
||||
|
||||
Refer :ref:`zeromq notes. <zeromq for different slsDetectorPackage versions>`
|
||||
|
||||
-----------------------
|
||||
GUI
|
||||
-----------------------
|
||||
|
||||
------------------------------------
|
||||
Dependencies to build Python module
|
||||
------------------------------------
|
||||
|
||||
To build the python module the following dependencies are needed:
|
||||
|
||||
* Python >= 3.8
|
||||
* pybind11 2.13.6 (packaged in libs)
|
||||
|
||||
.. note::
|
||||
|
||||
pybind11 is bundled in libs. One does not need to pre-install it on the system. Alternatively, one can fetch pybind11 from GitHub by passing the cmake option ``-DSLS_FETCH_PYBIND11_FROM_GITHUB=ON``.
|
||||
|
||||
.. note::
|
||||
|
||||
Refer :ref:`pybind11 notes. <pybind for different slsDetectorPackage versions>`
|
||||
|
||||
-------------------------------
|
||||
Dependencies to build documentation
|
||||
-------------------------------
|
||||
|
||||
To build this documentation that you are reading now the following dependencies are needed:
|
||||
|
||||
* Doxygen (to extract C++ classes etc.)
|
||||
* Breathe (Sphinx plugin to handle doxygen xml)
|
||||
* Sphinx with sphinx_rtd_theme
|
||||
|
||||
-------------------------
|
||||
Dependencies to build GUI
|
||||
-------------------------
|
||||
|
||||
To build the GUI the following dependencies are needed:
|
||||
|
||||
* Qt 5.9
|
||||
* Qwt 6.1.5 (packaged in libs)
|
||||
|
||||
-----------------------
|
||||
Moench executables
|
||||
-----------------------
|
||||
.. note::
|
||||
|
||||
Qwt is bundled in libs. One does not need to pre-install it on the system.
|
||||
|
||||
------------------------------------------------------
|
||||
Dependencies to build Moench and Jungfrau executables
|
||||
-----------------------------------------------------
|
||||
|
||||
To build the Moench and Jungfrau executables for preprocessing and calibration the following dependencies are needed:
|
||||
|
||||
* libtiff
|
||||
|
||||
-----------------------
|
||||
Documentation
|
||||
-----------------------
|
||||
--------------------------------------------------
|
||||
Dependencies to build Tests
|
||||
--------------------------------------------------
|
||||
|
||||
The documentation that you are reading now is built with
|
||||
To build the tests the following dependencies are needed:
|
||||
|
||||
* Doxygen (to extract C++ classes etc.)
|
||||
* Breathe (Sphinx plugin to handle doxygen xml)
|
||||
* Sphinx with sphinx_rtd_theme
|
||||
* Catch2 3.4.0 (packaged in libs)
|
||||
|
||||
-----------------------
|
||||
Packaged in libs/
|
||||
-----------------------
|
||||
|
||||
* catch2 (unit testing)
|
||||
* rapidjson (streaming from receiver)
|
||||
* pybind11 (python bindings)
|
||||
* qwt (gui plotting)
|
||||
* libzmq (streaming to/from receiver)
|
||||
.. note::
|
||||
|
||||
Catch2 is bundled in libs. One does not need to pre-install it on the system.
|
||||
|
||||
Reference in New Issue
Block a user