use callbackRequestProcessCallbackDelayed

This commit is contained in:
Marty Kraimer
2003-12-16 20:09:28 +00:00
parent fdd78eaf81
commit fff249dd3a
2 changed files with 5 additions and 28 deletions
+3 -16
View File
@@ -34,27 +34,13 @@
#include "dbCommon.h"
#include "aiRecord.h"
#include "epicsExport.h"
static void myCallback(CALLBACK *pcallback)
{
struct dbCommon *precord;
struct rset *prset;
callbackGetUser(precord,pcallback);
prset=(struct rset *)(precord->rset);
dbScanLock(precord);
(*prset->process)(precord);
dbScanUnlock(precord);
}
static long init_record(struct aiRecord *pai)
{
CALLBACK *pcallback;
switch (pai->inp.type) {
case (CONSTANT) :
pcallback = (CALLBACK *)(calloc(1,sizeof(CALLBACK)));
callbackSetCallback(myCallback,pcallback);
callbackSetUser(pai,pcallback);
pai->dpvt = (void *)pcallback;
break;
default :
@@ -78,7 +64,8 @@ static long read_ai(struct aiRecord *pai)
if(pai->disv<=0) return(2);
printf("Starting asynchronous processing: %s\n",pai->name);
pai->pact=TRUE;
callbackRequestDelayed(pcallback,pai->disv);
callbackRequestProcessCallbackDelayed(pcallback,
pai->prio,pai,(double)pai->disv);
return(0);
}
+2 -12
View File
@@ -54,15 +54,6 @@ typedef struct myCallback {
CALLBACK callback;
IOSCANPVT ioscanpvt;
}myCallback;
static void myCallbackFunc(CALLBACK *arg)
{
myCallback *pcallback;
callbackGetUser(pcallback,arg);
scanIoRequest(pcallback->ioscanpvt);
}
static long init_record(pevent,pass)
eventRecord *pevent;
@@ -72,8 +63,6 @@ static long init_record(pevent,pass)
pcallback = (myCallback *)(calloc(1,sizeof(myCallback)));
scanIoInit(&pcallback->ioscanpvt);
callbackSetCallback(myCallbackFunc,&pcallback->callback);
callbackSetUser(pcallback,&pcallback->callback);
pevent->dpvt = (void *)pcallback;
return(0);
}
@@ -97,6 +86,7 @@ static long read_event(pevent)
if(pevent->proc<=0) return(0);
pevent->udf = FALSE;
printf("%s Requesting Next ioEnevt\n",pevent->name);
callbackRequestDelayed(&pcallback->callback,(double)pevent->proc);
callbackRequestProcessCallbackDelayed(&pcallback->callback,
pevent->prio,pevent,(double)pevent->proc);
return(0);
}