00001 #ifndef asmTCS_INTERFACE_H 00002 #define asmTCS_INTERFACE_H 00003 /******************************************************************************* 00004 * E.S.O. - VLT project 00005 * 00006 * "@(#) $Id: asmTCS_INTERFACE.h,v 5.26 2003/01/02 17:44:41 vltsccm Exp $" 00007 * 00008 * who when what 00009 * -------- -------- ---------------------------------------------- 00010 * ramestic 25/05/98 created 00011 */ 00012 00013 /************************************************************************ 00014 * 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 <eccs.h> // parent class 00023 #include "asm.h" // used header 00024 #include "asmDATA.h" // used class 00025 00026 typedef struct 00027 { 00028 // from Dimm: 00029 vltDOUBLE Seeing; // [arcsec] 00030 asmDATA_QUALITY_t SeeingQuality; 00031 vltDOUBLE Tau0; // [s] 00032 asmDATA_QUALITY_t Tau0Quality; 00033 vltDOUBLE Theta0; // [arcsec] 00034 asmDATA_QUALITY_t Theta0Quality; 00035 vltDOUBLE Rflrms; // [ratio] 00036 asmDATA_QUALITY_t RflrmsQuality; 00037 vltDOUBLE Airmass; // [0/1] 00038 vltDOUBLE Wavelength; // [m] 00039 00040 // from Meteo: 00041 vltDOUBLE Temperature; // [Celsius] 00042 vltDOUBLE DewTemperature; // [Celsius] 00043 vltDOUBLE Humidity; // [%] (0 - 100) 00044 vltDOUBLE Pressure; // [hPa] 00045 vltDOUBLE WindSpeed; // [m/s] 00046 vltDOUBLE WindDirection; // [deg] (0 - 360) (0 = north, 90 = east) 00047 vltDOUBLE TempLapseRate; // [K/m] 00048 } asmTCS_DATA_t; 00049 00050 class asmTCS_INTERFACE: public eccsERROR_CLASS 00051 { 00052 public: 00053 asmTCS_INTERFACE(ccsENVNAME environment = asmENVIRONMENT); 00054 ~asmTCS_INTERFACE(); 00055 ccsCOMPL_STAT Get(asmTCS_DATA_t &data); 00056 00057 private: 00058 asmDATA *asmDataDimm; 00059 asmDATA *asmDataMeteo; 00060 int site; 00061 }; 00062 00063 // macros for ASM site: 00064 #define asmSITE_UNDEFINED 0 00065 #define asmSITE_PARANAL 1 00066 #define asmSITE_LASILLA 2 00067 00068 // value for an invalid sensor 00069 #define asmINV_SENSOR -999 00070 00071 #endif