特定の値で始まり、のような別の値で終わるタイマーを作成しようとしています。
int pktctr = (unsigned char)unpkt[0];
if(pktctr == 2)
{
cout << "timer-begin" << endl;
//start timer here
}
if(pktctr == 255)
{
cout << "timer-end" << endl;
//stop timer here
//timer display total time then reset.
}
cout << "displays total time it took from 1 to 255 here" << endl;
これを達成する方法について何かアイデアはありますか?
void WINAPI MyUCPackets(char* unpkt, int packetlen, int iR, int arg)
{
int pktctr = (unsigned char)unpkt[0];
if(pktctr == 2)
{
cout << "timer-begin" << endl;
}
if(pktctr == 255)
{
cout << "timer-end" << endl;
}
return MyUC2Packets(unpkt,packetlen,iR,arg);
}
この関数が呼び出されるたびに、unpktは2から始まり、最大255に達し、その後1に戻ります。そして、1回転ごとにどれくらいの時間がかかったかを計算したいですか?
これは何度も起こります。ただし、毎回同じになるとは限らないため、これが発生するまでに何秒かかったかを確認したかっただけです。
注:これはMSDetours3.0で行われます...