mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-05 17:40:40 +02:00
* added empty c extension * added rotation to the decoding * added color map, options and findex * minor * move checks to before acquisition * added pixel map based decoder * cleanup * no thread creation for single thread processing * added rotation and test to compare * allow high and low water mark for zmq (also buffer size) for fast readouts * removed roatation during decoding * added Transpose to image and invert Y False to invert it * retains the zoomed state after the first image of gui, catch and display exception if no detector connected * moved start frame to dockable widget, removed extra frame number label, moved current measurement also to dockable widget, hide frame plot entirely when showing patternviewer * first image dependin on which plot * remember settings of main window size and position, dockewidget if docked, its size and posisiotn as well, then update it next time the gui is opened * change in comment * using c decoder for moench 04 and matterhorn * catch exception from invalid image from decoder * clean up * update row and col when choosing image type, neeeded to show values * fix for previous PR * disable resetting colormap values keep the range selected for every new acquisition * fix typos + tested on virtual matterhorn * minor print * refactored Slow ADCs Tab * refactored DAC tab * refactored power supplies * refactored signals tab * refactored transceiver tab * fix typo * fix typo2 * remove commented code * delete commented code * delete commented code * delete commented signals code * remove commented code for transceiver tab * refactor adc tab * refactor Pattern Tab * Refactor transceivers tab (PR#5) (#118) * refactored transceiver tab * remove commented code for transceiver tab --------- Co-authored-by: Erik Frojdh <erik.frojdh@gmail.com> * refactor adc tab (PR#6) (#119) * refactor adc tab * refactored Plot and Acquisition Tabs * fix the regression issue * restructure project files * applying singleton and renaming tabs to services * working install using pip * applies singleton to tab classes and remove CI erros * added pyzmq and pillow * remove the singleton implementation and keep changes * fix merge errors in mainWindow * moved misplaced init file * rename service to tab * reorganize imports * iterate over tabs * reorder tabs * add slowadc to the list * saving changes (buggy) power supply ui not showing in the gui * split power supply tab * fixed tests * add hardcoded values to defines file * fix error * separate power supply * fix errors for powerSuppliesTab * split dacs * split slow adcs * split signals tab * added tests for bit_utils * add slowAdc class to defines * split transceiver ui file * split adc.ui * split pattern ui file * split plot and acquisition ui file * added basic test for parsing bit names * removed redundant code in read_alias_file * fix dacs ui position * testing for correct exception * cmd and args at split * group radio buttons * fix comments from PR#1 * show legend * added python version and dev requirements to setup.py * fix dac issue * moved _decoder into pkg * added inplace build * removed clear * fixed dependencies * make tests run without slsdet * updated name of action * define colcount * fixed loading of alias file * add yapf and ruff * apply formatting * fix E and F rules * add more ruff rules * change variable name * squashing gh debugging commits and add pre-commit * update label values to mv units * add hook for yapf * reconfigure yapf precommit hook * add format and check_format to makefile * change gh actions * update readme * added check_format * WIP * added linting in github action * updated readme] * add more control for color choice * remove useless file * fix un-updated line after refactoring Defines BIT0_31_MASK is not found in Defines.signals * visually improve the interface * fix last commit * add only selected plots for legend * add hide legend button * change hide legend to show legend checkbox show legend is checked by default * add support for saving in numpy * solve conversations * fix acq index offset * fix browse button in pattern error * fix other browse button errors * finish tests and add usage.md * remove buffer * add file,numpy-like interface and tests * remove useless .npy files * subscriptible npz files * remove useless files * remove repetetive tests * save changes * add mode r+, add with support,remove logging * remove offset of acqIndex between raw and numpy saving * fix only saving last frame * save signals of multiple devices * add comments and move condition for clearer code * fix bug when vieweing pattern file * iterate over enabled and plotted plots * add padestal substraction to transceiver and analog data * init pedestal frames to detector.frames * restore old exception * add pedestal substraction for digital signals * remove frames spinbox from plotTab * remove comments and use str instead of Path * avoid saving all frames * correct exception and log error's trace * add gui tests * add waveform test * add pedestal test * refactor by using fixtures * add tests for moench analog and pattern * add pytest-qt to dependencies * add save and load gui parameters * remove nohup file * fix old bug IndexError * save plot type * a * handle canceling load, loading matterhorn pedestal for moench * remove comparing .png files for pattern test * save plot type * red error on status bar when shape mismatch for loaded pedestal * fix makefile and docstrings * fix PRs conversation * move code into different function * fix wrong function names for power supply * removed old ctbgui * removed unnecessary files --------- Co-authored-by: Erik Frojdh <erik.frojdh@gmail.com> Co-authored-by: Braham Bechir <braham_b@pc11979.psi.ch> Co-authored-by: Bechir <bechir.braham@psi.ch> Co-authored-by: Bechir <bechir.brahem420@gmail.com>
112 lines
2.8 KiB
Python
112 lines
2.8 KiB
Python
from enum import Enum
|
|
|
|
|
|
class Defines:
|
|
Time_Wait_For_Packets_ms = 0.5
|
|
Time_Status_Refresh_ms = 100
|
|
Time_Plot_Refresh_ms = 20
|
|
|
|
Zmq_hwm_high_speed = 2
|
|
Zmq_hwm_low_speed = -1
|
|
|
|
Acquisition_Tab_Index = 7
|
|
Max_Tabs = 9
|
|
|
|
class adc:
|
|
tabIndex = 5
|
|
count = 32
|
|
half = 16
|
|
BIT0_15_MASK = 0x0000FFFF
|
|
BIT16_31_MASK = 0xFFFF0000
|
|
|
|
class dac:
|
|
tabIndex = 0
|
|
count = 18
|
|
|
|
class signals:
|
|
tabIndex = 3
|
|
count = 64
|
|
half = 32
|
|
BIT0_31_MASK = 0x00000000FFFFFFFF
|
|
BIT32_63_MASK = 0xFFFFFFFF00000000
|
|
|
|
class pattern:
|
|
tabIndex = 6
|
|
loops_count = 6
|
|
|
|
class transceiver:
|
|
count = 4
|
|
tabIndex = 4
|
|
|
|
class slowAdc:
|
|
tabIndex = 2
|
|
count = 8
|
|
|
|
colCount = 4
|
|
|
|
powerSupplies = ('A', 'B', 'C', 'D', 'IO')
|
|
|
|
class ImageIndex(Enum):
|
|
Matterhorn = 0
|
|
Moench04 = 1
|
|
|
|
class Matterhorn:
|
|
nRows = 48
|
|
nHalfCols = 24
|
|
nCols = 48
|
|
nTransceivers = 2
|
|
tranceiverEnable = 0x3
|
|
nPixelsPerTransceiver = 4
|
|
|
|
class Moench04:
|
|
nRows = 400
|
|
nCols = 400
|
|
adcNumbers = [
|
|
9, 8, 11, 10, 13, 12, 15, 14, 1, 0, 3, 2, 5, 4, 7, 6, 23, 22, 21, 20, 19, 18, 17, 16, 31, 30, 29, 28, 27,
|
|
26, 25, 24
|
|
]
|
|
nPixelsPerSuperColumn = 5000
|
|
superColumnWidth = 25
|
|
|
|
Color_map = [
|
|
'viridis', 'plasma', 'inferno', 'magma', 'cividis', 'binary', 'gist_yarg', 'gist_gray', 'gray', 'bone', 'pink',
|
|
'spring', 'summer', 'autumn', 'winter', 'cool', 'Wistia', 'hot', 'afmhot', 'gist_heat', 'copper',
|
|
'gist_rainbow', 'rainbow', 'jet', 'turbo'
|
|
]
|
|
Default_Color_Map = 'viridis'
|
|
|
|
# pattern viewer defines
|
|
|
|
# pattern plot
|
|
Colors_plot = ['Blue', 'Orange']
|
|
|
|
# Wait colors and line styles (6 needed from 0 to 5)
|
|
# Colors_wait = ['b', 'g', 'r', 'c', 'm', 'y']
|
|
Colors_wait = ['Blue', 'Green', 'Red', 'Cyan', 'Magenta', 'Yellow']
|
|
Linestyles_wait = ['--', '--', '--', '--', '--', '--']
|
|
Alpha_wait = [0.5, 0.5, 0.5, 0.5, 0.5, 0.5]
|
|
Alpha_wait_rect = [0.2, 0.2, 0.2, 0.2, 0.2, 0.2]
|
|
|
|
# Loop colors and line styles (6 needed from 0 to 5)
|
|
Colors_loop = ['Green', 'Red', 'Purple', 'Brown', 'Pink', 'Grey']
|
|
Linestyles_loop = ['-.', '-.', '-.', '-.', '-.', '-.']
|
|
Alpha_loop = [0.5, 0.5, 0.5, 0.5, 0.5, 0.5]
|
|
Alpha_loop_rect = [0.2, 0.2, 0.2, 0.2, 0.2, 0.2]
|
|
|
|
# Display the count of clocks
|
|
Clock_vertical_lines_spacing = 50
|
|
Show_clocks_number = True
|
|
Line_width = 2.0
|
|
|
|
Colors = [
|
|
'Blue', 'Orange', 'Green', 'Red', 'Purple', 'Brown', 'Pink', 'Gray', 'Olive', 'Cyan', 'Magenta', 'Yellow',
|
|
'Black', 'White'
|
|
]
|
|
|
|
LineStyles = ['-', '--', '-.', ':']
|
|
|
|
class colorRange(Enum):
|
|
all = 0
|
|
center = 1
|
|
fixed = 2
|