54 lines
1.5 KiB
C
54 lines
1.5 KiB
C
/*---------------------------------------------------------------------------
|
|
|
|
C O M E N T R Y
|
|
|
|
some helper stuff for implementing MultiMotors. Functions in mumo.c
|
|
|
|
Mark Koennecke, February 1997
|
|
---------------------------------------------------------------------------*/
|
|
#ifndef COMENTRY
|
|
#define COMENTRY
|
|
|
|
#define MAXDEV 10
|
|
typedef struct {
|
|
void *pData;
|
|
char name[80];
|
|
pObjectDescriptor pDescriptor;
|
|
float fVal;
|
|
int iCount;
|
|
} DevEntry;
|
|
|
|
/* -------------------The Entry per registered command --------------------*/
|
|
typedef struct __ComEntry {
|
|
char name[10];
|
|
char *pCommand;
|
|
int iDevice;
|
|
DevEntry pDevice[MAXDEV];
|
|
struct __ComEntry *pNext;
|
|
struct __ComEntry *pPrevious;
|
|
} ComEntry, *pComEntry;
|
|
|
|
typedef struct __NAMPOS {
|
|
char *name; /* the name */
|
|
pComEntry pCom; /* the positions */
|
|
char *text; /* explanatory text */
|
|
struct __NAMPOS *pNext;
|
|
struct __NAMPOS *pPrevious;
|
|
} NamPos, *pNamPos;
|
|
|
|
typedef struct __NAMMAP {
|
|
char *alias;
|
|
char *motname;
|
|
pMotor pMot;
|
|
} NamMap, *pNamMap;
|
|
|
|
int CheckComEntryBounds(pComEntry self, SConnection * pCon);
|
|
int AddExeEntry(pExeList self, pComEntry pNew, SConnection * pCon);
|
|
pComEntry CreateComEntry(void);
|
|
pComEntry CopyComEntry(pComEntry pOld);
|
|
int AddDevEntry(pComEntry pCom, char *name, void *pData,
|
|
pObjectDescriptor pDes, float fVal);
|
|
pNamPos LinkNamPos(pNamPos pHead, pNamPos pNew);
|
|
pNamPos UnlinkNamPos(pNamPos pHead, pNamPos pOld);
|
|
#endif
|