00001 #ifndef chopwsACCESS_H 00002 #define chopwsACCESS_H 00003 /***************************************************************************** 00004 * E.S.O. - VLT project 00005 * 00006 * "@(#) $Id: chopwsACCESS.h,v 1.63 2003/11/12 09:04:01 vltsccm Exp $" 00007 * 00008 * who when what 00009 * -------- -------- ------------------------------------------------------- 00010 * gchiozzi 01/09/98 Added DbPoint() methods and packed constructors in one. 00011 * rkarban 26/05/97 created 00012 */ 00013 00014 /***************************************************************************** 00015 * Definition of class chopwsACCESS 00016 *---------------------------------------------------------------------------- 00017 */ 00018 00019 #ifndef __cplusplus 00020 #error This is a C++ include file and cannot be used from plain C 00021 #endif 00022 00023 #include "chopws.h" 00024 00025 typedef enum {chopwsMP_OFF, chopwsMP_ON} chopwsMIRROR_PHASE; 00026 00027 class chopwsACCESS : public fndOBJECT, public eccsERROR_CLASS 00028 { 00029 public: 00030 chopwsACCESS(const dbSYMADDRESS dbRoot = dbEMPTY); 00031 virtual ~chopwsACCESS(); 00032 00033 ccsTIMEVAL ChopExpStart(ccsTIMEVAL propTime, chopwsMIRROR_PHASE phase); 00034 ccsTIMEVAL ChopExpLen(ccsTIMEVAL propLen, chopwsMIRROR_PHASE phase); 00035 vltDOUBLE ChopExpFreq(vltDOUBLE propFreq); 00036 ccsTIMEVAL ChopWin(chopwsMIRROR_PHASE phase); 00037 00038 const char *StartTime(); 00039 ccsTIMEVAL StartTimeCcs(); 00040 const char *StopTime(); 00041 ccsTIMEVAL StopTimeCcs(); 00042 00043 vltDOUBLE Freq(); 00044 vltDOUBLE Throw(); 00045 vltINT32 PosOptImage(); 00046 vltDOUBLE PeakValleyRatio(); 00047 vltINT32 TelPointingAxis(); 00048 vltINT32 Guide(); 00049 vltDOUBLE PosAng(); 00050 vltDOUBLE OffsetChop(); 00051 00052 vltLOGICAL Scheduled(); 00053 00054 virtual ccsCOMPL_STAT DbPoint(const dbSYMADDRESS point); 00055 virtual const char *DbPoint() const; 00056 00057 private: 00058 ccsCOMPL_STAT CreateObjects(); 00059 00060 dbSYMADDRESS dbPoint; // class DB support point 00061 dbSYMADDRESS dbPointSetup; // class DB Setup support point 00062 00063 eccsDB_DOUBLE *freq; 00064 eccsDB_DOUBLE *chopThrow; 00065 eccsDB_INT32 *posOptImage; 00066 eccsDB_DOUBLE *peakValleyRatio; 00067 eccsDB_STRING *startTime; 00068 eccsDB_STRING *stopTime; 00069 eccsDB_INT32 *telPointingAxis; 00070 eccsDB_INT32 *guide; 00071 eccsDB_DOUBLE *posAng; 00072 eccsDB_DOUBLE *offsetChop; 00073 eccsDB_LOGICAL *scheduled; 00074 }; 00075 00076 #endif