Average: 0
Rating Count: 0

Development status: New development
Information status: Updated
Repository: http://svn.code.sf.net/p/tango-ds/code/DeviceClasses/Acquisition/2D/Jungfrau

Class Description

Tango device server for Jungfrau detectors, using the SLS detector package.

Families: Acquisition

Key words:

Platform: Unix Like

Language: Cpp

License: GPL



Manufacturer: PSI




Class interface


Name Description
NImagesScalar: DevULong Number of frames per trigger.
NTriggersScalar: DevULong Number of triggers for one acquisition run.
ExposureTimeScalar: DevDouble Exposure time for a single image.
ExposurePeriodScalar: DevDouble Interval between to images if in internal trigger mode.
TriggerModeScalar: pogoDsl:EnumType In the internal mode NImages number of images are taken with the period set in ExposurePeriod. The value in Ntriggers is ignored. In external mode each trigger pulse starts a series of Nimages images, with the given period. Burst mode is currently not implemented.
TriggerStartDelayScalar: DevDouble Delay between receiving a trigger pulse and starting the acquisition.
GainModeScalar: pogoDsl:EnumType Dynamic switches automatically between all gain modes. ForceSwitchG1 disables gain mode 0. ForceSwitchG2 disables gain modes 0 and 1. FixG0 forces the detector to use gain mode 0 only. FixG1 forces the detector to use gain mode 1 only. FixG2 forces the detector to use gain mode 2 only. Use FixG0 with caution, for it can easily break the detector!
HighVoltageScalar: DevUChar Sets the high voltage used. Possible values are between 60V and 200V. 0 disables the high voltage.
WidthScalar: DevUShort Number of detector in one horizontal line.
HeightScalar: DevUShort Number of detector in one vertical line.
FilewriterEnabledScalar: DevBoolean No images will be written to disk if disabled.
FilewriterPathScalar: DevString Path to the folder where the image files are written into.
FilewriterNameScalar: DevString Prefix for the name of the image files.
FilewriterAcquisitionIndexScalar: DevULong Index automatically appended to the file name and increased after every run.
FilewriterBasicModeScalar: DevBoolean If enabled, the server will not write image files itself, but leave this to the Receiver objects of the slsDetectorPackage.
FilewriterPixelMaskScalar: DevBoolean Whether the pixel mask will be applied on images written to disk if not set to FilewriterBasicMode.
FilewriterGainModeDecodingScalar: DevBoolean Whether the pedestals will be substracted and gain modes decoded on images written to disk if not set to FilewriterBasicMode.
FilewriterGeometryCorrectionScalar: DevBoolean Whether module and submodule gaps will be inserted to images written to disk if not set to FilewriterBasicMode.
MonitorEnabledScalar: DevBoolean If set, the images will be retreived through a Receiver callback and put into the monitor buffer. If this is disabled and FilewriterBasciMode is enabled, the callback is not registered which speeds up the Receiver.
MonitorIntegrationRangeScalar: DevUShort If set to a value >0, the set number of images will be sumed up and put into the buffer as one image.
MonitorBufferSizeScalar: DevUShort How many images the monitor buffer can keep.
MonitorDividerScalar: DevUShort Only every nth image will be copied into the monitor buffer.
MonitorDiscardNewScalar: DevBoolean If enabled, the monitor buffer will dicard new images instead of old ones when it`s filled.
MonitorPixelMaskScalar: DevBoolean Whether the pixel mask will be applied on the monitor image.
MonitorGainModeDecodingScalar: DevBoolean Whether the pedestals will be substracted and gain modes decoded on the monitor image.
MonitorGeometryCorrectionScalar: DevBoolean Whether module and submodule gaps will be inserted to the monitor image.
StreamEnabledScalar: DevBoolean Enable/disable data streaming from receiver via ZMQ to other processes. This creates/destroys zmq streamer threads in receiver. For fast applications is might be necessary to turn this off. The servers file writer and monitoring features make use of this and will enable streaming automatically.
StreamDividerScalar: DevUShort Every nth image will be streamed out. Default is 1, meaning every image. If 0, StreamUpdateInterval is the timeout, after which current frame is sent out.
StreamUpdateIntervalScalar: DevFloat Interval after which the current image will be streamed out. Default is 500 ms. Only active if StreamDivider is set to 0.
DetectorTypeScalar: DevString Detector type indentifier.
DetectorSerialNumberScalar: DevString Serial numbers of the detector modules.
DetectorFirmwareVersionScalar: DevString Firmware versions of the detector modules.
SoftwareClientVersionScalar: DevString Version of the Detector library object this Tango server is linked against.
SoftwareKernelVersionScalar: DevString Version of the slsDetectorPackage this Tango server is linked against.
SoftwareReceiverVersionScalar: DevString Version of the Receiver library object this Tango server is linked against.
TemperatureSpectrum: DevFloat
GainMap0Image: DevDouble
GainMap1Image: DevDouble
GainMap2Image: DevDouble
PedestalG0Image: DevDouble
PedestalG1Image: DevDouble
PedestalG2Image: DevDouble
PixelMaskImage: DevUChar
MonitorImage: DevULong


Name Description
StateInput: DevVoid
Output: State
Device state
This command gets the device state (stored in its device_state data member) and returns it to the caller.
StatusInput: DevVoid
Output: ConstDevString
Device status
This command gets the device status (stored in its device_status data member) and returns it to the caller.
StartInput: DevVoid
Output: DevVoid
Starts a data acquisition. Internally calls the acquire command.
StopInput: DevVoid
Output: DevVoid
Abort detector acquisition. Internally calls the stopDetector command.
PedestalsInput: DevVoid
Output: DevVoid
Takes a series of images for each gain mode and computes pedestals from them. All series are 1000 images long and will be taken using the exposure time set. The frist series for gain mode 0 uses the regular dynamic gain mode setting with a period as short as possible (at least 1ms). For the following series for gain mode 1 and 2 the corresponding gain mode switch will be fixed and the given period will be used (but not shorter then 10ms). Please make sure there is no signal on the detector before executing this command.
ClearMonitorBufferInput: DevVoid
Output: DevVoid
Clears the monitor buffer.



Name Description
DetectorIdDevLong Detector shared memory id Default value is 0. Can be set to more values for multiple detectors.It is important only if you are controlling multiple detectors from the same pc.
ConfigurationPathDevString Config file for Detector and Receiver objects from the slsDetectorPackage.
GainMapPathArray of DevString Gain map files for each module.
PixelMaskPathArray of DevString

Please log in to comment.


b'### Note\n\nPlease do not update to any xxxx.xx.xx.dev0 tags. They are not releases, but tags for internal usage.\nUse only releases with tags such as x.x.x or x.x.x-rcx.\n\n### Documentation\n##### 5.0.0 - Latest Release\nDetailed documentation on the latest release can be found in the software wiki and on the official site.\n\n##### Older Releases\nDocumentation is found in the package.\n\n### Binaries\nBinaries for the slsDetectorPackage are available through conda. \n\n#Add conda channels\nconda config --add channels conda-forge\nconda config --add channels slsdetectorgroup\nconda config --set channel_priority strict\n\nconda install slsdetlib #only shared lib and command line\nconda install slsdet #python bindings (includes slsdetlib)\nconda install slsdetgui #gui (includes qt4)\n\n#Install specific version\nconda install slsdet=2020.03.02.dev0 #developer version from 3 March 2020\n\n\n\n### Source code\nOne can also obtain the source code from this repository and compile.\n\ngit clone https://github.com/slsdetectorgroup/slsDetectorPackage.git\n\n\n#### Dependencies \n\nRefer this page for dependencies.\n\n\n#### Compilation \n\nCompiling can be done in two ways. Either with the convenience script\ncmk.sh or directly with cmake for more control.\n\n1. Compile using script cmk.sh
\n\nThese are mainly aimed at those not familiar with using ccmake and cmake. \n\n The binaries are generated in slsDetectorPackage/build/bin directory.\n\n Usage: ./cmk.sh [-c] [-b] [-p] [e] [t] [r] [g] [s] [u] [i] [m] [n] [-h] [z] [-d <HDF5 directory>] [-l Install directory] [-k <CMake command>] [-j <Number of threads>]\n -[no option]: only make\n -c: Clean\n -b: Builds/Rebuilds CMake files normal mode\n -p: Builds/Rebuilds Python API\n -h: Builds/Rebuilds Cmake files with HDF5 package\n -d: HDF5 Custom Directory\n -k: CMake command\n -l: Install directory\n -t: Build/Rebuilds only text client\n -r: Build/Rebuilds only receiver\n -g: Build/Rebuilds only gui\n -s: Simulator\n -u: Chip Test Gui\n -j: Number of threads to compile through\n -e: Debug mode\n -i: Builds tests\n -m: Manuals\n -n: Manuals without compiling doxygen (only rst)\n -z: Moench zmq processor\n\n \n # get all options\n ./cmk.sh -?\n\n # new build and compile in parallel:\n ./cmk.sh -bj5\n\n \n2. Compile without script
\nUse cmake to create out-of-source builds, by creating a build folder parallel to source directory. This would create a debug build with address sanitizers.\n\n $ mkdir build\n $ cd build\n $ cmake ../slsDetectorPackage -DCMAKE_BUILD_TYPE=Debug -DSLS_USE_SANITIZER=ON\n $ make -j12 #or whatever number of threads wanted\n\n\nTo install binaries using CMake\n\n git clone --recursive https://github.com/slsdetectorgroup/slsDetectorPackage.git\n mkdir build && cd build\n cmake ../slsDetectorPackage -DCMAKE_INSTALL_PREFIX=/your/install/path\n make -j12 #or whatever number of cores you are using to build\n make install\n\n\n\n### Support\n dhanya.thattil@psi.ch\n erik.frojdh@psi.ch'

3 Sep 2022, DS Admin
The device class has been updated.
You can see previous version here .

27 Aug 2022, DS Admin
The device class has been updated.
You can see previous version here .

20 Aug 2022, DS Admin
The device class has been updated.
You can see previous version here .

13 Aug 2022, DS Admin
The device class has been updated.
You can see previous version here .

6 Aug 2022, DS Admin
The device class has been added to catalogue.
Added by:dadmin on:6 Aug 2022, 2:47 a.m.