mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-16 23:07:13 +02:00
changes to new callback arguments without filepointer
This commit is contained in:
@ -518,7 +518,7 @@ void UDPBaseImplementation::registerCallBackAcquisitionFinished(void (*func)(uin
|
||||
}
|
||||
|
||||
void UDPBaseImplementation::registerCallBackRawDataReady(void (*func)(uint64_t, uint32_t, uint32_t, uint64_t, uint64_t, uint16_t, uint16_t, uint16_t, uint16_t, uint32_t, uint16_t, uint8_t, uint8_t,
|
||||
char*, uint32_t, FILE*, void*),void *arg){
|
||||
char*, uint32_t, void*),void *arg){
|
||||
rawDataReadyCallBack=func;
|
||||
pRawDataReady=arg;
|
||||
}
|
||||
|
@ -1536,7 +1536,7 @@ int UDPStandardImplementation::setupWriter(){
|
||||
cbAction=startAcquisitionCallBack(filePath, (char*)tempname.c_str(),fileIndex, (uint32_t)bufferSize,pStartAcquisition);
|
||||
}
|
||||
|
||||
if(cbAction < DO_EVERYTHING){
|
||||
if(cbAction == DO_NOTHING){
|
||||
FILE_LOG(logINFO) << "Call back activated. Data saving must be taken care of by user in call back.";
|
||||
if (rawDataReadyCallBack){
|
||||
FILE_LOG(logINFO) << "Data Write has been defined externally";
|
||||
@ -1587,12 +1587,12 @@ int UDPStandardImplementation::createNewFile(int ithread){
|
||||
#endif
|
||||
|
||||
//filewrite enable & we allowed to create/close files
|
||||
if(fileWriteEnable && cbAction > DO_NOTHING){
|
||||
if(fileWriteEnable && cbAction == DO_EVERYTHING){
|
||||
|
||||
//close file pointers
|
||||
if(sfilefd[ithread]){
|
||||
//all threads need to close file, reset mask and exit loop
|
||||
if(myDetectorType == EIGER && fileWriteEnable && (cbAction > DO_NOTHING)){
|
||||
if(myDetectorType == EIGER && fileWriteEnable && (cbAction == DO_EVERYTHING)){
|
||||
updateFileHeader(ithread);
|
||||
fseek(sfilefd[ithread],0,0);
|
||||
fwrite((void*)fileHeader[ithread], 1, FILE_HEADER_SIZE, sfilefd[ithread]);
|
||||
@ -2732,7 +2732,7 @@ void UDPStandardImplementation::stopWriting(int ithread, char* wbuffer){
|
||||
|
||||
|
||||
//all threads need to close file, reset mask and exit loop
|
||||
if(myDetectorType == EIGER && fileWriteEnable && (cbAction > DO_NOTHING)){
|
||||
if(myDetectorType == EIGER && fileWriteEnable && (cbAction == DO_EVERYTHING)){
|
||||
updateFileHeader(ithread);
|
||||
fseek(sfilefd[ithread],0,0);
|
||||
fwrite((void*)fileHeader[ithread], 1, FILE_HEADER_SIZE, sfilefd[ithread]);
|
||||
@ -2891,7 +2891,7 @@ void UDPStandardImplementation::handleWithoutDataCompression(int ithread, char*
|
||||
|
||||
|
||||
//callback to write data
|
||||
if (cbAction < DO_EVERYTHING)
|
||||
if (cbAction == DO_NOTHING)
|
||||
rawDataReadyCallBack(
|
||||
tempframenumber,//frameNumber
|
||||
0,//expLength
|
||||
@ -2908,7 +2908,7 @@ void UDPStandardImplementation::handleWithoutDataCompression(int ithread, char*
|
||||
SLS_DETECTOR_HEADER_VERSION,//version
|
||||
wbuffer + fifoBufferHeaderSize,
|
||||
bufferSize * numberofJobsPerBuffer + fifoBufferHeaderSize,
|
||||
sfilefd[ithread], pRawDataReady);//know which thread from sfilefd
|
||||
pRawDataReady);//know which thread from sfilefd
|
||||
|
||||
|
||||
|
||||
@ -2954,7 +2954,7 @@ void UDPStandardImplementation::handleCompleteFramesOnly(int ithread, char* wbuf
|
||||
sls_detector_header* header = (sls_detector_header*) (wbuffer + HEADER_SIZE_NUM_TOT_PACKETS);
|
||||
uint64_t tempframenumber = header->frameNumber;
|
||||
|
||||
if (cbAction < DO_EVERYTHING)
|
||||
if (cbAction == DO_NOTHING)
|
||||
rawDataReadyCallBack(
|
||||
header->frameNumber,
|
||||
header->expLength,
|
||||
@ -2971,7 +2971,7 @@ void UDPStandardImplementation::handleCompleteFramesOnly(int ithread, char* wbuf
|
||||
header->version,
|
||||
wbuffer + fifoBufferHeaderSize,
|
||||
bufferSize * numberofJobsPerBuffer + fifoBufferHeaderSize,
|
||||
sfilefd[ithread], pRawDataReady);
|
||||
pRawDataReady);
|
||||
|
||||
|
||||
//write to file if enabled and update write parameters
|
||||
|
@ -180,7 +180,7 @@ void slsReceiver::registerCallBackAcquisitionFinished(void (*func)(uint64_t, voi
|
||||
|
||||
|
||||
void slsReceiver::registerCallBackRawDataReady(void (*func)(uint64_t, uint32_t, uint32_t, uint64_t, uint64_t, uint16_t, uint16_t, uint16_t, uint16_t, uint32_t, uint16_t, uint8_t, uint8_t,
|
||||
char*, uint32_t, FILE*, void*),void *arg){
|
||||
char*, uint32_t, void*),void *arg){
|
||||
//tcpipInterface
|
||||
if(udp_interface)
|
||||
udp_interface->registerCallBackRawDataReady(func,arg);
|
||||
|
@ -3404,7 +3404,7 @@ void slsReceiverTCPIPInterface::registerCallBackAcquisitionFinished(void (*func)
|
||||
}
|
||||
|
||||
void slsReceiverTCPIPInterface::registerCallBackRawDataReady(void (*func)(uint64_t, uint32_t, uint32_t, uint64_t, uint64_t, uint16_t, uint16_t, uint16_t, uint16_t, uint32_t, uint16_t, uint8_t, uint8_t,
|
||||
char*, uint32_t, FILE*, void*),void *arg){
|
||||
char*, uint32_t, void*),void *arg){
|
||||
rawDataReadyCallBack=func;
|
||||
pRawDataReady=arg;
|
||||
}
|
||||
|
@ -35,7 +35,7 @@ void slsReceiverUsers::registerCallBackAcquisitionFinished(void (*func)(uint64_t
|
||||
|
||||
void slsReceiverUsers::registerCallBackRawDataReady(void (*func)(uint64_t frameNumber, uint32_t expLength, uint32_t packetNumber, uint64_t bunchId, uint64_t timestamp,
|
||||
uint16_t modId, uint16_t xCoord, uint16_t yCoord, uint16_t zCoord, uint32_t debug, uint16_t roundRNumber, uint8_t detType, uint8_t version,
|
||||
char* datapointer, uint32_t datasize, FILE* filedescriptor, void*), void *arg){
|
||||
char* datapointer, uint32_t datasize, void*), void *arg){
|
||||
receiver->registerCallBackRawDataReady(func,arg);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user