diff --git a/slsReceiverSoftware/src/UDPStandardImplementation.cpp b/slsReceiverSoftware/src/UDPStandardImplementation.cpp index 12a176777..b12826f16 100644 --- a/slsReceiverSoftware/src/UDPStandardImplementation.cpp +++ b/slsReceiverSoftware/src/UDPStandardImplementation.cpp @@ -1867,8 +1867,6 @@ void UDPStandardImplementation::processWritingBufferPacketByPacket(int ithread){ volatile uint32_t currentPacketNumber[numberofListeningThreads];//current packet number volatile int numberofMissingPackets[numberofListeningThreads]; // number of missing packets in this buffer - eiger_packet_header_t* blankframe_header; - for(int i=0; imissingPacket) = missingPacketValue; //set each value inside blank frame to 0xff for(int j=0;j<(oneDataSize);++j){ - blankframe_data = (unsigned char*)blankframe[i] + sizeof(eiger_packet_header_t) + j; + unsigned char* blankframe_data = (unsigned char*)blankframe[i] + sizeof(eiger_packet_header_t) + j; *(blankframe_data) = 0xFF; } } @@ -1945,12 +1947,11 @@ void UDPStandardImplementation::processWritingBufferPacketByPacket(int ithread){ //not full frame else if(!fullframe[i]){ - eiger_packet_footer_t* packetBuffer_footer = (eiger_packet_footer_t*)(packetBuffer[i] + footerOffset + HEADER_SIZE_NUM_TOT_PACKETS); - - //update frame number and packet number if(numPackets[i] != dummyPacketValue){ + eiger_packet_footer_t* packetBuffer_footer = (eiger_packet_footer_t*)(packetBuffer[i] + footerOffset + HEADER_SIZE_NUM_TOT_PACKETS); + if(!((uint32_t)(*( (uint64_t*) packetBuffer_footer)))){ FILE_LOG(logERROR) << "Fifo "<< i << ": Frame Number is zero from firmware. popready[" << i << "]:" << popReady[i]; popReady[i]=true; @@ -1972,10 +1973,10 @@ void UDPStandardImplementation::processWritingBufferPacketByPacket(int ithread){ if(numPackets[i] == dummyPacketValue) cprintf(GREEN, "Fifo %d: Dummy packet: Adding missing packets to the last frame\n", i); else{ - cprintf(GREEN,"Fifo %d: fnum %d, (FW_fnum %d), pnum %d, last_pnum %d, pnum_offset %d\n" + cprintf(GREEN,"Fifo %d: fnum %d, fnum_thread %d, pnum %d, last_pnum %d, pnum_offset %d\n" "Fifo %d: Add missing packets to the right fnum %d\n", - i,presentFrameNumber[i],(uint32_t)(*( (uint64_t*) packetBuffer_footer)), - *( (uint16_t*) packetBuffer_footer->packetNumber),lastPacketNumber[i],frameBufferoffset[i], + i,presentFrameNumber[i],threadFrameNumber[i], + currentPacketNumber[i],lastPacketNumber[i],frameBufferoffset[i], i,presentFrameNumber); } #endif @@ -1991,7 +1992,7 @@ void UDPStandardImplementation::processWritingBufferPacketByPacket(int ithread){ frameBuffer[frameBufferoffset[i]] = blankframe[blankoffset]; eiger_packet_header_t* frameBuffer_header = (eiger_packet_header_t*) frameBuffer[frameBufferoffset[i]]; if (*( (uint16_t*) frameBuffer_header->missingPacket)!= missingPacketValue){ - blankframe_header = (eiger_packet_header_t*) blankframe[blankoffset]; + eiger_packet_header_t* blankframe_header = (eiger_packet_header_t*) blankframe[blankoffset]; cprintf(BG_RED, "Fifo %d: Missing Packet Error: Adding blank packets mismatch " "pnum_offset %d, pnum %d, fnum_thread %d, missingpacket_buffer 0x%x, missingpacket_blank 0x%x\n", i,frameBufferoffset[i],currentPacketNumber[i],threadFrameNumber[i], @@ -2029,9 +2030,8 @@ void UDPStandardImplementation::processWritingBufferPacketByPacket(int ithread){ else{ if(currentPacketNumber[i] != (uint32_t)(frameBufferoffset[i]-(i*packetsPerFrame/numberofListeningThreads))+1){ cprintf(BG_RED, "Fifo %d: Correct Packet Offset Error:Adding current packet mismatch " - "pnum_offset %d,pnum %d fnum_thread %d, (FW_fnum %d)\n", - i,frameBufferoffset[i],currentPacketNumber[i], - threadFrameNumber[i],(uint32_t)(*( (uint64_t*) packetBuffer_footer))); + "pnum_offset %d,pnum %d fnum_thread %d\n", + i,frameBufferoffset[i],currentPacketNumber[i],threadFrameNumber[i]); exit(-1); } @@ -2066,9 +2066,9 @@ void UDPStandardImplementation::processWritingBufferPacketByPacket(int ithread){ currentFrameNumber = presentFrameNumber; numTotMissingPacketsInFile += numMissingPackets; numTotMissingPackets += numMissingPackets; -#ifdef FNUM_DEBUG - cprintf(GREEN,"**fnum:%d**\n",currframenum); -#endif +//#ifdef FNUM_DEBUG + cprintf(GREEN,"**fnum:%d**\n",currentFrameNumber); +//#endif #ifdef MISSINGP_DEBUG if(numberofMissingPackets[0]) cprintf(RED, "Fifo 0 missing packets %d for fnum %d\n",numberofMissingPackets[0],currentPacketNumber);