00001 #ifndef agwsCON_ADAPTER_NTT_H
00002 #define agwsCON_ADAPTER_NTT_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef __cplusplus
00027 #error This is a C++ include file and cannot be used from plain C
00028 #endif
00029
00030 #include "agwsCON_SERVER.h"
00031 #include "agwsCON_ADAPTER.h"
00032
00033 class agwsCON_ADAPTER_NTT : public agwsCON_ADAPTER
00034 {
00035 public:
00036 agwsCON_ADAPTER_NTT(const dbSYMADDRESS dbPoint, agwsCON_CAT &gsCatt, agwsCON_SERVER &agServer);
00037
00038 virtual evhCB_COMPL_STAT ProbeAbsCB(msgMESSAGE &msg, agwsCMD_HANDLER &handler);
00039 virtual evhCB_COMPL_STAT ProbeCenterCB(msgMESSAGE &msg, agwsCMD_HANDLER &handler);
00040 virtual evhCB_COMPL_STAT ProbeParkCB(msgMESSAGE &msg, agwsCMD_HANDLER &handler);
00041 virtual evhCB_COMPL_STAT ProbeStopCB(msgMESSAGE &msg, agwsCMD_HANDLER &handler);
00042 virtual evhCB_COMPL_STAT OffsetAdCB(msgMESSAGE &msg, agwsCMD_HANDLER &handler);
00043 virtual evhCB_COMPL_STAT OffsetXyCB(msgMESSAGE &msg, agwsCMD_HANDLER &handler);
00044
00045 virtual vltLOGICAL CheckProbePos(vltDOUBLE alpha,
00046 vltDOUBLE delta,
00047 vltLOGICAL usedMargin,
00048 vltDOUBLE rotAngle );
00049
00050 protected:
00051
00052 ccsCOMPL_STAT GetProbePosDB(vltDOUBLE *probeX,
00053 vltDOUBLE *probeY);
00054
00055 ccsCOMPL_STAT GetProbeNameDB(char * probeName);
00056
00057 ccsCOMPL_STAT GetProbeCenterDB(char *probeName,
00058 vltDOUBLE *centerX,
00059 vltDOUBLE *centerY);
00060
00061 ccsCOMPL_STAT GetProbeVignetDB(char *probeName,
00062 vltDOUBLE *minX,
00063 vltDOUBLE *maxX,
00064 vltDOUBLE *minY,
00065 vltDOUBLE *maxY);
00066
00067 ccsCOMPL_STAT DiffRefPosAndGs(vltDOUBLE gsRaInRad,
00068 vltDOUBLE gsDecInRad,
00069 vltDOUBLE *diffRaInMm,
00070 vltDOUBLE *diffDecInMm);
00071
00072 ccsCOMPL_STAT ComputeProbePos(char *probe,
00073 vltDOUBLE diffRaInMm,
00074 vltDOUBLE diffDecInMm,
00075 vltLOGICAL marginUsed,
00076 vltDOUBLE rotAngle,
00077 vltDOUBLE centerX,
00078 vltDOUBLE centerY,
00079 vltDOUBLE *probeX,
00080 vltDOUBLE *probeY,
00081 vltLOGICAL *legalPos
00082 );
00083
00084 ccsCOMPL_STAT ConvertProbePos(vltDOUBLE alpha,
00085 vltDOUBLE delta,
00086 vltLOGICAL marginUsed,
00087 vltDOUBLE rotAngle,
00088 vltDOUBLE *probeX,
00089 vltDOUBLE *probeY,
00090 vltLOGICAL *legalPos
00091 );
00092
00093 ccsCOMPL_STAT GetRotOffsetDB(vltDOUBLE *rotOffset);
00094
00095 ccsCOMPL_STAT OffsAdParamShuffle (char *buffer, vltLOGICAL *legalPos);
00096 ccsCOMPL_STAT OffsXyParamShuffle (char *buffer, vltLOGICAL *legalPos);
00097 ccsCOMPL_STAT ProbeAbsParamShuffle(char *buffer, vltLOGICAL *legalPos);
00098
00099 private:
00100 };
00101
00102 #endif // !agwsCON_ADAPTER_NTT_H
00103
00104