示例#1
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="masicOptions"></param>
        /// <param name="peakFinder"></param>
        /// <param name="parentIonProcessor"></param>
        protected clsDataImport(
            clsMASICOptions masicOptions,
            MASICPeakFinder.clsMASICPeakFinder peakFinder,
            clsParentIonProcessing parentIonProcessor,
            clsScanTracking scanTracking)
        {
            mOptions            = masicOptions;
            mPeakFinder         = peakFinder;
            mParentIonProcessor = parentIonProcessor;
            mScanTracking       = scanTracking;

            mDatasetFileInfo = new DatasetFileInfo();

            mInterferenceCalculator = new InterDetect.InterferenceCalculator();

            mInterferenceCalculator.StatusEvent  += OnStatusEvent;
            mInterferenceCalculator.ErrorEvent   += OnErrorEvent;
            mInterferenceCalculator.WarningEvent += InterferenceWarningEventHandler;

            mCachedPrecursorIons = new List <InterDetect.Peak>();
            mCachedPrecursorScan = 0;

            mIsolationWidthNotFoundCount = 0;
            mPrecursorNotFoundCount      = 0;
        }
示例#2
0
 public clsDataImportMGFandCDF(
     clsMASICOptions masicOptions,
     MASICPeakFinder.clsMASICPeakFinder peakFinder,
     clsParentIonProcessing parentIonProcessor,
     clsScanTracking scanTracking)
     : base(masicOptions, peakFinder, parentIonProcessor, scanTracking)
 {
 }
示例#3
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="masicOptions"></param>
 /// <param name="peakFinder"></param>
 /// <param name="parentIonProcessor"></param>
 /// <param name="scanTracking"></param>
 public clsDataImportThermoRaw(
     clsMASICOptions masicOptions,
     clsMASICPeakFinder peakFinder,
     clsParentIonProcessing parentIonProcessor,
     clsScanTracking scanTracking)
     : base(masicOptions, peakFinder, parentIonProcessor, scanTracking)
 {
 }
示例#4
0
        public void TestFilterData()
        {
            const int MAX_ALLOWABLE_ION_COUNT = 2000;

            var options      = new clsMASICOptions(string.Empty, string.Empty);
            var peakFinder   = new MASICPeakFinder.clsMASICPeakFinder();
            var reporterIons = new clsReporterIons();

            var parentIonProcessor = new clsParentIonProcessing(reporterIons);
            var scanTracking       = new clsScanTracking(reporterIons, peakFinder);

            var dataImportUtilities = new MASIC.DataInput.clsDataImportThermoRaw(options, peakFinder, parentIonProcessor, scanTracking);

            var mReporterIons = new clsReporterIons();

            var msSpectrum = new clsMSSpectrum(1000);

            for (var mz = 500.0; mz < 1000; mz += 0.1)
            {
                msSpectrum.IonsMZ.Add(mz);
                msSpectrum.IonsIntensity.Add(100 + Math.Sin(mz / 10) * 50 - Math.Abs(750 - mz) / 10);
            }

            dataImportUtilities.DiscardDataToLimitIonCount(msSpectrum,
                                                           mReporterIons.MZIntensityFilterIgnoreRangeStart,
                                                           mReporterIons.MZIntensityFilterIgnoreRangeEnd,
                                                           MAX_ALLOWABLE_ION_COUNT);

            var pointsToCheck = new Dictionary <int, KeyValuePair <double, double> >
            {
                { 0, new KeyValuePair <double, double>(508.500, 103.43985) },
                { 10, new KeyValuePair <double, double>(509.500, 107.56497) },
                { 250, new KeyValuePair <double, double>(574.500, 121.65772) },
                { 500, new KeyValuePair <double, double>(637.800, 129.39681) },
                { 750, new KeyValuePair <double, double>(698.500, 128.37793) },
                { 1000, new KeyValuePair <double, double>(756.800, 113.22312) },
                { 1500, new KeyValuePair <double, double>(841.500, 122.01680) },
                { 1999, new KeyValuePair <double, double>(968.600, 103.38958) }
            };

            foreach (var item in pointsToCheck)
            {
                var index = item.Key;
                Console.WriteLine(
                    "Data point {0,4}: {1:F4} m/z, {2:F4} counts",
                    item.Key, msSpectrum.IonsMZ[index], msSpectrum.IonsIntensity[index]);

                Assert.AreEqual(item.Value.Key, msSpectrum.IonsMZ[index], 0.00001);
                Assert.AreEqual(item.Value.Value, msSpectrum.IonsIntensity[index], 0.00001);
            }
        }