Exemplo n.º 1
0
        public List <float> MeasureDarkCurrent(int Idx, bool closeShutter, bool openShutter)//20170220
        {
            List <float> myWL = new List <float>();

            if (Idx < 0)
            {
                return(myWL);
            }

            //lock (lockCAS)
            //{
            //    int pixCnt = (int)Math.Round(CAS4DLL.casGetDeviceParameter(dev[Idx].devHandle, CAS4DLL.dpidVisiblePixels));

            //    int Dpix = (int)Math.Round(CAS4DLL.casGetDeviceParameter(dev[Idx].devHandle, CAS4DLL.dpidDeadPixels));

            //    for (int i = 0; i < pixCnt; i++)
            //    {
            //        //get the wavelengths; don't forget about skipping dead pixels
            //        myWL.Add((float)CAS4DLL.casGetXArray(dev[Idx].devHandle, i + Dpix));
            //    }
            //}
            lock (lockCAS)
            {
                if (closeShutter)
                {
                    CAS4DLL.casSetShutter(dev[Idx].devHandle, 1);
                }
                CAS4DLL.casMeasureDarkCurrent(dev[Idx].devHandle);
                if (openShutter)
                {
                    CAS4DLL.casSetShutter(dev[Idx].devHandle, 0);
                }
            }


            return(myWL);
        }