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

mswMOD_LIST_MANAGER.h

Go to the documentation of this file.
00001 #ifndef mswMOD_LIST_MANAGER_H
00002 #define mswMOD_LIST_MANAGER_H
00003 /*******************************************************************************
00004 * E.S.O. - VLT project
00005 *
00006 * "@(#) $Id: mswMOD_LIST_MANAGER.h,v 1.115 2003/11/12 14:33:36 vltsccm Exp $"
00007 *
00008 * who       when      what
00009 * --------  --------  ----------------------------------------------
00010 * gchiozzi  04/04/97  Removed _CACHE subclasses
00011 * gchiozzi  28/06/96  Now inherits from evhDB_CMD_SERIAL
00012 * gchiozzi  27/06/96  Added phase mode to SendAll()
00013 * awalland  22/05/96  Replaced GetAddrVector with GetRequiredModules
00014 * mverola   03/04/96  Added CheckReqModState, UpdateReqModList
00015 *                     Changed GetStateVector into GetAddrVector
00016 * awalland  10/08/94  moved methods to MOD_LIST_COMMAND and MOD_LIST
00017 * gchiozzi  30/03/95  created
00018 */
00019 
00020 /************************************************************************
00021  *
00022  *----------------------------------------------------------------------
00023  */
00024 #ifndef __cplusplus
00025 #error This is a C++ include file and cannot be used from plain C
00026 #endif
00027 
00028 #include "msw.h"
00029 #include "evhDB_CMD_SERIAL.h"
00030 #include "mswMOD_LIST_COMMAND.h"
00031 #include "mswMOD_LIST.h"
00032 
00033 class mswMOD_LIST_MANAGER : public evhDB_CMD_SERIAL
00034 {
00035   public:
00036     mswMOD_LIST_MANAGER();
00037     mswMOD_LIST_MANAGER(const dbSYMADDRESS  dbPoint);
00038     ~mswMOD_LIST_MANAGER();
00039 
00040     ccsCOMPL_STAT             SendAll(msgMESSAGE &msg, 
00041               const vltINT8 phase = mswSEND_NO_PHASE,
00042               const vltINT8 mode  = mswSEND_REQUIRED,
00043               const vltINT8 focus = 0);
00044     ccsCOMPL_STAT             UpdateCallbacks();
00045 
00046     const mswMOD_RECORD_ARRAY &GetRequiredModules();
00047 
00048     //MVE added
00049     vltLOGICAL               CheckReqModState(vltINT32 stateToCheck);
00050     ccsCOMPL_STAT            UpdateReqModList(vltINT8 oldFocus,
00051                                               vltINT8 newFocus);
00052 
00053     ccsCOMPL_STAT DisableModulesListEvent();
00054     ccsCOMPL_STAT EnableModulesListEvent();
00055 
00056   protected:
00057     virtual evhCB_COMPL_STAT ListChangedCB(evtEVENT_MSG &msg, void *udata);
00058     virtual evhCB_COMPL_STAT UnitStateChangedCB(evtEVENT_MSG &msg, void *udata);
00059 
00060   private:
00061     ccsCOMPL_STAT            ConstructorInit();
00062     ccsCOMPL_STAT            TriggerEvaluation(vltINT8 whatToTrigger);
00063 
00064     evtEVENT                 evt;  
00065     evtEVENT                 unitEvent[mswNO_OF_MODULES];  
00066     
00067     mswMOD_LIST             *modList;
00068     
00069     dbSYMADDRESS             modPoint;    
00070 };
00071 
00072 #endif 

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