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

prsSEQ_MAIN_TASK.h

Go to the documentation of this file.
00001 #ifndef prsSEQ_MAIN_TASK_H
00002 #define prsSEQ_MAIN_TASK_H
00003 /*******************************************************************************
00004 * E.S.O. - VLT project
00005 *
00006 * "@(#) $Id: prsSEQ_MAIN_TASK.h,v 1.109 2003/11/12 08:55:21 vltsccm Exp $"
00007 *
00008 * who       when      what
00009 * --------  --------  ----------------------------------------------
00010 * gchiozzi  05/09/97  Added checkSetupFile
00011 * gchiozzi  04/09/97  Removed MARK command
00012 * gchiozzi  02/08/96  Added method to reject commands when state is not ONLINE
00013 * gchiozzi  31/07/96  Added OnlineCB
00014 * gchiozzi  22/05/96  Removed callbacks for obsolete commands
00015 * gchiozzi  28/04/95  created
00016 */
00017 
00018 /************************************************************************
00019  *
00020  *----------------------------------------------------------------------
00021  */
00022 
00023 #ifndef __cplusplus
00024 #error This is a C++ include file and cannot be used from plain C
00025 #endif
00026 
00027 #include "prs.h"
00028 #include "evhDB_TASK.h"
00029 #include "evhSTD_COMMANDS.h"
00030 #include "evhDB_COMMAND.h"
00031 
00032 /* Defines */
00033 
00034 #define  prsNOMOVE                 0
00035 #define  prsMOVE                   1
00036 
00037 
00038 class prsSEQ_MAIN_TASK : public evhDB_TASK
00039 {
00040   public:
00041     prsSEQ_MAIN_TASK(const dbSYMADDRESS  dbPoint);
00042    ~prsSEQ_MAIN_TASK();
00043 
00044     // Callbacks for public commands
00045     virtual evhCB_COMPL_STAT CenterObjCB(msgMESSAGE &msg, void *udata);
00046     virtual evhCB_COMPL_STAT ClearReadySetupCB(msgMESSAGE &msg, void *udata);
00047 
00048     virtual evhCB_COMPL_STAT PrsAltAzCB(msgMESSAGE &msg, void *udata);
00049     virtual evhCB_COMPL_STAT PrsCoordCB(msgMESSAGE &msg, void *udata);
00050     virtual evhCB_COMPL_STAT PrsNamedPosCB(msgMESSAGE &msg, void *udata);
00051     virtual evhCB_COMPL_STAT SetupCB(msgMESSAGE &msg, void *udata);
00052     virtual evhCB_COMPL_STAT StopCB(msgMESSAGE &msg, void *udata);
00053     virtual evhCB_COMPL_STAT SaveCurrSetupCB(msgMESSAGE &msg, void *udata);
00054     virtual evhCB_COMPL_STAT SaveReadySetupCB(msgMESSAGE &msg, void *udata);
00055 
00056     // Overloading of inherited commands
00057     virtual evhCB_COMPL_STAT ExitCB(msgMESSAGE &msg, void *udata);
00058     virtual evhCB_COMPL_STAT InitCB(msgMESSAGE &msg, void *udata);
00059     virtual evhCB_COMPL_STAT OnlineCB(msgMESSAGE &msg, void *udata);
00060 
00061     ccsCOMPL_STAT    Init();
00062     ccsCOMPL_STAT    Recover();
00063 
00064   protected:
00065     virtual evhCB_COMPL_STAT Execute(msgMESSAGE &msg,
00066              vltLOGICAL moveFlag=prsMOVE);
00067     virtual evhCB_COMPL_STAT ExeReadyCB(msgMESSAGE &msg, void *udata);
00068     virtual evhCB_COMPL_STAT ExeErrorCB(msgMESSAGE &msg, void *udata);
00069 
00070     virtual evhCB_COMPL_STAT StopOKCB(msgMESSAGE &msg, void *udata);
00071     virtual evhCB_COMPL_STAT StopErrorCB(msgMESSAGE &msg, void *udata);
00072 
00073     ccsCOMPL_STAT RejectIfNotOnline(msgMESSAGE &msg, vltLOGICAL *rejected);
00074 
00075     oslxSETUP      *readySetupFile;
00076     oslxSETUP      *checkSetupFile;
00077     evhDB_COMMAND   stopCmd;
00078     evhDB_COMMAND   presetCmd;
00079 
00080   private:
00081     msgMESSAGE      stopMsg;  
00082     msgMESSAGE      setupMsg; 
00083 
00084     // Configuration parameters (read from DB) in Init():
00085     vltBYTES64   readySetup;
00086     vltBYTES64   defaultSetup;
00087     vltBYTES64   currentSetup;
00088     vltBYTES64   setupDictionary;
00089     vltBYTES64   setupAliasTable;
00090     vltINT32     readyTimeout;
00091     vltINT32     stopTimeout;
00092 };
00093 
00094 
00095 #endif 

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