Exemple #1
0
        private bool Getdata(int Idx, ref avaspec.PixelArrayType l_pSpectrum)
        {
            uint     l_Time         = 0;
            int      res            = -1;
            DateTime st_time        = DateTime.Now;
            TimeSpan time_span      = DateTime.Now - st_time;
            double   timeOutMillSec = dev[Idx].Config.m_IntegrationTime * dev[Idx].Config.m_NrAverages + 100;

            do
            {
                Thread.Sleep(100);
                res       = (int)avaspec.AVS_PollScan((IntPtr)dev[Idx].devHandle);
                time_span = DateTime.Now - st_time;
                if (time_span.TotalMilliseconds > timeOutMillSec)
                {
                    return(false);
                }
            } while (res <= 0);

            lock (lockAvantes)
            {
                avaspec.AVS_GetScopeData((IntPtr)dev[Idx].devHandle, ref l_Time, ref l_pSpectrum);
            }
            return(true);
        }
Exemple #2
0
        private void Results_Load(object sender, EventArgs e)
        {
            mWavelengths = MainWindow.mExperiments[0].mSpectra[0].mWaveLengths;

            double averageWlDelta = mWavelengths.Value[mWavelengths.Value.Length - 1] - mWavelengths.Value[mWavelengths.Value.Length - 2];

            averageWlDelta *= 2;

            nudMaterialRangeTo.Minimum   = (decimal)mWavelengths.Value.First();
            nudMaterialRangeTo.Maximum   = (decimal)mWavelengths.Value.Last();
            nudMaterialRangeTo.Value     = nudMaterialRangeTo.Maximum;
            nudMaterialRangeTo.Increment = (decimal)averageWlDelta;

            nudMaterialRangeFrom.Minimum   = (decimal)mWavelengths.Value.First();
            nudMaterialRangeFrom.Maximum   = (decimal)mWavelengths.Value.Last();
            nudMaterialRangeFrom.Value     = nudMaterialRangeFrom.Minimum;
            nudMaterialRangeFrom.Increment = (decimal)averageWlDelta;

            nudMatrixRangeTo.Minimum   = (decimal)mWavelengths.Value.First();
            nudMatrixRangeTo.Maximum   = (decimal)mWavelengths.Value.Last();
            nudMatrixRangeTo.Value     = nudMatrixRangeTo.Maximum;
            nudMatrixRangeTo.Increment = (decimal)averageWlDelta;

            nudMatrixRangeFrom.Minimum   = (decimal)mWavelengths.Value.First();
            nudMatrixRangeFrom.Maximum   = (decimal)mWavelengths.Value.Last();
            nudMatrixRangeFrom.Value     = nudMatrixRangeFrom.Minimum;
            nudMatrixRangeFrom.Increment = (decimal)averageWlDelta;

            MatrixRanges.DisplayMember           = "ShortName";
            MaterialRanges.DisplayMember         = "ShortName";
            ExistingMatrixRanges.DisplayMember   = "ShortName";
            ExistingMaterialRanges.DisplayMember = "ShortName";
        }
Exemple #3
0
        public List <float> GetCount(int Idx)
        {
            StartMeasure(Idx);

            avaspec.PixelArrayType l_pSpectrum = new avaspec.PixelArrayType();
            Getdata(Idx, ref l_pSpectrum);

            List <float> myCnt = new List <float>();

            for (int i = 0; i < l_pSpectrum.Value.Length; i++)
            {
                myCnt.Add((float)l_pSpectrum.Value[i]);
            }

            return(myCnt);
        }
Exemple #4
0
        public List <float> GetWaveLength(int Idx)
        {
            List <float> myWL = new List <float>();

            avaspec.PixelArrayType m_Lambda = new avaspec.PixelArrayType();
            if (avaspec.ERR_SUCCESS == (int)avaspec.AVS_GetLambda((IntPtr)dev[Idx].devHandle, ref m_Lambda))
            {
                for (int i = 0; i < m_Lambda.Value.Length; i++)
                {
                    myWL.Add((float)m_Lambda.Value[i]);
                }
                return(myWL);
            }
            else
            {
                return(null);// fail
            }
        }