Dev/doc/add ctb to doc (#1455)

* added numpy for patterngenerator

* treat warnings as errors

* fix warnings during docu build

* added power and ctb to documentation
This commit is contained in:
2026-08-03 09:13:52 +02:00
committed by mazzol_a
parent 732599bc10
commit c2b4007de3
11 changed files with 67 additions and 18 deletions
+1 -1
View File
@@ -64,7 +64,7 @@ jobs:
cache: 'pip'
- name: Install Python Packages
run: pip install sphinx sphinx_rtd_theme breathe pyyaml jinja2
run: pip install sphinx sphinx_rtd_theme breathe pyyaml jinja2 numpy
- name: Build Documentation
+5 -2
View File
@@ -35,6 +35,7 @@ set(SPHINX_SOURCE_FILES
src/consuming.rst
src/dependencies.rst
src/detector.rst
src/pyctb.rst
src/index.rst
src/installation.rst
src/pydetector.rst
@@ -71,6 +72,8 @@ set(SPHINX_SOURCE_FILES
src/softwarearchitecture.rst
src/configcommands.rst
src/Versioning.rst
src/Testing.rst
src/pypower.rst
)
foreach(filename ${SPHINX_SOURCE_FILES})
@@ -104,7 +107,7 @@ add_custom_target(docs
gendoc
COMMAND python gen_server_doc.py
COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYGEN_OUT}
COMMAND ${SPHINX_EXECUTABLE} -a -b html
COMMAND ${SPHINX_EXECUTABLE} -W -a -b html
-Dbreathe_projects.slsDetectorPackage=${CMAKE_CURRENT_BINARY_DIR}/xml
-c "${SPHINX_BUILD}"
${SPHINX_BUILD}/src
@@ -112,7 +115,7 @@ add_custom_target(docs
COMMENT "Generating documentation with Sphinx")
add_custom_target(rst
COMMAND ${SPHINX_EXECUTABLE} -a -b html
COMMAND ${SPHINX_EXECUTABLE} -W -a -b html
-Dbreathe_projects.slsDetectorPackage=${CMAKE_CURRENT_BINARY_DIR}/xml
-c "${SPHINX_BUILD}"
${SPHINX_BUILD}/src
+2
View File
@@ -48,6 +48,8 @@ templates_path = ['_templates']
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
suppress_warnings = ["duplicate_declaration.cpp",]
# -- Options for HTML output -------------------------------------------------
+3
View File
@@ -67,12 +67,14 @@ This runs all tests marked with the tag ``[.detectorintegration]`` for all detec
If you want to run them for a specific virtual detector or a specific test use the following command:
.. code-block:: console
cd build
python bin/test_simulators.py --servers jungfrau --test "[dacs]"
You can exclude specific tests by adding the option ``~[<disable_test_name>]``. Again, we assume that this marker is added to the tests that you want to exclude.
.. code-block:: console
cd build
python bin/test_simulators.py --servers eiger jungfrau moench --test "[detectorintegration]~[disable_check_data_file]"
@@ -98,6 +100,7 @@ If a test requires a detector mark them with the pytest marker ``@pytest.mark.de
To run only tests requiring virtual detectors use the following command:
.. code-block:: console
#in build
python -m pytest -m detectorintegration ../python/tests/
+9 -3
View File
@@ -49,9 +49,15 @@ GUI
* 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
+4 -1
View File
@@ -45,13 +45,16 @@ int main() {
for (const auto &cmd : commands) {
std::ostringstream os;
std::cout << cmd << '\n';
caller.call(cmd, {}, -1, slsDetectorDefs::HELP_ACTION, os);
auto tmp = os.str().erase(0, cmd.size());
auto usage = tmp.substr(0, tmp.find_first_of('\n'));
tmp.erase(0, usage.size());
auto help = replace_all(tmp, "\n\t", "\n\t\t| ");
if (help.back() != '\n') {
help.push_back('\n');
}
fs << '\t' << cmd << usage << help << "\n";
}
+2
View File
@@ -48,7 +48,9 @@ slsDetectorPackage
pygettingstarted
pydetector
pyctb
pyenums
pypower
pyexamples
pyPatternGenerator
pattern
+15
View File
@@ -0,0 +1,15 @@
Ctb
=====================================================
.. py:currentmodule:: slsdet
.. autoclass:: Ctb
:members:
:undoc-members:
:show-inheritance:
:inherited-members:
+12
View File
@@ -0,0 +1,12 @@
Power Supply
===============
Helper class to control power supplies on the Chip Test Board (CTB, Xilinx CTB).
.. py:currentmodule:: slsdet
.. autoclass:: Power
:members:
:undoc-members:
:show-inheritance:
:inherited-members:
+1 -1
View File
@@ -24,4 +24,4 @@ class Ctb(Detector):
@property
def powers(self):
return self._powers
return self._powers
+13 -10
View File
@@ -804,10 +804,10 @@ class Detector(CppDetectorApi):
Note
----
Sets up the following for every module:\n
\t\t[Eiger] txdelay_left to (2 * mod_index * n_delay), \n
\t\t[Eiger] txdelay_right to ((2 * mod_index + 1) * n_delay) and \n
\t\t[Eiger] txdelay_frame to (2 *num_modules * n_delay) \n
\t\t[Jungfrau][Moench][Mythen3] txdelay_frame to (num_modules * n_delay)\n\n
\t\t[Eiger] txdelay_left to (2 \* mod_index \* n_delay), \n
\t\t[Eiger] txdelay_right to ((2 \* mod_index + 1) \* n_delay) and \n
\t\t[Eiger] txdelay_frame to (2 \* num_modules \* n_delay) \n
\t\t[Jungfrau][Moench][Mythen3] txdelay_frame to (num_modules \* n_delay)\n\n
Please refer txdelay_left, txdelay_right and txdelay_frame for details.
"""
return self.getTransmissionDelay()
@@ -1284,10 +1284,10 @@ class Detector(CppDetectorApi):
@property
def zmqhwm(self):
"""
Client's zmq receive high water mark. Default is the zmq library's default (1000), can also be set here using -1.
This is a high number and can be set to 2 for gui purposes.
Client's zmq receive high water mark. Default is the zmq library's default (1000), can also be set here using -1.
This is a high number and can be set to 2 for gui purposes.
One must also set the receiver's send high water mark to similar value. Final effect is sum of them.
Setting it via command line is useful only before zmq enabled (before opening gui).
Setting it via command line is useful only before zmq enabled (before opening gui).
"""
return self.getClientZmqHwm()
@@ -2218,13 +2218,16 @@ class Detector(CppDetectorApi):
@property
@element
def threshold(self):
"""[Eiger][Mythen3] Threshold in eV
"""
[Eiger][Mythen3] Threshold in eV
Note
----
To change settings as well or set threshold without trimbits, use setThresholdEnergy.
To change settings as well or set threshold without trimbits,
use setThresholdEnergy.
:setter: It loads trim files from settingspath.\n [Mythen3] An energy of -1 will pick up values from detector.
:setter: It loads trim files from settingspath.\n
[Mythen3] An energy of -1 will pick up values from detector.
"""
if self.type == detectorType.MYTHEN3: