- Adapted indenation to new agreed upon system
- Added support for second generation scriptcontext based counter
This commit is contained in:
170
devexec.h
170
devexec.h
@ -28,7 +28,7 @@
|
||||
#include "obdes.h"
|
||||
#include "task.h"
|
||||
|
||||
typedef struct __EXELIST *pExeList;
|
||||
typedef struct __EXELIST *pExeList;
|
||||
|
||||
/* Returncodes */
|
||||
|
||||
@ -40,19 +40,19 @@
|
||||
/*------------------------------------------------------------------------
|
||||
B I R T H & D E A T H
|
||||
*/
|
||||
pExeList CreateExeList(pTaskMan pTask);
|
||||
void DeleteExeList(void *self);
|
||||
|
||||
pExeList CreateExeList(pTaskMan pTask);
|
||||
void DeleteExeList(void *self);
|
||||
|
||||
/* ================= Functions to talk to the above ====================== */
|
||||
|
||||
#line 43 "devexec.w"
|
||||
|
||||
int StartDevice(pExeList self, char *name, pObjectDescriptor pDes,
|
||||
void *pData, SConnection *pCon, float fNew);
|
||||
int StartMotor(pExeList self, SicsInterp *pSics, SConnection *pCon,
|
||||
char *name, float fNew);
|
||||
int StartCounter(pExeList self, SicsInterp *pSics, SConnection *pCon,
|
||||
char *name);
|
||||
int StartDevice(pExeList self, char *name, pObjectDescriptor pDes,
|
||||
void *pData, SConnection * pCon, float fNew);
|
||||
int StartMotor(pExeList self, SicsInterp * pSics, SConnection * pCon,
|
||||
char *name, float fNew);
|
||||
int StartCounter(pExeList self, SicsInterp * pSics, SConnection * pCon,
|
||||
char *name);
|
||||
|
||||
#line 239 "devexec.w"
|
||||
|
||||
@ -60,115 +60,115 @@
|
||||
|
||||
#line 88 "devexec.w"
|
||||
|
||||
int CheckExeList(pExeList self);
|
||||
int CheckExeList(pExeList self);
|
||||
/*
|
||||
checks the entries for success and deletes entries which have finished
|
||||
operation. If there are none left, the pOwner will be set to NULL.
|
||||
*/
|
||||
int Wait4Success(pExeList self);
|
||||
checks the entries for success and deletes entries which have finished
|
||||
operation. If there are none left, the pOwner will be set to NULL.
|
||||
*/
|
||||
int Wait4Success(pExeList self);
|
||||
|
||||
long GetDevexecID(pExeList self);
|
||||
long GetDevexecID(pExeList self);
|
||||
|
||||
int DevExecTask(void *pEL);
|
||||
void DevExecSignal(void *pEL, int iSignal, void *pSigData);
|
||||
int DevExecTask(void *pEL);
|
||||
void DevExecSignal(void *pEL, int iSignal, void *pSigData);
|
||||
|
||||
|
||||
#line 241 "devexec.w"
|
||||
|
||||
|
||||
/*
|
||||
Waits for execution to finish. returns 1 on Success, 0 if problems
|
||||
ocurred. Than the Interrupt code shall be checked and acted upon
|
||||
accordingly.
|
||||
*/
|
||||
Waits for execution to finish. returns 1 on Success, 0 if problems
|
||||
ocurred. Than the Interrupt code shall be checked and acted upon
|
||||
accordingly.
|
||||
*/
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
SConnection *GetExeOwner(pExeList self);
|
||||
SConnection *GetExeOwner(pExeList self);
|
||||
/*-------------------------------------------------------------------------*/
|
||||
int isInRunMode(pExeList self);
|
||||
int isInRunMode(pExeList self);
|
||||
/*--------------------------------------------------------------------------*/
|
||||
int ListPending(pExeList self, SConnection *pCon);
|
||||
int ListPending(pExeList self, SConnection * pCon);
|
||||
/*
|
||||
lists the Operations still pending on pCon.
|
||||
*/
|
||||
lists the Operations still pending on pCon.
|
||||
*/
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
#line 137 "devexec.w"
|
||||
|
||||
int StopExe(pExeList self, char *name);
|
||||
int StopExeWait(pExeList self);
|
||||
int StopExe(pExeList self, char *name);
|
||||
int StopExeWait(pExeList self);
|
||||
/*
|
||||
will stop the entry name and its subentries from executing.
|
||||
If ALL is specified as name, everything will be stopped and
|
||||
the Executor cleared.
|
||||
StopExeWait will stop all running things and wait for the stop
|
||||
to complete.
|
||||
*/
|
||||
will stop the entry name and its subentries from executing.
|
||||
If ALL is specified as name, everything will be stopped and
|
||||
the Executor cleared.
|
||||
StopExeWait will stop all running things and wait for the stop
|
||||
to complete.
|
||||
*/
|
||||
/*------------------------------------------------------------------------*/
|
||||
void ClearExecutor(pExeList self);
|
||||
void ClearExecutor(pExeList self);
|
||||
/*
|
||||
clears the executor without sending commands to the devices.
|
||||
*/
|
||||
clears the executor without sending commands to the devices.
|
||||
*/
|
||||
/*-----------------------------------------------------------------------*/
|
||||
int IsCounting(pExeList self);
|
||||
int PauseExecution(pExeList self);
|
||||
int ContinueExecution(pExeList self);
|
||||
int IsCounting(pExeList self);
|
||||
int PauseExecution(pExeList self);
|
||||
int ContinueExecution(pExeList self);
|
||||
|
||||
|
||||
#line 259 "devexec.w"
|
||||
|
||||
/*-------------------------- Commands ------------------------------------*/
|
||||
int DevexecAction(SConnection *pCon, SicsInterp *pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
int StopCommand(SConnection *pCon, SicsInterp *pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
int DevexecAction(SConnection * pCon, SicsInterp * pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
int StopCommand(SConnection * pCon, SicsInterp * pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
/*
|
||||
implements the stop command
|
||||
*/
|
||||
|
||||
int ListExe(SConnection *pCon, SicsInterp *pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
/*
|
||||
lists all currently executing objects
|
||||
*/
|
||||
int SicsIdle(SConnection *pCon, SicsInterp *pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
/*
|
||||
prints the seconds since the device executor was running the last time
|
||||
*/
|
||||
implements the stop command
|
||||
*/
|
||||
|
||||
int Success(SConnection *pCon, SicsInterp *pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
int ListExe(SConnection * pCon, SicsInterp * pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
/*
|
||||
waits until completion of all pending operations. Used in
|
||||
connection with non blocking operation such as motors started
|
||||
with run.
|
||||
*/
|
||||
int PauseAction(SConnection *pCon, SicsInterp *pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
lists all currently executing objects
|
||||
*/
|
||||
int SicsIdle(SConnection * pCon, SicsInterp * pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
/*
|
||||
prints the seconds since the device executor was running the last time
|
||||
*/
|
||||
|
||||
int Success(SConnection * pCon, SicsInterp * pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
/*
|
||||
pauses execution
|
||||
*/
|
||||
int ContinueAction(SConnection *pCon, SicsInterp *pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
waits until completion of all pending operations. Used in
|
||||
connection with non blocking operation such as motors started
|
||||
with run.
|
||||
*/
|
||||
int PauseAction(SConnection * pCon, SicsInterp * pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
/*
|
||||
continues execution
|
||||
*/
|
||||
|
||||
pauses execution
|
||||
*/
|
||||
int ContinueAction(SConnection * pCon, SicsInterp * pSics, void *pData,
|
||||
int argc, char *argv[]);
|
||||
/*
|
||||
continues execution
|
||||
*/
|
||||
|
||||
/*--------------------------- Locking ---------------------------------*/
|
||||
|
||||
|
||||
#line 183 "devexec.w"
|
||||
|
||||
void LockDeviceExecutor(pExeList self);
|
||||
void UnlockDeviceExecutor(pExeList self);
|
||||
|
||||
|
||||
|
||||
void LockDeviceExecutor(pExeList self);
|
||||
void UnlockDeviceExecutor(pExeList self);
|
||||
|
||||
|
||||
#line 299 "devexec.w"
|
||||
|
||||
|
||||
/* -------------------------- Executor management -------------------------*/
|
||||
|
||||
pExeList GetExecutor(void);
|
||||
void SetExecutor(pExeList pExe);
|
||||
|
||||
pExeList GetExecutor(void);
|
||||
void SetExecutor(pExeList pExe);
|
||||
/*----------------------- Logging -----------------------------------------*/
|
||||
void DevexecLog(char *op, char *device);
|
||||
#endif
|
||||
void DevexecLog(char *op, char *device);
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user