Exemplo n.º 1
0
        public bool GetPositionValues()
        {
            int navLib      = 0;
            int unhealthySV = 0;
            CNavLibOutputFix navLibOutputFix = null;

            string[] measRespCsv  = msgDecoded.DecodeMsg(this.MeasRespMsg);
            string[] setEphClkCsv = msgInputDecoded.DecodeInputMsg(this.EphClkMsg);
            if ((measRespCsv.Length == 0) || (this.EphClkMsg.Length == 0))
            {
                return(false);
            }
            int index = 2;

            this.TTBEphValues.nLastSV = Convert.ToByte(setEphClkCsv[index++]);
            int num4 = index;

            index = num4;
            try
            {
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph1, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph2, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph3, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph4, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph5, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph6, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph7, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph8, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph9, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph10, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph11, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph12, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph13, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph14, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph15, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph16, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph17, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph18, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph19, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph20, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph21, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph22, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph23, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph24, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph25, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph26, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph27, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph28, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph29, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph30, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph31, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph32, setEphClkCsv, ref index);
                this.SetEphValuesHelper(ref this.TTBEphValues.Eph33, setEphClkCsv, ref index);
            }
            catch
            {
            }
            index = 3;
            this.Ai3ResultValues.gpsMeasFlag = Convert.ToByte(measRespCsv[index++]);
            this.Ai3ResultValues.measErrStat = Convert.ToByte(measRespCsv[index++]);
            this.Ai3ResultValues.measWeek    = Convert.ToUInt16(measRespCsv[index++]);
            this.Ai3ResultValues.measTow     = Convert.ToUInt32(measRespCsv[index++]);
            this.Ai3ResultValues.measTimeAcc = Convert.ToByte(measRespCsv[index++]);
            this.Ai3ResultValues.measNumSv   = Convert.ToByte(measRespCsv[index++]);
            num4  = index;
            index = num4;
            try
            {
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info1, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info2, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info3, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info4, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info5, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info6, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info7, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info8, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info9, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info10, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info11, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info12, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info13, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info14, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info15, measRespCsv, ref index);
                this.SetMeasSVInfoHelper(ref this.Ai3ResultValues.measSV_Info16, measRespCsv, ref index);
            }
            catch
            {
            }
            this.NLcompute(ref this.AprValues, ref this.TTBEphValues, ref this.Ai3ResultValues, ref this.MeasConfigValues, navLib, ref navLibOutputFix, unhealthySV);
            return(true);
        }
Exemplo n.º 2
0
        public unsafe void NLcompute(ref APR aprPos, ref CTTBEph EphData, ref CAI3Results AI3Res, ref MeasConfig measConfig, int navLib, ref CNavLibOutputFix navLibOutputFix, int unhealthySV)
        {
            APR          apr        = aprPos;
            APR *        aprPtr     = &apr;
            CTTBEph      eph        = EphData;
            CTTBEph *    ephData    = &eph;
            CAI3Results  results    = AI3Res;
            CAI3Results *resultsPtr = &results;
            MeasConfig   config     = measConfig;
            MeasConfig * configPtr  = &config;

            navLibLSQ(aprPtr, ephData, resultsPtr, configPtr, navLib, ref navLibOutputFix, unhealthySV);
            aprPos     = apr;
            EphData    = eph;
            AI3Res     = results;
            measConfig = config;
        }
Exemplo n.º 3
0
 public static unsafe extern int navLibLSQ(APR* aprPos, CTTBEph* EphData, CAI3Results* AI3Res, MeasConfig* measConfig, int navLib, ref CNavLibOutputFix navLibOutputFix, int unhealthySV);
Exemplo n.º 4
0
 public static extern unsafe int navLibLSQ(APR *aprPos, CTTBEph *EphData, CAI3Results *AI3Res, MeasConfig *measConfig, int navLib, ref CNavLibOutputFix navLibOutputFix, int unhealthySV);
Exemplo n.º 5
0
 public unsafe void NLcompute(ref APR aprPos, ref CTTBEph EphData, ref CAI3Results AI3Res, ref MeasConfig measConfig, int navLib, ref CNavLibOutputFix navLibOutputFix, int unhealthySV)
 {
     APR apr = aprPos;
     APR* aprPtr = &apr;
     CTTBEph eph = EphData;
     CTTBEph* ephData = &eph;
     CAI3Results results = AI3Res;
     CAI3Results* resultsPtr = &results;
     MeasConfig config = measConfig;
     MeasConfig* configPtr = &config;
     navLibLSQ(aprPtr, ephData, resultsPtr, configPtr, navLib, ref navLibOutputFix, unhealthySV);
     aprPos = apr;
     EphData = eph;
     AI3Res = results;
     measConfig = config;
 }