Callback rxheader (#502)

* 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

* passing reference header for callback instead of copying it
This commit is contained in:
Dhanya Thattil
2022-07-22 16:15:21 +02:00
committed by GitHub
parent 4117cda79b
commit d132ad8d02
9 changed files with 34 additions and 35 deletions

View File

@ -82,14 +82,14 @@ class DataProcessor : private virtual slsDetectorDefs, public ThreadObject {
MasterAttributes *attr,
std::mutex *hdf5LibMutex);
/** params: sls_receiver_header pointer, pointer to data, image size */
void registerCallBackRawDataReady(void (*func)(sls_receiver_header *,
/** params: sls_receiver_header, pointer to data, image size */
void registerCallBackRawDataReady(void (*func)(sls_receiver_header&,
char *, size_t, void *),
void *arg);
/** params: sls_receiver_header pointer, pointer to data, reference to image
/** params: sls_receiver_header, pointer to data, reference to image
* size */
void registerCallBackRawDataModifyReady(void (*func)(sls_receiver_header *,
void registerCallBackRawDataModifyReady(void (*func)(sls_receiver_header&,
char *, size_t &,
void *),
void *arg);
@ -192,7 +192,7 @@ class DataProcessor : private virtual slsDetectorDefs, public ThreadObject {
* dataPointer is the pointer to the data
* dataSize in bytes is the size of the data in bytes.
*/
void (*rawDataReadyCallBack)(sls_receiver_header *, char *, size_t,
void (*rawDataReadyCallBack)(sls_receiver_header&, char *, size_t,
void *) = nullptr;
/**
@ -203,7 +203,7 @@ class DataProcessor : private virtual slsDetectorDefs, public ThreadObject {
* revDatasize is the reference of data size in bytes. Can be modified to
* the new size to be written/streamed. (only smaller value).
*/
void (*rawDataModifyReadyCallBack)(sls_receiver_header *, char *, size_t &,
void (*rawDataModifyReadyCallBack)(sls_receiver_header&, char *, size_t &,
void *) = nullptr;
void *pRawDataReady{nullptr};