|
|
|
@@ -128,88 +128,6 @@ void JackEngineTiming::GetTimeMeasure(jack_time_t callbackUsecs) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void JackEngineTiming::PrintState() |
|
|
|
{ |
|
|
|
jack_time_t prevtime, time; |
|
|
|
prevtime = time = fMeasure[0].fEngineTime; |
|
|
|
int cycle, prevcycle = fMeasure[0].fAudioCycle; |
|
|
|
/* |
|
|
|
|
|
|
|
std::ofstream f("measure.txt"); |
|
|
|
|
|
|
|
if (f.is_open()) { |
|
|
|
|
|
|
|
//std::cout << "---------------------------------------------" << std::endl; |
|
|
|
|
|
|
|
for (int i = 0; i < CLIENT_NUM; i++) { // client |
|
|
|
JackClientInterface* client = fClientTable[i]; |
|
|
|
if (client && client->GetClientControl()->fActive) { |
|
|
|
// f << "Client : " << i << std::endl; |
|
|
|
long maxsignalledat = 0; |
|
|
|
long maxawakedat = 0; |
|
|
|
long maxfinisheddat = 0; |
|
|
|
bool max = false; |
|
|
|
prevtime = fMeasure[0].fEngineTime; |
|
|
|
prevcycle = fMeasure[0].fAudioCycle; |
|
|
|
|
|
|
|
// TODO |
|
|
|
|
|
|
|
for (int j = 0; j < TIME_POINTS; j++) { // measure |
|
|
|
time = fMeasure[j].fEngineTime; |
|
|
|
cycle = fMeasure[j].fAudioCycle; |
|
|
|
|
|
|
|
if (fMeasure[j].fClientTable[i].fRefNum > 0) { |
|
|
|
|
|
|
|
if (fMeasure[j].fClientTable[i].fStatus != Finished) { |
|
|
|
f << "error status " << '\t' |
|
|
|
<< prevtime << '\t' |
|
|
|
<< time << '\t' |
|
|
|
<< fMeasure[j + 1].fEngineTime << '\t' |
|
|
|
<< prevcycle << '\t' |
|
|
|
<< cycle << '\t' |
|
|
|
<< fMeasure[j].fClientTable[i].fSignaledAt << '\t' |
|
|
|
<< fMeasure[j].fClientTable[i].fAwakeAt << '\t' |
|
|
|
<< fMeasure[j].fClientTable[i].fFinishedAt |
|
|
|
<< std::endl; |
|
|
|
} |
|
|
|
|
|
|
|
if (long(time - prevtime) > 0) { |
|
|
|
|
|
|
|
f << long(time - prevtime) << '\t' |
|
|
|
<< fMeasure[j].fClientTable[i].fSignaledAt - time << '\t' |
|
|
|
<< fMeasure[j].fClientTable[i].fAwakeAt - time << '\t' |
|
|
|
<< fMeasure[j].fClientTable[i].fFinishedAt - time << '\t' |
|
|
|
<< fMeasure[j].fClientTable[i].fStatus |
|
|
|
<< std::endl; |
|
|
|
} else { |
|
|
|
f << "error time : " << j << " " << long(time - prevtime) << std::endl; |
|
|
|
} |
|
|
|
|
|
|
|
maxsignalledat = MAX(maxsignalledat, long(fMeasure[j].fClientTable[i].fSignaledAt - time)); |
|
|
|
maxawakedat = MAX(maxawakedat, long(fMeasure[j].fClientTable[i].fAwakeAt - time)); |
|
|
|
maxfinisheddat = MAX(maxfinisheddat, long(fMeasure[j].fClientTable[i].fFinishedAt - time)); |
|
|
|
max = true; |
|
|
|
} |
|
|
|
prevtime = time; |
|
|
|
prevcycle = cycle; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
f << std::endl; |
|
|
|
if (max) { |
|
|
|
f << "maxsignalledat: " << maxsignalledat |
|
|
|
<< '\t' << "maxawakedat: " << maxawakedat |
|
|
|
<< '\t' << "maxfinisheddat: " << maxfinisheddat |
|
|
|
<< '\t' << std::endl; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
f.close(); |
|
|
|
} |
|
|
|
*/ |
|
|
|
} |
|
|
|
|
|
|
|
void JackEngineTiming::ClearTimeMeasures() |
|
|
|
{ |
|
|
|
for (int i = 0; i < TIME_POINTS; i++) { |
|
|
|
|