- Reworked the connection object and the IO system

- Reworked the support for TRICS
- Added a second generation motor
This commit is contained in:
koennecke
2009-02-03 08:05:39 +00:00
parent f6d595665e
commit 361ee9ebea
119 changed files with 16455 additions and 3674 deletions

View File

@ -53,8 +53,7 @@ static void AddPrivProperty(pHdb node, int priv){
SetHdbProperty(node,PRIVNAM,pPriv);
}
/*=================== motor code =======================================*/
static int MoveCallback(int iEvent, void *eventData, void *userData,
commandContext cc){
static int MoveCallback(int iEvent, void *eventData, void *userData){
MotCallback *motData = (MotCallback *)eventData;
pHdb motor = (pHdb)userData;
pHdb pos = NULL;
@ -71,8 +70,7 @@ static int MoveCallback(int iEvent, void *eventData, void *userData,
return 1;
}
/*---------------------------------------------------------------------*/
static int MotorValueCallback(int iEvent, void *eventData, void *userData,
commandContext cc){
static int MotorValueCallback(int iEvent, void *eventData, void *userData){
pHdb motor = (pHdb)userData;
pMotor pMot = (pMotor)eventData;
pHdb current = NULL;
@ -280,9 +278,9 @@ static pHdb CreateMotorAdapter(char *name, pMotor pMot){
*/
strncpy(comCom.deviceID,name,255);
comCom.transID = -77;
RegisterCallback(pMot->pCall,comCom, MOTDRIVE, MoveCallback,
RegisterCallback(pMot->pCall,MOTDRIVE, MoveCallback,
result,NULL);
RegisterCallback(pMot->pCall,comCom, HDBVAL, MotorValueCallback,
RegisterCallback(pMot->pCall,HDBVAL, MotorValueCallback,
result,NULL);
if(!AddStdMotorPar(result,pMot)){
@ -396,8 +394,7 @@ static hdbCallbackReturn SicsVarSetCallback(pHdb currentNode, void *userData,
return hdbContinue;
}
/*----------------------------------------------------------------------*/
static int ValueCallback(int iEvent, void *eventData, void *userData,
commandContext cc){
static int ValueCallback(int iEvent, void *eventData, void *userData){
pSicsVariable pVar = (pSicsVariable)eventData;
pHdb node = (pHdb)userData;
hdbValue v;
@ -451,10 +448,8 @@ static pHdb MakeSicsVarNode(pSicsVariable pVar, char *name){
if(pCall == NULL){
return NULL;
}
strncpy(comCom.deviceID,name,255);
comCom.transID = -77;
AppendHipadabaCallback(node,pCall);
RegisterCallback(pVar->pCall,comCom, VALUECHANGE, ValueCallback,
RegisterCallback(pVar->pCall,VALUECHANGE, ValueCallback,
node,NULL);
snprintf(command,1023,"%s ", pVar->name);
SetHdbProperty(node,"sicscommand",command);
@ -503,8 +498,7 @@ static void updateCountList(){
SCDeleteConnection(pDummy);
}
/*---------------------------------------------------------------------------*/
static int CounterCallback(int iEvent, void *eventData, void *userData,
commandContext cc){
static int CounterCallback(int iEvent, void *eventData, void *userData){
if(iEvent == MONITOR || iEvent == COUNTEND){
updateCountList();
}
@ -714,13 +708,13 @@ int SICSHdbAdapter(SConnection *pCon, SicsInterp *pSics, void *pData,
hugo.node = path;
if(countList < 0){
countList = LLDcreate(sizeof(CountEntry));
RegisterCallback(pCount->pCall, SCGetContext(pCon),
RegisterCallback(pCount->pCall,
COUNTSTART, CounterCallback,
NULL, NULL);
RegisterCallback(pCount->pCall, SCGetContext(pCon),
RegisterCallback(pCount->pCall,
COUNTEND, CounterCallback,
NULL, NULL);
RegisterCallback(pCount->pCall, SCGetContext(pCon),
RegisterCallback(pCount->pCall,
MONITOR, CounterCallback,
NULL, NULL);
}