00001 #ifndef PROBE_DEVICES_H
00002 #define PROBE_DEVICES_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include "acm.h"
00017
00021
00022 typedef ccsCOMPL_STAT (probeGET_RTHETA) (vltDOUBLE *r, vltDOUBLE *theta,
00023 ccsERROR *error);
00024
00033 void probeDevicesInstallGetRTheta(probeGET_RTHETA *f);
00034
00040 probeGET_RTHETA probeDevicesGetRTheta;
00041
00042
00043
00044 typedef ccsCOMPL_STAT (probeGET_POSERR) (vltDOUBLE *posError,
00045 ccsERROR *error);
00046
00053 void probeDevicesInstallGetPosErr(probeGET_POSERR *f);
00054
00060 probeGET_POSERR probeDevicesGetPosErr;
00061
00062
00063
00064 typedef ccsCOMPL_STAT (probeSET_PROBE) (const vltDOUBLE r, const vltDOUBLE theta,
00065 const acmSEND_REFS_SET_POINTS setPoints,
00066 const ccsTIMEVAL timeStamp,
00067 ccsERROR *error);
00068
00081 void probeDevicesInstallSetProbe(probeSET_PROBE *f);
00082
00088 probeSET_PROBE probeDevicesSetProbe;
00089
00090
00091
00092 typedef ccsCOMPL_STAT (probePARK_PROBE) (const vltDOUBLE r, const vltDOUBLE theta,
00093 const acmSEND_REFS_SET_POINTS setPoints,
00094 const ccsTIMEVAL timeStamp,
00095 const vltDOUBLE telAzDeg,
00096 ccsERROR *error);
00097
00108 void probeDevicesInstallParkProbe(probePARK_PROBE *f);
00109
00110
00111
00112 typedef ccsCOMPL_STAT (probeUSER_OFFSET) (const vltDOUBLE xOffset,
00113 const vltDOUBLE yOffset,
00114 const vltLOGICAL tracking,
00115 ccsERROR *error);
00116
00127 void probeDevicesInstallUserOffsetProbe(probeUSER_OFFSET *f);
00128
00129 probeUSER_OFFSET probeDevicesUserOffsetProbe;
00130
00136 probePARK_PROBE probeDevicesParkProbe;
00137
00138
00139
00140 typedef ccsCOMPL_STAT (probeVIGNETTING_CHECK) (const vltDOUBLE r,
00141 const vltDOUBLE theta,
00142 vltLOGICAL *isVignetting,
00143 ccsERROR *error);
00144
00153 void probeDevicesInstallVignettingCheck(probeVIGNETTING_CHECK *f);
00154
00160 probeVIGNETTING_CHECK probeDevicesVignettingCheck;
00161
00162
00163
00164 typedef ccsCOMPL_STAT (probeCHECK_IN_FIELD) (const vltDOUBLE r,
00165 const vltDOUBLE theta,
00166 vltLOGICAL *isInField,
00167 ccsERROR *error);
00168
00177 void probeDevicesInstallCheckInField(probeCHECK_IN_FIELD *f);
00178
00184 probeCHECK_IN_FIELD probeDevicesCheckInField;
00185
00186
00187
00188 typedef ccsCOMPL_STAT (probeCALC_NO_TRK) (ccsERROR *error);
00189
00196 void probeDevicesInstallCalcNoTrk(probeCALC_NO_TRK *f);
00197
00202 probeCALC_NO_TRK probeDevicesCalcNoTrk;
00203
00204
00205
00206 typedef ccsCOMPL_STAT probeCALC_REM_TRK_TIME (
00207 const vltDOUBLE ra,
00208 const vltDOUBLE decl,
00209 const vltDOUBLE lowLim,
00210 const vltDOUBLE highLim,
00211 const vltDOUBLE siderealTime,
00212 const vltDOUBLE lat,
00213 vltDOUBLE *remTime,
00214 ccsERROR *error
00215 );
00227 void probeDevicesInstallCalcRemTrkTime (probeCALC_REM_TRK_TIME *f);
00228
00229
00230 probeCALC_REM_TRK_TIME probeDevicesCalcRemTrkTime;
00231
00232
00233
00234 typedef ccsCOMPL_STAT (probeSET_UVW) (const vltDOUBLE u,
00235 const vltDOUBLE v,
00236 const vltDOUBLE w,
00237 const vltLOGICAL tracking,
00238 const vltLOGICAL moveRel,
00239 ccsERROR *error);
00240
00253 void probeDevicesInstallSetUVW(probeSET_UVW *f);
00254
00260 probeSET_UVW probeDevicesSetUVW;
00261
00262
00263
00264 typedef ccsCOMPL_STAT (probeUPDATE) (ccsERROR *error);
00265
00271 void probeDevicesInstallUpdate(probeUPDATE *f);
00272
00278 probeUPDATE probeDevicesUpdate;
00279
00282 #endif