
TCR1000SDK–Rev.3.0.0 Page17
TheAsynchronousCallbackFunction
Whenenabled,theAPIwillcallauser‐suppliedcallbackfunctionreportingtheactivationofinterrupts
ontheTCR.
AnexampleofthecallbackfunctioninC/C++:
DWORD_stdcallTCR1000_ApiAsyncCallback(DWORDdwStatus,PVOIDdata,DWORDdataLen)
{
PTCRTIMEtime;
switch(dwStatus)
{
caseASYNC_PERSEC:
//dataisapointertoaTCRTIMEdatastructureanddataLen=sizeof(TCRTIME)
time=(PTCRTIME)data;
break;
caseASYNC_TIMESET:
//dataisapointertoaTCRTIMEdatastructureanddataLen=sizeof(TCRTIME)
time=(PTCRTIME)data;
break;
caseASYNC_STARTTC:
//dataisapointertoaTCRTIMEdatastructureanddataLen=sizeof(TCRTIME)
time=(PTCRTIME)data;
break;
caseASYNC_ENDTC:
//dataisapointertoaTCRTIMEdatastructureanddataLen=sizeof(TCRTIME)
time=(PTCRTIME)data;
break;
caseASYNC_TIMELOSS:
//dataisNULLanddataLen=0
break;
caseASYNC_TIMEGAIN:
//dataisNULLanddataLen=0
break;
}
return(0);
}
Thecallbackfunctionmayhaveanynamethattheuserapplicationrequires,butmusthavetheexact
callingconventionandparameterdeclarationasshownabovetoavoidcorruptionofthestackwhen
thefunctioniscalledbytheAPI.
Kommentare zu diesen Handbüchern