mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-26 08:10:02 +02:00
merge from 3.0.1 in readme and makefle for manual
This commit is contained in:
commit
d48ca4a9fe
1
.gitignore
vendored
1
.gitignore
vendored
@ -8,3 +8,4 @@ bin/
|
||||
*.toc
|
||||
build
|
||||
docs/
|
||||
RELEASE.txt
|
||||
|
68
README.md
68
README.md
@ -1,44 +1,80 @@
|
||||
# slsDetector package
|
||||
|
||||
The SLS Detectors Package is intended to control the detectors developed by the SLS Detectors Group. <br>
|
||||
The detectors currently supported are namely MYTHEN, GOTTHARD, EIGER, JUNGFRAU and MOENCH.<br>
|
||||
|
||||
## Installation
|
||||
|
||||
### Get source
|
||||
The source code is organised into several submodules, and the top level module is
|
||||
sls_detectors_package.
|
||||
### Get binaries
|
||||
Documentation to obtain the binaries via the conda package is available [here.](https://github.com/slsdetectorgroup/sls_detector_software)
|
||||
|
||||
```
|
||||
$ git clone git@git.psi.ch:sls_detectors_software/sls_detectors_package.git
|
||||
$ cd sls_detectors_package
|
||||
$ ./checkout.sh
|
||||
```
|
||||
### Get source code
|
||||
One can also obtain the source code from this repository and compile as follows.
|
||||
|
||||
### Setup dependencies
|
||||
The GUI client requires Qt 4.8 and Qwt 6.0
|
||||
* Gui Client <br>
|
||||
Requirements: Qt 4.8 and Qwt 6.0
|
||||
```
|
||||
export QTDIR=/usr/local/Trolltech/
|
||||
export QWTDIR=/usr/local/qwt-6.0.1/
|
||||
```
|
||||
If either of them does not exist, the GUI client will not be built.
|
||||
|
||||
The calibration wizards require ROOT
|
||||
* Calibration wizards<br>
|
||||
Requirements: ROOT
|
||||
```
|
||||
export ROOTSYS=/usr/local/root-5.34
|
||||
```
|
||||
|
||||
### Compile
|
||||
Use cmake to create out-of-source builds, by creating an build folder parallel to source directory.
|
||||
### Compile using script cmk.sh
|
||||
Usage: [-c] [-b] [-h] [-d HDF5 directory] [-j]<br>
|
||||
* -[no option]: only make<br>
|
||||
* -c: Clean<br>
|
||||
* -b: Builds/Rebuilds CMake files normal mode<br>
|
||||
* -h: Builds/Rebuilds Cmake files with HDF5 package<br>
|
||||
* -d: HDF5 Custom Directory<br>
|
||||
* -t: Build/Rebuilds only text client<br>
|
||||
* -r: Build/Rebuilds only receiver<br>
|
||||
* -g: Build/Rebuilds only gui<br>
|
||||
* -j: Number of threads to compile through<br>
|
||||
|
||||
For only make:
|
||||
./cmk.sh
|
||||
|
||||
For make clean;make:
|
||||
./cmk.sh -c
|
||||
|
||||
For using hdf5 without custom dir /blabla:
|
||||
./cmk.sh -h -d /blabla
|
||||
|
||||
For rebuilding cmake without hdf5
|
||||
./cmk.sh -b
|
||||
|
||||
For using multiple cores to compile faster:<br>
|
||||
(all these options work)<br>
|
||||
./cmk.sh -j9<br>
|
||||
./cmk.sh -cj9 #with clean<br>
|
||||
./cmk.sh -hj9 #with hdf5<br>
|
||||
./cmk.sh -j9 -h #with hdf<br>
|
||||
|
||||
For rebuilding only certain sections<br>
|
||||
./cmk.sh -tg #only text client and gui<br>
|
||||
./cmk.sh -r #only receiver<br>
|
||||
|
||||
|
||||
### Compile without script
|
||||
Use cmake to create out-of-source builds, by creating a build folder parallel to source directory.
|
||||
```
|
||||
$ cd ..
|
||||
$ mkdir sls_detectors_package-build
|
||||
$ cd sls_detectors_package-build
|
||||
$ cmake ../sls_detectors_package
|
||||
$ mkdir slsDetectorPackage-build
|
||||
$ cd slsDetectorPackage-build
|
||||
$ cmake ../slsDetectorPackage -DUSE_TEXTCLIENT=ON -DUSE_RECEIVER=ON -DUSE_GUI=OFF -DCMAKE_BUILD_TYPE=Debug -DUSE_HDF5=OFF
|
||||
$ make
|
||||
```
|
||||
|
||||
Use the following as an example to compile statically and using specific hdf5 folder
|
||||
```
|
||||
$ HDF5_ROOT=/opt/hdf5v1.10.0 cmake -DHDF5_USE_STATIC_LIBRARIES=TRUE ../slsDetectorsPackage
|
||||
$ HDF5_ROOT=/opt/hdf5v1.10.0 cmake ../slsDetectorPackage -DUSE_TEXTCLIENT=ON -DUSE_RECEIVER=ON -DUSE_GUI=OFF -DCMAKE_BUILD_TYPE=Debug -DUSE_HDF5=ON
|
||||
```
|
||||
The libraries and executables will be found at `bin` directory
|
||||
```
|
||||
|
106
RELEASE.txt
106
RELEASE.txt
@ -1,12 +1,11 @@
|
||||
|
||||
SLS Detector Package 3.1.0 released on 2017-10-02
|
||||
SLS Detector Package 3.0.1 released on 2017-09-27
|
||||
=================================================
|
||||
|
||||
|
||||
|
||||
INTRODUCTION
|
||||
|
||||
This document describes the differences between 3.1.0 and 3.0.1 release.
|
||||
This document describes the differences between 3.0.0 and 3.0.1 release.
|
||||
|
||||
Manual (both HTML and pdf versions) are provided in
|
||||
manual/docs/
|
||||
@ -45,41 +44,114 @@ CONTENTS
|
||||
Changes in User Interface
|
||||
=========================
|
||||
|
||||
Client
|
||||
------
|
||||
1. User Detector API for call back has been changed. Instead of providing double* data,
|
||||
it will now provided in char* with the bit width. One can decode the char* to get an
|
||||
array with data type of their own choosing.
|
||||
|
||||
Receiver
|
||||
--------
|
||||
2. (Eiger) Gap Pixels are included in the data provided. It can be enabled/disabled using
|
||||
'gappixels' from the command line.
|
||||
|
||||
1. Bug Fix: Example receiver users code now handles child process exit
|
||||
better. Example receiver code in slsDetectorsPackage/manual/manual-api
|
||||
folder (mainReceiver.cpp).
|
||||
|
||||
2. detReceiver is now executed with [start tcp port] [number of receivers]
|
||||
as arguments. By default, start tcp port is 1954 and number of receivers
|
||||
is 1.
|
||||
|
||||
User
|
||||
----
|
||||
|
||||
3. Added a few advanced user functions in slsDetectorUser class.
|
||||
|
||||
|
||||
|
||||
New Features
|
||||
============
|
||||
|
||||
Detector Server
|
||||
---------------
|
||||
1. (Eiger): Virtual class to execute on pc for integration.
|
||||
|
||||
|
||||
Client
|
||||
------
|
||||
|
||||
2. Parallelized more commands to detector. Beneficial for large multi detector systems.
|
||||
|
||||
3. One can set "threaded" to 0 in the config file and acquire from command line. It will
|
||||
not give you progress, but might be faster for large multi detector systems.
|
||||
|
||||
|
||||
Receiver
|
||||
--------
|
||||
|
||||
4. Added silent mode to receiver using command r_silent [i] from client.
|
||||
It might be beneficial for max frame rate applications.
|
||||
|
||||
|
||||
Resolved Issues
|
||||
===============
|
||||
|
||||
Gui
|
||||
---
|
||||
1. (Jungfrau) Now features gain plot. Enabled or disabled on the fly using the check button
|
||||
in the tab plot under 2D options.
|
||||
|
||||
1. Bug fix:(Eiger) In expert mode and in advanced tab, when trimbits
|
||||
loaded are different for every pixel, the gui complains and sets
|
||||
all trimbits to zero. This has been resolved. Now, the "Set All
|
||||
Trimbits" field is just set to -1.
|
||||
|
||||
Resolved Issues
|
||||
===============
|
||||
2. Minor alignment issue in Advanced Tab fixed.
|
||||
|
||||
Client
|
||||
------
|
||||
|
||||
3. Made it easier to disable the standard receiver and fixing bugs related to the use of a
|
||||
custom one.
|
||||
|
||||
Resolved Issues
|
||||
===============
|
||||
Detector Server
|
||||
---------------
|
||||
|
||||
4. (Eiger): Status will return error if there was the unlikely trouble reading status
|
||||
register in the front end board. Earlier, it would only return idle.
|
||||
|
||||
Receiver
|
||||
--------
|
||||
|
||||
5. Bug fix: x, y and z coordinates in the call backs and the files
|
||||
are still not corrected in the detector udp header and must be
|
||||
hardcoded for this release. It is done now.
|
||||
|
||||
6. File class in receiver should be created only if file write is
|
||||
enabled. This has been corrected to that.
|
||||
|
||||
|
||||
|
||||
Known Issues
|
||||
============
|
||||
|
||||
Client
|
||||
------
|
||||
|
||||
1. Changing file name prefix at the single detector level will not concatenate scan or
|
||||
position variables to the file name prefix. This is now done only at the multi
|
||||
detector level.
|
||||
|
||||
|
||||
Detector Server
|
||||
---------------
|
||||
|
||||
2. (Eiger) The hardware mac of the detector is used (not relayed back to the client).
|
||||
For 1 GbE, the hardware IP of the detector is used (also not relayed back to the
|
||||
client).
|
||||
|
||||
3. Standard header fills x-coord in 1D. y-coord and z-coord is not implemented (3D).
|
||||
|
||||
|
||||
Receiver
|
||||
--------
|
||||
|
||||
4. HDF5 compression and filters are not implemented yet.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
17
checkout.sh
17
checkout.sh
@ -1,17 +0,0 @@
|
||||
#git clone $1@git.psi.ch:sls_det_software/sls_detectors_package.git slsDetectorsPackage
|
||||
|
||||
#cd slsDetectorsPackage
|
||||
|
||||
git clone $1@git.psi.ch:sls_detectors_software/sls_detector_software.git slsDetectorSoftware
|
||||
|
||||
git clone $1@git.psi.ch:sls_detectors_software/sls_detector_gui.git slsDetectorGui
|
||||
|
||||
git clone $1@git.psi.ch:sls_detectors_software/sls_receiver_software.git slsReceiverSoftware
|
||||
|
||||
git clone $1@git.psi.ch:sls_detectors_software/sls_detector_calibration.git slsDetectorCalibration
|
||||
|
||||
#git clone $1@git.psi.ch:sls_detectors_software/sls_image_reconstruction.git slsImageReconstruction
|
||||
|
||||
git clone $1@git.psi.ch:sls_detectors_software/calibration_wizards.git calibrationWizards
|
||||
|
||||
#git clone git@git.psi.ch:sls_detectors_software/tests.git tests
|
@ -5,7 +5,7 @@ DESTDIR?=docs
|
||||
|
||||
|
||||
|
||||
MAINDIRS= manual-main
|
||||
MAINDIRS= manual-main manual-api manual-calwiz manual-client manual-gui
|
||||
#manual-calwiz manual-calwiz manual-gui manual-client manual-api
|
||||
CLEANDIRS=$(MAINDIRS:manual-%=clean-%)
|
||||
PDFDIRS=$(MAINDIRS:manual-%=pdf-%)
|
||||
|
@ -53,7 +53,7 @@ Frequently Asked Questions">
|
||||
Frequently Asked Questions</H1>
|
||||
<P ALIGN=CENTER><STRONG>Anna Bergamaschi</STRONG>
|
||||
</P>
|
||||
<BR><P ALIGN=CENTER><B>Date:</B> November 28, 2017</P>
|
||||
<BR><P ALIGN=CENTER><B>Date:</B> February 9, 2018</P>
|
||||
|
||||
<HR>
|
||||
|
||||
@ -244,7 +244,7 @@ Frequently Asked Questions</H1>
|
||||
<BR><HR>
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -198,7 +198,7 @@ Contents</A>
|
||||
<BR><HR>
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -195,7 +195,7 @@ Read Out Trigger mode: the external trigger signal defines the beginning of the
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -103,7 +103,7 @@ After the configuration, the synchronization of the controllers will be complete
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -103,7 +103,7 @@ A simple high-level solution in case you need to maintain the software for sever
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -187,7 +187,7 @@ JUNGFRAU</A>
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -81,7 +81,7 @@ General questions about detectors</A>
|
||||
<BR><HR>
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -203,7 +203,7 @@ Settings to be chosen for the MYTHEN detector as a function of the X-ray energy
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -105,7 +105,7 @@ In case the board has some memory that can be accessed by the hardware, this is
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -109,7 +109,7 @@ Single photon counting detectors</A>
|
||||
<BR><HR>
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -146,7 +146,7 @@ Plot indicating the reccomended choice of detector settings as a function of the
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -305,7 +305,7 @@ Example of data from a sample emitting fluorescent light and detector threshold
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -111,7 +111,7 @@ SLS Detectors Software</A>
|
||||
<BR><HR>
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -171,7 +171,7 @@ Sketch of the experimental setup for a dynamic acquisition of the flat field.</C
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -258,7 +258,7 @@ The authomatic loading of energy-specific trim files is not yet implemented.
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -179,7 +179,7 @@ Reading and analyzing the data takes some time, but, after a while, a canvas sho
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -110,7 +110,7 @@ The class slsDetectorUsers can be used as API from your acquisition software (se
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -158,7 +158,7 @@ You will need to configure more than one detector, only in case you want to oper
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -133,7 +133,7 @@ The client will take care of communicating with the data receiver and the detect
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -143,7 +143,7 @@ It must contain the subdirectories <code>dynamicgain</code>, <code>gain1</code>,
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -71,7 +71,7 @@ The configuration files look different for the different detector types. Example
|
||||
<BR><HR>
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -80,7 +80,7 @@ where:
|
||||
<BR><HR>
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -337,7 +337,7 @@ where i si the <I>file index</I> and p is the <I>stop script parameter</I>.
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
@ -53,7 +53,7 @@ Frequently Asked Questions">
|
||||
Frequently Asked Questions</H1>
|
||||
<P ALIGN=CENTER><STRONG>Anna Bergamaschi</STRONG>
|
||||
</P>
|
||||
<BR><P ALIGN=CENTER><B>Date:</B> November 28, 2017</P>
|
||||
<BR><P ALIGN=CENTER><B>Date:</B> February 9, 2018</P>
|
||||
|
||||
<HR>
|
||||
|
||||
@ -244,7 +244,7 @@ Frequently Asked Questions</H1>
|
||||
<BR><HR>
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-11-28
|
||||
2018-02-09
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
Binary file not shown.
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user