61 Commits

Author SHA1 Message Date
7494e41862
910/frame synchronizer (#1086)
* wip: draft of frame synchronizer, semaphores not done yet

* signal handler not affecting semaphore inside lambda function

* finally works with sem

* install targets cmake error fix

* reducing the number of data call backs. incoming from developer

* WIP: of synchronisation (#969)

* WIP of synchronisation

* working so far if everything goes right

* added all information into json headers

* valid json

* allow frame synchronizer to have access to static libzmq when compiling on conda (libzeromq-devel not installed by default

* upto date with multirecieverapp for invalid arguments and help

* formatting

* remove warnings

* changes to print

* removed prints

* no need for print frames to be called

* minor

* commnet

* adding json header in start callback, imagesize in data callback and formatted

* fixed sanitizer issues. 1 left for ctrl+C
- zmq_msg_t should be deleted, not freed. Same with the char arrays and semaphores.

* fixed sanitizer issues and made it more readable

* moving clearing old frames to new startacq just in case it has to process soem frames before the callback

* created a callback mutex to register the callbacks when using threads for different Receiver objects instead of child processes, remove the clean up of the frames (deleting from a signal is thread unsafe) from the siginterrupt handler, reading or  setting terminate should also be inside the mutex, pass receiver object index so that only the first one   cleans up the shared structure

---------

Co-authored-by: Felix Engelmann <felix-github@nlogn.org>
2025-02-18 11:19:00 +01:00
Dhanya Thattil
9ac8dab8af
Rxclassmembers (#503)
* gui message doesnt show if it has a '>' symbol in error msg

* minor refactoring for readability (size_t calc fifo size)

* refactoring listening udp socket code: activated and datastream dont create udp sockets anyway, rc<=- should be discarded in any case

* wip

* refactoring memory structure access

* wip: bugfix write header + data to binary

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* portRoi no roi effecto on progress

* fail at receiver progress, wip

* segfaults for char pointer in struct

* reference to header to get header and data

* refactoring

* use const defined for size of header of fifo

* updated release notes

* remove pointer in callback for sls_receiver_header pointer

* rx same name arguments in constructors

* rx: same name arguments in constructor

* rx: removing the '_' suffix in class data members

* merge fix

* merge fix

* review fix refactoring
2022-07-25 14:02:11 +02:00
Erik Fröjdh
fa12ab2858
Support external builds of python bindings, gui, ctbgui and moench stuff (#440)
Use already installed version of the slsDetectorPackage. Assumes that the library has already been built and installed either on a system wide location or pointed to by CMAKE_PREFIX_PATH
2022-04-28 16:35:29 +02:00
f5cca7a98f removed binary master file as well 2022-03-29 13:30:06 +02:00
b9aa0f46e4 wip, hdf5 refactored 2022-03-29 13:02:57 +02:00
c17914e0a1 split MasterAtrributes into cpp 2022-03-16 15:49:06 +01:00
Dhanya Thattil
771b1e7877
rx_arping for 10g mode (#359)
* test for rx_arping

* arping ip and interface from client interface

* apring thread added to thread ids

* clean code for thread for arping

* removing the assumption that udpip1 fill be updated along with udpip2

* review, replacing syscall(sys_gettid) with gettid()
2022-02-04 10:12:57 +01:00
Erik Frojdh
b0a5a76065 adding LTO to tests 2021-11-24 17:40:14 +01:00
84f56ff314 updated permissions 2021-10-18 14:54:25 +02:00
ca08cd9ec1 updated cmakelists.txt for licesnse 2021-10-18 11:44:47 +02:00
e6b18f6a95 updated versioning for shared libraries 2021-10-14 15:11:47 +02:00
ee1a1563ba wip rewrite 2021-06-29 20:45:46 +02:00
Erik Fröjdh
201d304874
Better control of what is built (#247)
* allow for build only detector libs

* allow receiver libs only

* option for shared libraries
2021-06-02 16:09:28 +02:00
Erik Frojdh
56be47669f more cmake cleaning 2020-11-18 09:43:07 +01:00
Erik Frojdh
b96b1849cd minor 2020-11-18 09:15:17 +01:00
Erik Frojdh
1efdc90719 clean 2020-11-18 08:57:35 +01:00
Erik Fröjdh
121a3ad733
Static libraries (#213) 2020-11-03 18:54:11 +01:00
Erik Fröjdh
a15d8dd30a
Moving headers into include/sls (#212) 2020-11-02 16:05:28 +01:00
Erik Frojdh
fb8842e048 build and libname 2020-09-07 09:14:47 +02:00
Erik Frojdh
a1b88d3a62 fix 2020-09-04 11:20:33 +02:00
Erik Fröjdh
5bf6b7a338
Refactor of ZmqSocket (#109)
Changed data type of address from char[1000] to string to reduce stack size of object.

Removed redundant calls to Close

Removed function exposing the socket descriptor

Using functions from network_utils instead of duplicates

Added tests
2020-06-19 12:41:03 +02:00
Erik Frojdh
337e56d9bf cleaned up LTO detection 2020-04-23 08:23:36 +02:00
Erik Frojdh
6bb1188c37 renamed exes 2020-02-03 14:43:40 +01:00
c4e7086d99 rxr: renamed files, removed unnecessary comments 2019-11-18 16:19:46 +01:00
dc78e23449 rxr: removed slsReceiverUsers, start() and stop() 2019-11-18 15:16:20 +01:00
7457c56533 slsmultireceiver copied to slsreceiver/src cmake 2019-08-19 09:08:10 +02:00
Dhanya Thattil
894cc1c9e0
Simulator (#28)
* WIP

* wip

* wip

* removed loop

* sending 1 frame

* send multiple frames

* c11 for server

* WIP

* WIP

* Add CMake for the simulators. Requires some refactoring to make slsDetectorServer a proper library.

* Working cmake for jungfrau

* Working cmake for eiger

* WIP

* WIP

* Add preliminary working eiger simulator and breaks the jungfrau simulator

* virtual servers connected

* changes to make it work for rhel7 and install binaries in bin

* removed some unnecessary prints

* removed binaries and virtual makefiles
2019-06-03 10:16:54 +02:00
e14519c236 slsReceiver: removed special receiver config, added rx_dbitlist, rx_dbitoffset to put bits together in file, connected adcinvert, extsamplingsrc and extsampling properly to the detector, added tests 2019-05-03 20:37:40 +02:00
67eef8ba75 fix for hdf5 compilation with new cmake 2019-04-24 18:09:53 +02:00
262140728f receiver callback rearranging data for mythen302 2019-04-24 13:30:57 +02:00
89a06f099c merging refactor (replacing) 2019-04-12 10:53:09 +02:00
b89d56001e CMake: prefixing the options with SLS_ 2019-02-08 16:02:05 +01:00
Samuel Debionne
e13ecc8625 Add slsReceiver and slsDetector targets to the export set (used by donwstream project)
set TARGETS_EXPORT_NAME if the project is built directly.
2019-02-05 11:51:03 +01:00
Erik Frojdh
73ae8c6151 removing static libs 2019-01-15 17:24:20 +01:00
ab7e63c20f Moved sls_detector_exceptions to sls_receiver_exceptions & its consequences 2018-08-08 15:43:29 +02:00
7c29327b47 saving bit field in hdf5 as string of 512 bytes instead of 512 bits for the time being, will be updated when a better option is figured out 2018-07-06 12:00:35 +02:00
Erik Frojdh
49b8024c43 added logger.h to publig headers 2018-05-18 14:15:17 +02:00
16428f3828 esrf changes: CMake: support to be added and installed as a sub-project:
* Configure zmq as global imported library in slsReceiverSoftware
* Install zmq, necessary if linking to slsReceiver library
2018-04-25 18:24:08 +02:00
Erik Frojdh
dde032acc8 reverting locations 2018-02-08 10:54:07 +01:00
Erik Frojdh
ee9996908a test 2018-01-30 11:24:50 +01:00
Erik Frojdh
caf2548391 path 2018-01-30 11:15:31 +01:00
Erik Frojdh
8778fa0aca all files in bin 2018-01-30 11:05:43 +01:00
Erik Frojdh
633284cbdd hej 2018-01-29 17:28:54 +01:00
Erik Frojdh
a3293f4335 more headers 2018-01-29 17:27:32 +01:00
Erik Frojdh
2f59d58a50 receiver funcs 2018-01-29 16:33:35 +01:00
Erik Frojdh
ca059db4e9 path 2018-01-29 16:30:44 +01:00
Erik Frojdh
43a1d73522 ansi.h 2018-01-29 16:28:31 +01:00
Erik Frojdh
87d539a040 header 2018-01-29 16:18:12 +01:00
Erik Frojdh
2cc5557ec8 o 2018-01-24 10:05:45 +01:00
Erik Frojdh
7f80b77060 t 2018-01-24 09:22:55 +01:00