00001 #ifndef tcsCON_SUBSYSTEM_H 00002 #define tcsCON_SUBSYSTEM_H 00003 /****************************************************************************** 00004 * E.S.O. - VLT project 00005 * 00006 * "@(#) $Id: tcsCON_SUBSYSTEM.h,v 1.136 2003/11/27 15:10:06 vltsccm Exp $" 00007 * 00008 * who when what 00009 * -------- -------- -------------------------------------------------------- 00010 * rkarban 2002-03-12 created from chopwsCON_SUB_SYSTEM 00011 */ 00012 00013 /****************************************************************************** 00014 * Declaration of class tcsCON_SUBSYSTEM. 00015 *----------------------------------------------------------------------------- 00016 */ 00017 00018 #ifndef __cplusplus 00019 #error This is a C++ include file and cannot be used from plain C 00020 #endif 00021 00022 #include "tcs.h" 00023 #include "tcsCMD_TRANSFER.h" 00024 #include <tcsSTATE.h> 00025 #include <evhCOMMAND.h> 00026 00027 class tcsCON_SUBSYSTEM : public tcsSTATE 00028 { 00029 public: 00030 tcsCON_SUBSYSTEM(const dbSYMADDRESS dbState, const dbSYMADDRESS dbSubsystem); 00031 virtual ~tcsCON_SUBSYSTEM(); 00032 00033 virtual ccsCOMPL_STAT Init(); 00034 virtual const char *LcuEnvName(); 00035 virtual vltINT32 Timeout(); 00036 virtual const char *LcuServer(); 00037 00038 virtual ccsCOMPL_STAT Stop(tcsCMD_HANDLER *); 00039 virtual ccsCOMPL_STAT Stop(fndOBJECT *obj, 00040 evhCB_METHOD reply, 00041 evhCB_METHOD errReply, 00042 evhCB_METHOD timeout = NULL, 00043 void *udata = NULL); 00044 00045 protected: 00046 virtual ccsCOMPL_STAT SendStop(); 00047 virtual evhCB_COMPL_STAT StopReplyCB(msgMESSAGE &msg, void *); 00048 virtual evhCB_COMPL_STAT StopErrorCB(msgMESSAGE &msg, void *); 00049 virtual evhCB_COMPL_STAT StopTimeoutCB(msgMESSAGE &msg, void *); 00050 virtual void Clear(); 00051 00052 private: 00053 dbSYMADDRESS dbPoint; // DB TRANSFER point 00054 tcsCMD_TRANSFER **objList; // array of pointers to hosted transfer objects 00055 vltINT32 objCount; // number of hosted transfer command objects 00056 ccsENVNAME lcuEnvName; 00057 ccsPROCNAME lcuServer; 00058 vltINT32 timeout; 00059 evhCOMMAND stopCommand; 00060 tcsCMD_HANDLER *stopHandler; 00061 }; 00062 00063 #endif // !tcsCON_SUBSYSTEM_H