Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

lsfTaskDev.h

Go to the documentation of this file.
00001 #ifndef LSF_TASKDEV_H
00002 #define LSF_TASKDEV_H
00003 /*******************************************************************************
00004 * E.S.O. - VLT project
00005 *
00006 * "@(#) $Id: lsfTaskDev.h,v 1.101 2003/11/18 13:47:42 vltsccm Exp $"
00007 *
00008 * who       when        what
00009 * --------  ----------  ----------------------------------------------
00010 * pduhoux   2000-04-05  created
00011 */
00012 
00013 /************************************************************************
00014  *
00015  *----------------------------------------------------------------------
00016  */
00017 #include "lsfControl.h"
00018 
00019 typedef struct
00020 {
00021     lsfSTATE      state;
00022     lsfSUBSTATE   subState;
00023     vltLOGICAL    init;
00024     vltLOGICAL    simulation;
00025     vltINT32      timeout;          /* Timeout in system ticks     */
00026 
00027     lsfSTATE      startState;       /* Minimum state for schedule  */
00028     vltINT32      priority;         /* Task priority               */
00029     vltLOGICAL    ignoreStop;       /* True when stop ignored      */
00030     vltLOGICAL    first;            /* True when starting          */
00031     vltINT32      tcb,tid;          /* Task TCB for lccTaskLib     */
00032     SEM_ID        tmrSem;           /* Task timer semaphore        */
00033     void         *fctHook[3];       /* Task hooks Pro, Core, Epi   */
00034                                     /*  -> Core must exist         */
00035 } lsfTASKDEV_ENTRY;
00036 
00037 typedef struct
00038 {
00039     void              *ctrlData;
00040     void              *userData;
00041     lsfSTATE           state;
00042     lsfSUBSTATE        subState;
00043     vltLOGICAL         init;
00044     vltLOGICAL         simulation;
00045     vltINT32           timeout;          /* Timeout in system ticks     */
00046     vltINT32           numTaskDevs;
00047 
00048     vltBYTES20        *taskDevNames;
00049     char              *attrTable[lsfMAX_DEVICES+1];
00050     lsfTASKDEV_ENTRY  *taskDevTable[lsfMAX_DEVICES];
00051 } lsfTASKDEV_DATA;
00052 
00053 typedef ccsCOMPL_STAT lsfTASKDEV_HOOK ( IN  lsfTASKDEV_DATA *taskDevData, 
00054                 IN  const char      *taskDevName, 
00055                 OUT ccsERROR        *error);
00056 
00057 #define lsfTaskDevGetData(ptr) \
00058     (lsfTASKDEV_DATA *)lsfControlGetDevData((lsfCONTROL_DATA *)(((lsfCONTROL_DATA *)ptr)->ctrlData),lsfDEVICE_TASKDEV)
00059 #define lsfTaskDevGetUserData(ptr) \
00060     (lsfTaskDevGetData(ptr))->userData
00061 
00062 ccsCOMPL_STAT lsfTaskDevConstructor ( IN  const char      *swdName, 
00063               IN  lsfCONTROL_DATA *controlData,
00064               IN  const char      *taskDevNames[],
00065               OUT ccsERROR        *error );
00066 void          lsfTaskDevDestructor  ( IN  lsfCONTROL_DATA *controlData );
00067 
00068 ccsCOMPL_STAT lsfTaskDevInit      ( IN  lsfTASKDEV_DATA *taskDevData, 
00069             IN  const char      *taskDevName, 
00070             OUT ccsERROR        *error );
00071 ccsCOMPL_STAT lsfTaskDevStandby   ( IN  lsfTASKDEV_DATA *taskDevData, 
00072             IN  const char      *taskDevName, 
00073             OUT ccsERROR        *error );
00074 ccsCOMPL_STAT lsfTaskDevOnline    ( IN  lsfTASKDEV_DATA *taskDevData, 
00075             IN  const char      *taskDevName, 
00076             OUT ccsERROR        *error );
00077 ccsCOMPL_STAT lsfTaskDevStop      ( IN  lsfTASKDEV_DATA *taskDevData, 
00078             IN  const char      *taskDevName, 
00079             OUT ccsERROR        *error );
00080 ccsCOMPL_STAT lsfTaskDevOff       ( IN  lsfTASKDEV_DATA *taskDevData, 
00081             IN  const char      *taskDevName, 
00082             OUT ccsERROR        *error );
00083 ccsCOMPL_STAT lsfTaskDevExit      ( IN  lsfTASKDEV_DATA *taskDevData, 
00084             IN  const char      *taskDevName, 
00085             OUT ccsERROR        *error );
00086 ccsCOMPL_STAT lsfTaskDevSimulat   ( IN  lsfTASKDEV_DATA *taskDevData, 
00087             IN  const char      *taskDevName, 
00088             OUT ccsERROR        *error );
00089 ccsCOMPL_STAT lsfTaskDevStopsim   ( IN  lsfTASKDEV_DATA *taskDevData, 
00090             IN  const char      *taskDevName, 
00091             OUT ccsERROR        *error );
00092 ccsCOMPL_STAT lsfTaskDevSelftest  ( IN  lsfTASKDEV_DATA *taskDevData, 
00093             IN  const char      *taskDevName, 
00094             OUT ccsERROR        *error );
00095 ccsCOMPL_STAT lsfTaskDevTest      ( IN  lsfTASKDEV_DATA *taskDevData, 
00096             IN  const char      *taskDevName, 
00097             OUT ccsERROR        *error );
00098 ccsCOMPL_STAT lsfTaskDevTrigger   ( IN  lsfTASKDEV_DATA *taskDevData, 
00099             IN  const char      *taskDevName, 
00100             OUT ccsERROR        *error );
00101 STATUS        lsfTaskDevVerify    ( IN  lsfTASKDEV_DATA *taskDevData, 
00102             IN  const char      *taskDevName, 
00103             OUT ccsERROR        *error );
00104 
00105 #endif 

Generated on Wed Dec 3 14:52:14 2003 for ATCS API by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001