fixed the print file packet loss progress bug

This commit is contained in:
Dhanya Maliakal
2016-10-19 15:53:26 +02:00
parent 7f293115c4
commit 839896c7e6

View File

@ -1359,9 +1359,12 @@ int UDPStandardImplementation::setupWriter(){
int UDPStandardImplementation::createNewFile(){
FILE_LOG(logDEBUG) << __AT__ << " called";
int index = 0;
if(packetsCaught)
if(packetsCaught){
index = frameIndex;
cout << endl << "File:" << completeFileName <<endl;
}
//create file name
if(!frameIndexEnable)
@ -1400,21 +1403,20 @@ int UDPStandardImplementation::createNewFile(){
//Print packet loss and filenames
if(!packetsCaught){
previousFrameNumber = -1;
cout << "File: " << completeFileName << endl;
cout << "File:" << completeFileName << endl;
}else{
if (previousFrameNumber == -1)
previousFrameNumber = startFrameIndex-1;
cout << completeFileName
<< "\tPacket Loss: " << setw(4)<<fixed << setprecision(4) << dec <<
(int)((( (currentFrameNumber-previousFrameNumber) - ((packetsInFile-numTotMissingPacketsInFile)/packetsPerFrame))/
(double)(currentFrameNumber-previousFrameNumber))*100.000)
<< "%\tFramenumber: " << currentFrameNumber
<< "\t\t PreviousFrameNumber: " << previousFrameNumber
<< "\tIndex " << dec << index
<< "\tLost " << dec << ( ((int)(currentFrameNumber-previousFrameNumber)) -
((packetsInFile-numTotMissingPacketsInFile)/packetsPerFrame)) << endl;
cout //<< "Packet Loss:" <<
//setw(4)<<fixed << setprecision(4) <<
//dec << (int)((( (currentFrameNumber-1-previousFrameNumber) - ((packetsInFile-numTotMissingPacketsInFile)/packetsPerFrame))/
// (double)(currentFrameNumber-1-previousFrameNumber))*100.000)
//<< "%\t"
<< "Packets Lost:" << dec << ( ((int)(currentFrameNumber-1-previousFrameNumber)) -
((packetsInFile-numTotMissingPacketsInFile)/packetsPerFrame))
<< "\tCurrentFrameNumber:" << currentFrameNumber
<< "\tPreviousFrameNumber:" << previousFrameNumber
//<< "\tIndex:" << dec << index
<< endl;
}
//write file header
@ -1424,7 +1426,7 @@ int UDPStandardImplementation::createNewFile(){
//reset counters for each new file
if(packetsCaught){
previousFrameNumber = currentFrameNumber;
previousFrameNumber = currentFrameNumber-1;
packetsInFile = 0;
numTotMissingPacketsInFile = 0;
}
@ -2283,6 +2285,8 @@ void UDPStandardImplementation::processWritingBufferPacketByPacket(int ithread){
//full frame
if(fullframe[0] && fullframe[1]){
currentFrameNumber = presentFrameNumber;
acquisitionIndex = currentFrameNumber - startAcquisitionIndex;
frameIndex = currentFrameNumber - startFrameIndex;
numTotMissingPacketsInFile += numMissingPackets;
numTotMissingPackets += numMissingPackets;
@ -2524,6 +2528,21 @@ void UDPStandardImplementation::stopWriting(int ithread, char* wbuffer[]){
}
//all threads need to close file, reset mask and exit loop
if(packetsCaught){
cout << endl << "File:" << completeFileName <<endl;
cout //<< "Packet Loss:" <<
//setw(4)<<fixed << setprecision(4) <<
//dec << (int)((( (currentFrameNumber-previousFrameNumber) - ((packetsInFile-numTotMissingPacketsInFile)/packetsPerFrame))/
// (double)(currentFrameNumber-previousFrameNumber))*100.000)
// <<"%\t"
<< "Packets Lost:" << dec << ( ((int)(currentFrameNumber-previousFrameNumber)) -
((packetsInFile-numTotMissingPacketsInFile)/packetsPerFrame))
<< "\tCurrentFrameNumber:" << currentFrameNumber
<< "\tPreviousFrameNumber:" << previousFrameNumber
//<< "\tIndex:" << dec << frameIndex
<< endl;
}
closeFile(ithread);
pthread_mutex_lock(&statusMutex);
writerThreadsMask^=(1<<ithread);