diff --git a/App.config b/App.config
new file mode 100644
index 0000000..489d582
--- /dev/null
+++ b/App.config
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/FT1ScanDemo.png b/FT1ScanDemo.png
new file mode 100644
index 0000000..07eaea6
Binary files /dev/null and b/FT1ScanDemo.png differ
diff --git a/FT1ScanDemo.psd b/FT1ScanDemo.psd
new file mode 100644
index 0000000..cf83b4f
Binary files /dev/null and b/FT1ScanDemo.psd differ
diff --git a/FT2ScanDemo.png b/FT2ScanDemo.png
new file mode 100644
index 0000000..ff7c718
Binary files /dev/null and b/FT2ScanDemo.png differ
diff --git a/FT2ScanDemo.psd b/FT2ScanDemo.psd
new file mode 100644
index 0000000..682b1e0
Binary files /dev/null and b/FT2ScanDemo.psd differ
diff --git a/FodyWeavers.xml b/FodyWeavers.xml
new file mode 100644
index 0000000..f1dea8f
--- /dev/null
+++ b/FodyWeavers.xml
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/FodyWeavers.xsd b/FodyWeavers.xsd
new file mode 100644
index 0000000..ff119f7
--- /dev/null
+++ b/FodyWeavers.xsd
@@ -0,0 +1,141 @@
+
+
+
+
+
+
+
+
+
+
+
+ A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks
+
+
+
+
+ A list of assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.
+
+
+
+
+ A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks
+
+
+
+
+ A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks.
+
+
+
+
+ A list of unmanaged 32 bit assembly names to include, delimited with line breaks.
+
+
+
+
+ A list of unmanaged 64 bit assembly names to include, delimited with line breaks.
+
+
+
+
+ The order of preloaded assemblies, delimited with line breaks.
+
+
+
+
+
+ This will copy embedded files to disk before loading them into memory. This is helpful for some scenarios that expected an assembly to be loaded from a physical file.
+
+
+
+
+ Controls if .pdbs for reference assemblies are also embedded.
+
+
+
+
+ Controls if runtime assemblies are also embedded.
+
+
+
+
+ Controls whether the runtime assemblies are embedded with their full path or only with their assembly name.
+
+
+
+
+ Embedded assemblies are compressed by default, and uncompressed when they are loaded. You can turn compression off with this option.
+
+
+
+
+ As part of Costura, embedded assemblies are no longer included as part of the build. This cleanup can be turned off.
+
+
+
+
+ Costura by default will load as part of the module initialization. This flag disables that behavior. Make sure you call CosturaUtility.Initialize() somewhere in your code.
+
+
+
+
+ Costura will by default use assemblies with a name like 'resources.dll' as a satellite resource and prepend the output path. This flag disables that behavior.
+
+
+
+
+ A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with |
+
+
+
+
+ A list of assembly names to include from the default action of "embed all Copy Local references", delimited with |.
+
+
+
+
+ A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with |
+
+
+
+
+ A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with |.
+
+
+
+
+ A list of unmanaged 32 bit assembly names to include, delimited with |.
+
+
+
+
+ A list of unmanaged 64 bit assembly names to include, delimited with |.
+
+
+
+
+ The order of preloaded assemblies, delimited with |.
+
+
+
+
+
+
+
+ 'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.
+
+
+
+
+ A comma-separated list of error codes that can be safely ignored in assembly verification.
+
+
+
+
+ 'false' to turn off automatic generation of the XML Schema file.
+
+
+
+
+
\ No newline at end of file
diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..87ecaec
--- /dev/null
+++ b/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// 有关程序集的一般信息由以下
+// 控制。更改这些特性值可修改
+// 与程序集关联的信息。
+[assembly: AssemblyTitle("Raxport.net")]
+[assembly: AssemblyDescription("convert raw to ft")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("XYZ")]
+[assembly: AssemblyProduct("Raxport.net")]
+[assembly: AssemblyCopyright("Copyright XYZ © 2022")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// 将 ComVisible 设置为 false 会使此程序集中的类型
+//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
+//请将此类型的 ComVisible 特性设置为 true。
+[assembly: ComVisible(false)]
+
+// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
+[assembly: Guid("52438da8-4c10-4edc-9b60-2c6d02a36a0b")]
+
+// 程序集的版本信息由下列四个值组成:
+//
+// 主版本
+// 次版本
+// 生成号
+// 修订号
+//
+//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
+//通过使用 "*",如下所示:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("3.4.0.0")]
+[assembly: AssemblyFileVersion("3.4.0.0")]
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..6edbdcc
--- /dev/null
+++ b/README.md
@@ -0,0 +1,43 @@
+### .Net version of Raxport
+
+Raxport is a simple program which extract scans from raw file generated by mass spectrum from ThermoFisher. It support orbitrap and iontrap scan both. But the generated .FT1 or .FT2 file will have charge information only if the scan is from orbitrap. And we only support MS1 and MS2 scan up to now.
+
+### Run it on Windows
+
+It need a .Net 4.8 environment while win10 and win11 have .Net installed. So, you can run it from terminal or CMD directly. Maybe you need to install .Net 4.8 if using win7.
+
+Download the released .exe file. CD to the file directory and run
+
+```bash
+.\Raxport.exe -i 'input path' -o 'output path -j 'threads number'
+```
+
+### Run it on Linux or MAC
+
+It need a mono environment on other OS. The simplest way to install mono is by conda. Run following code to install it.
+
+```bash
+conda install -c conda-forge mono
+```
+
+Download the released .exe file. CD to the file directory and run
+
+```bash
+mono Raxport.exe -i 'input path' -o 'output path' -j 'threads number'
+```
+
+### Scan in Genrated .FT1 file
+
+The format of .FT1 is as following picture. All chunks are split by Tab. First "H" line is software information. Second "H" is column name for peaks. Third H is instrument model. Each scan has a scan header and peaks information table. "S" line in scan header is scan number and TIC (total ion current). First "I" is retention time. Second "I" is scan type. Third "I" is scan filter.
+
+![.FT1 Scan Demo](./FT1ScanDemo.png)
+
+### Scan in Genrated .FT2 file
+
+The format of .FT2 is as following picture. All chunks are split by Tab. First "H" line is software information. Second "H" is column name for peaks. Third H is instrument model. Each scan has a scan header and peaks information table. "S" line in scan header is scan number, precursor mz and TIC (total ion current). "Z" line is precursor charge and precursor mass. First "I" is retention time. Second "I" is scan type. Third "I" is scan filter."D" line is the scan number of precursor.
+
+![.FT2 Scan Demo](./FT2ScanDemo.png)
+
+### Compile it in Visual Studio
+
+Raxport.net is developed under .Net 4.8 and relies on ThermoFisher.CommonCore.RawFileReader.dll and ThermoFisher.CommonCore.Data.dll from FreeStyle of ThermoFisher. You can clone this project and compile it in Visual Studio. You may need to install Fody from NuGet to package all .dll files to make the output binary portable.
\ No newline at end of file
diff --git a/Raxport.cs b/Raxport.cs
new file mode 100644
index 0000000..76ccb9a
--- /dev/null
+++ b/Raxport.cs
@@ -0,0 +1,223 @@
+using ThermoFisher.CommonCore.Data.Business;
+using ThermoFisher.CommonCore.Data.Interfaces;
+using ThermoFisher.CommonCore.RawFileReader;
+using System;
+using System.IO;
+using System.Threading.Tasks;
+
+namespace Raxport
+{
+ public class FTwriter
+ {
+ private string rawFileName;
+ private IRawDataPlus rawFile;
+ private int firstScanNumber;
+ private int lastScanNumber;
+ private int currentScanNumber;
+ private IScanEvent currentEvent;
+ private Scan currentScan;
+ private int currentPrecusorScanNumber;
+ private IScanFilter currentFilter;
+ private IReaction currentReaction;
+ private bool hasCharge;
+ private StreamWriter FT1writer;
+ private StreamWriter FT2writer;
+ // rawFileName: file name with full path of raw file
+ public FTwriter(string fileName, string outPath)
+ {
+ rawFileName = fileName;
+ try
+ {
+ // Business.RawFileReaderFactory not work in stand alone package
+ // Error: System.ArgumentException: Invalid path
+ // rawFile = RawFileReaderFactory.ReadFile(rawFileName);
+ // use CommonCore.RawFileReader directly
+ rawFile = RawFileReaderAdapter.FileFactory(rawFileName);
+ if (!rawFile.IsOpen)
+ {
+ Console.WriteLine("Cannot read " + rawFileName);
+ mainProgram.stopNoCloseWindow();
+ Environment.Exit(0);
+ }
+ rawFile.SelectInstrument(Device.MS, 1);
+ firstScanNumber = rawFile.RunHeaderEx.FirstSpectrum;
+ lastScanNumber = rawFile.RunHeaderEx.LastSpectrum;
+ FT1writer = new StreamWriter(outPath + "/" + Path.GetFileNameWithoutExtension(rawFileName) + ".FT1");
+ FT2writer = new StreamWriter(outPath + "/" + Path.GetFileNameWithoutExtension(rawFileName) + ".FT2");
+ }
+ catch (Exception e)
+ {
+ Console.WriteLine(e.ToString() + "\nCannot read " + rawFileName);
+ mainProgram.stopNoCloseWindow();
+ Environment.Exit(0);
+ }
+ }
+ public void writeHeader()
+ {
+ FT1writer.WriteLine("H\tExtractor\tRaxport V3.4");
+ FT1writer.WriteLine("H\tm/z\tIntensity\tResolution\tBaseline\tNoise\tCharge");
+ FT1writer.WriteLine("H\tInstrument Model\t" + rawFile.GetInstrumentData().Model);
+
+ FT2writer.WriteLine("H\tExtractor\tRaxport V3.4");
+ FT2writer.WriteLine("H\tm/z\tIntensity\tResolution\tBaseline\tNoise\tCharge");
+ FT2writer.WriteLine("H\tInstrument Model\t" + rawFile.GetInstrumentData().Model);
+ }
+ public void writePeak(StreamWriter writer)
+ {
+ if (hasCharge)
+ {
+ LabelPeak[] peaks = currentScan.CentroidScan.GetLabelPeaks();
+ foreach (LabelPeak peak in peaks)
+ {
+ // SignalToNoise is peak.Noise in old V3 version
+ writer.WriteLine("{0:F6}\t{1:F2}\t{2:F0}\t{3:F2}\t{4:F2}\t{5:F0}",
+ peak.Mass, peak.Intensity, peak.Resolution, peak.Baseline, peak.SignalToNoise, peak.Charge);
+ }
+ }
+ else
+ {
+ for (int i = 0; i < currentScan.SegmentedScan.Positions.Length; i++)
+ {
+ writer.WriteLine("{0:F6}\t{1:F2}", currentScan.SegmentedScan.Positions[i], currentScan.SegmentedScan.Intensities[i]);
+ }
+ }
+ }
+ public void writeFT1Scan(Scan FT1Scan)
+ {
+ FT1writer.WriteLine("S\t{0:D}\t{1:F2}", currentScanNumber, currentScan.ScanStatistics.TIC);
+ FT1writer.WriteLine("I\tRetentionTime\t{0:F6}", rawFile.RetentionTimeFromScanNumber(currentScanNumber));
+ FT1writer.WriteLine("I\tScanType\tMs1");
+ FT1writer.WriteLine("I\tScanFilter\t" + currentFilter.ToString());
+ writePeak(FT1writer);
+ }
+ public void writeFT2Scan(Scan FT2Scan)
+ {
+ // for old sipros V3 format
+ // FT2writer.WriteLine("S\t{0:D}\t{0:D}\t{1:F6}\t{2:F2}",
+ FT2writer.WriteLine("S\t{0:D}\t{1:F6}\t{2:F2}",
+ currentScanNumber, currentReaction.PrecursorMass, currentScan.ScanStatistics.TIC);
+ var trailerLabels = rawFile.GetTrailerExtraInformation(currentScanNumber);
+ object chargeState = 0;
+ for (int i = 0; i < trailerLabels.Labels.Length; i++)
+ {
+ if (trailerLabels.Labels[i] == "Charge State:")
+ {
+ chargeState = rawFile.GetTrailerExtraValue(currentScanNumber, i);
+ break;
+ }
+ }
+ int chargeStateInt = Convert.ToInt32(chargeState);
+ FT2writer.WriteLine("Z\t{0:D}\t{1:F6}",
+ chargeStateInt, chargeStateInt * currentReaction.PrecursorMass);
+ FT2writer.WriteLine("I\tRetentionTime\t{0:F6}", rawFile.RetentionTimeFromScanNumber(currentScanNumber));
+ FT2writer.WriteLine("I\tScanType\t" + currentFilter.MSOrder + " @ " + currentFilter.GetActivation(0));
+ FT2writer.WriteLine("I\tScanFilter\t" + currentFilter.ToString());
+ FT2writer.WriteLine("D\tParentScanNumber\t{0:D}", currentPrecusorScanNumber);
+ writePeak(FT2writer);
+ }
+ public void write()
+ {
+ writeHeader();
+ currentScanNumber = firstScanNumber;
+ Console.WriteLine(rawFileName + " has " + firstScanNumber + " to " + lastScanNumber + " Scans");
+ Console.Write("Converting scans\n");
+ while (currentScanNumber <= lastScanNumber)
+ {
+ currentScan = Scan.FromFile(rawFile, currentScanNumber);
+ currentFilter = rawFile.GetFilterForScanNumber(currentScanNumber);
+ currentEvent = rawFile.GetScanEventForScanNumber(currentScanNumber);
+ if (currentScan.HasCentroidStream)
+ hasCharge = true;
+ else
+ hasCharge = false;
+ if (currentFilter.MSOrder == ThermoFisher.CommonCore.Data.FilterEnums.MSOrderType.Ms)
+ {
+ currentPrecusorScanNumber = currentScanNumber;
+ writeFT1Scan(currentScan);
+ }
+ if (currentFilter.MSOrder == ThermoFisher.CommonCore.Data.FilterEnums.MSOrderType.Ms2)
+ {
+ currentReaction = currentEvent.GetReaction(0);
+ writeFT2Scan(currentScan);
+ }
+ currentScanNumber++;
+ }
+ FT1writer.Close();
+ FT2writer.Close();
+ Console.WriteLine("\n" + rawFileName + " convert finished");
+ }
+ }
+
+ class mainProgram
+ {
+ static string[] rawFiles;
+ static string inPath;
+ static string outPath;
+ static int threads = 6;
+ public static void stopNoCloseWindow()
+ {
+ // Console.WriteLine("Press any key to exit");
+ // not close window when exit
+ // Console.ReadKey();
+ }
+ static bool parseArgs(string[] args)
+ {
+ bool rValue = false;
+ inPath = Directory.GetCurrentDirectory();
+ outPath = inPath;
+ string help = "On windows: Raxport.exe -i 'input path' -o 'output path -j 'threads number'\n" +
+ "On linux: mono Raxport.exe -i 'input path' -o 'output path' -j 'threads number'\n" +
+ "Default path is ./";
+ for (int i = 0; i < args.Length; i++)
+ {
+ if (args[i] == "-i")
+ inPath = args[++i];
+ else if (args[i] == "-o")
+ outPath = args[++i];
+ else if (args[i] == "-j")
+ Int32.TryParse(args[++i], out threads);
+ else if (args[i] == "-h")
+ {
+ Console.WriteLine(help);
+ Environment.Exit(0);
+ }
+ }
+ try
+ {
+ rawFiles = Directory.GetFiles(inPath, "*.raw");
+ if (!Directory.Exists(outPath))
+ {
+ Directory.CreateDirectory(outPath);
+ }
+ if (rawFiles.Length > 0 && Directory.Exists(outPath))
+ {
+ rValue = true;
+ }
+ else
+ {
+ Console.WriteLine("Args parsing failed! no raw file was found!");
+ Console.WriteLine(help);
+ }
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine("Args parsing failed!");
+ Console.WriteLine(ex.ToString());
+ }
+ return rValue;
+ }
+ static void Main(string[] args)
+ {
+ if (parseArgs(args))
+ {
+ Parallel.ForEach(rawFiles, new ParallelOptions { MaxDegreeOfParallelism = threads }, (rawFile) =>
+ {
+ FTwriter writer = new FTwriter(rawFile, outPath);
+ writer.write();
+ });
+ Console.WriteLine("All convert finished");
+ }
+ stopNoCloseWindow();
+ }
+ }
+}
diff --git a/Raxport.csproj b/Raxport.csproj
new file mode 100644
index 0000000..7ec1eef
--- /dev/null
+++ b/Raxport.csproj
@@ -0,0 +1,167 @@
+
+
+
+
+
+ Debug
+ AnyCPU
+ {52438DA8-4C10-4EDC-9B60-2C6D02A36A0B}
+ Exe
+ Raxport
+ Raxport
+ v4.8
+ 512
+ true
+ true
+
+
+ false
+ publish\
+ true
+ Disk
+ false
+ Foreground
+ 7
+ Days
+ false
+ false
+ true
+ 0
+ 3.4.0.%2a
+ false
+ true
+
+
+ x64
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ x64
+ none
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+ Raxport.mainProgram
+
+
+ logo.ico
+
+
+
+
+
+
+
+
+
+
+
+ packages\Costura.Fody.5.7.0\lib\netstandard1.0\Costura.dll
+
+
+
+ packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll
+
+
+
+ packages\System.Console.4.3.1\lib\net46\System.Console.dll
+ True
+ True
+
+
+ packages\System.Diagnostics.DiagnosticSource.6.0.0\lib\net461\System.Diagnostics.DiagnosticSource.dll
+
+
+ packages\System.Memory.4.5.4\lib\net461\System.Memory.dll
+
+
+ packages\System.Net.Http.4.3.4\lib\net46\System.Net.Http.dll
+ True
+ True
+
+
+
+ packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
+
+
+ packages\System.Runtime.4.3.1\lib\net462\System.Runtime.dll
+ True
+ True
+
+
+ packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll
+
+
+ packages\System.Runtime.Extensions.4.3.1\lib\net462\System.Runtime.Extensions.dll
+ True
+ True
+
+
+ packages\System.Security.Cryptography.Algorithms.4.3.1\lib\net463\System.Security.Cryptography.Algorithms.dll
+ True
+ True
+
+
+ packages\System.Security.Cryptography.X509Certificates.4.3.2\lib\net461\System.Security.Cryptography.X509Certificates.dll
+ True
+ True
+
+
+ packages\System.Text.RegularExpressions.4.3.1\lib\net463\System.Text.RegularExpressions.dll
+ True
+ True
+
+
+
+ packages\System.Xml.ReaderWriter.4.3.1\lib\net46\System.Xml.ReaderWriter.dll
+ True
+ True
+
+
+ False
+ dll\ThermoFisher.CommonCore.Data.dll
+
+
+ False
+ dll\ThermoFisher.CommonCore.RawFileReader.dll
+
+
+
+
+
+
+
+ False
+ Microsoft .NET Framework 4.8 %28x86 和 x64%29
+ true
+
+
+ False
+ .NET Framework 3.5 SP1
+ false
+
+
+
+
+
+
+ 这台计算机上缺少此项目引用的 NuGet 程序包。使用“NuGet 程序包还原”可下载这些程序包。有关更多信息,请参见 http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是 {0}。
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Raxport.csproj.user b/Raxport.csproj.user
new file mode 100644
index 0000000..c91bf8f
--- /dev/null
+++ b/Raxport.csproj.user
@@ -0,0 +1,13 @@
+
+
+
+ publish\
+
+
+
+
+
+ zh-CN
+ false
+
+
\ No newline at end of file
diff --git a/Raxport.net.sln b/Raxport.net.sln
new file mode 100644
index 0000000..3c8285b
--- /dev/null
+++ b/Raxport.net.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.1.32328.378
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Raxport", "Raxport.csproj", "{52438DA8-4C10-4EDC-9B60-2C6D02A36A0B}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {52438DA8-4C10-4EDC-9B60-2C6D02A36A0B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {52438DA8-4C10-4EDC-9B60-2C6D02A36A0B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {52438DA8-4C10-4EDC-9B60-2C6D02A36A0B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {52438DA8-4C10-4EDC-9B60-2C6D02A36A0B}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {9A4CD510-5FC5-49D9-AB9F-1F9069405839}
+ EndGlobalSection
+EndGlobal
diff --git a/dll/ThermoFisher.CommonCore.Data.dll b/dll/ThermoFisher.CommonCore.Data.dll
new file mode 100644
index 0000000..b7eb390
Binary files /dev/null and b/dll/ThermoFisher.CommonCore.Data.dll differ
diff --git a/dll/ThermoFisher.CommonCore.Data.xml b/dll/ThermoFisher.CommonCore.Data.xml
new file mode 100644
index 0000000..cb80895
--- /dev/null
+++ b/dll/ThermoFisher.CommonCore.Data.xml
@@ -0,0 +1,28954 @@
+
+
+
+ ThermoFisher.CommonCore.Data
+
+
+
+
+ Encapsulates information about AnalogInstrument.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Defines the analog instrument data header for analog devices
+
+
+
+
+
+ Gets or sets the number of channels.
+
+
+
+
+ Gets or sets the start time.
+
+
+
+
+ Gets or sets the tic.
+
+
+
+
+ Specifies how positive and negative values are handled
+
+
+
+
+ Return all data
+
+
+
+
+ Return strictly positive data (not zero)
+
+
+
+
+ Return zero and above
+
+
+
+
+ Class to get various statistics from raw data.
+ Intended to gather data for bar charts.
+
+
+
+
+ Gets or sets the scan filter string (sets "ScanFilter").
+
+
+
+
+ Gets or sets the compound names, for filtering chromatograms.
+
+
+
+
+ Gets or sets the maximum number of unique strings which are shown as a bar category,
+ for "text string" diagnostic items.
+ Any additional strings are displayed as a bar labeled "Other".
+ Valid range: 3-1000
+ Default: 10
+
+
+
+
+ Create an analyzer for raw data.
+
+ the (open) raw file
+
+
+
+ Calculate the band size (bin size) needed to divide all data values into a given number of bands.
+ The bands would usually represent "bars on a histogram".
+
+ Data to analyze
+ Number of bands needed
+ The width of each band
+
+
+
+ Gets the common average (mean) of a set of values, defined as 0 for "null or empty" data sets
+
+ The data to analyze
+ the average
+
+
+
+ Gets the modal band of a set of data, by grouping into a fixed number of bands.
+
+ data to analyze
+ The number of bands (groups) used to split the data
+ the center of the modal band (from 0 to bands-1). 0 for null or empty data
+
+
+
+ Find the average delta between values in an array.
+
+ the data
+ The average of the delta (d[x+1]-d[x])
+
+
+
+ Find the deltas between values in an array.
+
+ the data
+ The average of the delta (d[x+1]-d[x])
+
+
+
+ Find the average delta between start times of scans matching a filter (minutes).
+
+ The average of the delta (d[x+1]-d[x]) in the start times
+
+
+
+ Find the delta between start times of scans matching a filter (minutes).
+
+ The the deltas (d[x+1]-d[x]) in the start times
+
+
+
+ Gets the scan number and start time of scans matching a filter
+
+ All scans which match this filter and their times.
+
+
+
+ Get a chromatogram from a filter
+
+ The chromatogram
+
+
+
+ Find the RT of all scans
+
+ the RT of every scan in a raw file
+
+
+
+ Find scan durations,in seconds.
+
+ the set of durations, in seconds. returns "new double[0] if there is no MS data
+
+
+
+ Find scan durations, for files which do not have "ElapsedKey"
+
+ the set of durations
+
+
+
+ Find scan durations, for files which do have "ElapsedKey"
+
+ scan filter
+ index into trailer extra for time key
+ the set of durations in seconds
+
+
+
+ Determine if this is a data type which needs banding.
+ Small types (such as byte) can be mapped to a small array of results.
+ For example: "unsigned byte" has only 256 states, so:
+ we can collect data about each state.
+ But: Float has infinite states, so must be banded.
+ Note that "int" sometimes can handle all states, depending on the
+ range of values, so is not considered "large" here
+
+
+ true if this is a large numeric type
+
+
+
+ Find a trend for the given trailer item
+
+ index into trailer extra for required item
+ Determines how positive, zero and negative data are handled.
+ the set of values. Items which are (True, false) or (On,Off)or (yes,no) return 1 for true/on/yes and 0 for fasle/off/no
+
+
+
+ Find a trend for the given status item. Calling code should select a device with a status log first.
+
+ index into status log for required item
+ Determines how positive, zero and negative data are handled.
+ the set of values. Items which are (True, false) or (On,Off)or (yes,no) return 1 for true/on/yes and 0 for false/off/no
+
+
+
+ Find a trend for the given status item. Calling code should select a device with a status log first.
+
+ index into status log for required item
+ Determines how positive, zero and negative data are handled.
+ First record in the log to inspect. This is intended for incremental log reading (real time data).
+ The value is updated to the next needed record number, such that repeated calls get new information as it arrives.
+ the set of values. Items which are (True, false) or (On,Off)or (yes,no) return 1 for true/on/yes and 0 for false/off/no.
+ If there are no further records after "startRecord" or all records are "NaN" the result will be an empty array.
+
+
+
+ Find a trend for the given trailer item
+
+ index into trailer extra for required item
+ Determines how positive, zero and negative data are handled.
+ the set of values. Items which are (True, false) or (On,Off)or (yes,no) return 1 for true/on/yes and 0 for fasle/off/no
+
+
+
+ Find a trend for the given status item. Calling code should select a device with a status log first.
+
+ index into trailer extra for required item
+ Determines how positive, zero and negative data are handled.
+ the set of values. Items which are (True, false) or (On,Off)or (yes,no) return 1 for true/on/yes and 0 for false/off/no.
+ If there are no further records after "startRecord" or all records are "NaN" the result will be an empty array.
+ the set of values. Items which are (True, false) or (On,Off)or (yes,no) return 1 for true/on/yes and 0 for fasle/off/no
+
+
+
+ Find a trend for the given status item. Calling code should select a device with a status log first.
+
+ index into trailer extra for required item
+ Determines how positive, zero and negative data are handled.
+ First record in the log to inspect. This is intended for incremental log reading (real time data).
+ The value is updated to the next needed record number, such that repeated calls get new information as it arrives.
+ the set of values. Items which are (True, false) or (On,Off)or (yes,no) return 1 for true/on/yes and 0 for false/off/no.
+ If there are no further records after "startRecord" or all records are "NaN" the result will be an empty array.
+ the set of values. Items which are (True, false) or (On,Off)or (yes,no) return 1 for true/on/yes and 0 for fasle/off/no
+
+
+
+ Get a status numeric value from a status log
+
+ Index of the item in status log header
+ status log format for this item
+ stats log record index
+ Time of this log entry
+ list of names for "string" items
+ The max number of unique strings accepted
+ The numeric value for this log entry
+
+
+
+ Get a status numeric value from a sorted status log
+
+ Index of the item in status log header
+ status log format for this item
+ stats log record index
+ Time of this log entry
+ list of names for "string" items
+ The max number of unique strings accepted
+ The numeric value for this log entry
+
+
+
+ Return a numeric value from any generic data type.
+ Numeric types (double,int etc.) return the encoded number.
+ String types "count unique string states" and return a state number.
+
+ generic record format
+ data to decode
+ For string data: unique strings found so far
+ Max unique strings to accept
+ the value from this log entry
+
+
+
+ Return a numeric value from any countable generic data type.
+ Numeric types (short, byte etc.) return the encoded number.
+ String types "count unique string states" and return a state number.
+
+ data to decode
+ For string data: unique strings found so far
+ Max unique strings to accept
+ the value from this log entry
+
+
+
+ Silently ensure MaxTextCategories is in bounds, and fix if not
+
+ the fixed max
+
+
+
+ Get names for know "enum" formats.
+
+ format of this field
+ string version of values
+
+
+
+ Find a trend for the given status log item. Calling code should select a device with a status log first.
+
+ index into trailer extra for required item
+ Determines how positive, zero and negative data are handled.
+ the set of values. Items which are (True, false) or (On,Off)or (yes,no) return 1 for true/on/yes and 0 for fasle/off/no
+
+
+
+ Find a trend for the given trailer item
+
+ index into trailer extra for required item
+ Determines how positive, zero and negative data are handled.
+ the set of values. Items which are (True, false) or (On,Off)or (yes,no) return 1 for true/on/yes and 0 for fasle/off/no
+
+
+
+ Decode only small (countable) values from logs.
+
+ Format of this field
+ Value to decode
+ Categories found so far
+ maximum number of categories
+ The log value
+
+
+
+ Get a small (countable state) status log value trend, based on
+ index into the status log fields.
+
+ Index of field to read
+ Filtering rule
+ Format of the log
+ The log value
+
+
+
+ Ensure that all trend items have a valid value.
+ Assign values with "no saved name" as a category "other", valued 1 above the known names.
+
+ The set of names found (categories) in the log
+ The data for the trend plot
+ The names for the numbered categories.
+
+
+
+
+ Find the durations of scans, and bin them into a number of "millisecond" bands, ready for a histogram plot.
+
+ number of bands
+ analysis of scan times (milliseconds)
+
+
+
+ Get banded data for a bar chart.
+
+ data to map into bands
+ requested number of bands
+ banded data for a bar chart
+
+
+
+ Get banded data for a chart (histogram). If the data has a small enough range of values,
+ then all values have their own bar.
+ Each bar represents "the count of values within a given band".
+
+ Data to band
+ If there are too many unique data values (> maxBands) then
+ the data becomes banded (grouped) into this many bands
+ The maximum number of unique categories before that data must be banded
+ The banded data
+
+
+
+ Class to keep trace of numeric value (bar number) for each text string found in a log
+
+
+
+
+ Name found in the log
+
+
+
+
+ Assigned bar number
+
+
+
+
+ Autofilter extenions for raw files
+
+
+
+
+ Create an enhanced autofilter for this raw file
+
+ raw file
+ enhanced auto filter
+
+
+
+ Create an enhanced autofilter for this raw file, uing cans over a specific time range.
+
+ raw file
+ start retention time
+ end retention time
+ enhanced auto filter
+
+
+
+ This class extends the functions of "auto filter".
+ On construction, the "auto filter" list is obtained from the MS detector.
+ methods are then called to construct a list of filters based on this data.
+ The list can be searched for "items matching a given filter rule".
+
+
+
+
+ Adds the "empty filter" to the list.
+
+
+
+
+ Searches for the activation types used.
+ Adds "Activation type" to the list, for MS/MS data (MS2 or above).
+ This can find CID, HCD, ETD, UVPD
+
+
+
+
+ Creates a filter from a string and adds it
+
+
+
+
+
+ Adds "ms order filters" to the list
+ this includes ms, ms2 etc up to ms10
+ if any ms/ms is found msn is also added.
+
+ When true (default): if any ms/ms is found "MSn" is also added.
+
+
+
+ Gets or sets a value indicating whether compound names shoud be included.
+ This only has an effect if the "Name" property is set for at least one filter.
+ Results which have names are shown in sorted (alpha) order.
+ Any other filters, which do not have a name, are then added after the
+ named items, in the original "auto filter" order.
+ If a name appaers for more than one filter, then an entry is created
+ which only contains a compound name, such that a chromatogram
+ can be created based on all data identified for that compound.
+ Note that this "name only" list is excluded when a "unique filter list" is
+ requested with a specific subset filter.
+
+
+
+
+ Gets or sets a separator which appears between a compound name and a filter.
+
+
+
+
+ Add all unique filter groups (auto filter).
+
+ If this is not empty: The filters must all contan this sub-filter.
+ For example "d" for "only return data dependent"
+
+
+
+ Remove "CV" from filters, such that filters which have CV at different values are merged.
+
+
+
+
+ Create am emhaced auto filter for a raw file
+
+
+ indicates whether time limits are used for the
+ "auto filter" request from the raw file.
+ If this is true:
+ Only scans from minTime to maxTime are used
+ else: all scans are used
+ the minimum retention time for getting a set of filters from the raw file.
+ Only applied when applyTimeLimits is set.
+ the maximum retention time for getting a set of filters from the raw file.
+ Only applied when applyTimeLimits is set.
+
+
+
+ remove "CV" from all filters
+
+ Filter to consolidate
+ Updated list
+
+
+
+ The auto sampler information.
+
+
+
+
+ Gets or sets the tray index, -1 for "not recorded"
+
+
+
+
+ Gets or sets the vial index, -1 for "not recorded"
+
+
+
+
+ Gets or sets the number of vials (or wells) per tray.
+ -1 for "not recorded"
+
+
+
+
+ Gets or sets the number of vials (or wells) per tray, across the tray.
+ -1 for "not recorded"
+
+
+
+
+ Gets or sets the number of vials (or wells) per tray, down the tray.
+ -1 for "not recorded"
+
+
+
+
+ Gets or sets the shape.
+ If this property returns "Invalid", no other values in this object
+ contain usable information.
+ Invalid data can occur for older raw file formats, before auto sampler data was added.
+
+
+
+
+ Gets the tray shape as a string
+
+
+
+
+ Gets or sets the tray name.
+
+
+
+
+ Parameters for the Avalon integrator
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Integrator events to copy
+
+
+
+
+
+
+ Results of banding algorithm.
+ Data for a bar chart
+
+
+
+
+ Gets or sets the number of bands.
+
+
+
+
+ Gets or sets the width of a band.
+
+
+
+
+ Calculates the range of a given band
+
+ band whose range is needed
+ The range of value in this band
+
+
+
+ Gets or sets the center of each band
+
+
+
+
+ Gets or sets the data (height of the bar) for each band
+
+
+
+
+ Gets or sets a value indicating whether this data got banded.
+ For example: If a data set was integer, and contained "charges 1 to 7" then all 7
+ original data categories can be returned.
+ If data is "double from 1..02-9000.6" then there are no fixed categories, and the data
+ will be "sampled" into bands.
+
+
+
+
+ The cached scan provider.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The capacity.
+
+
+
+
+ Get scan from a scan number.
+
+
+ The raw data.
+
+
+ The scan number.
+
+
+ The scan at that scan number, or null if the scan number is out of range.
+
+
+
+
+ The get scan at time.
+
+
+ The raw file.
+
+
+ The time.
+
+
+ The scan nearest the given time.
+
+ Thrown on null raw file
+
+
+
+
+ Data for the calibration curve.
+ Included and excluded points, fitted curve and equation text.
+ This is designed to help creating calibration curve plots.
+
+
+
+
+ The _excluded.
+
+
+
+
+ The _external excluded.
+
+
+
+
+ The _external included.
+
+
+
+
+ The included.
+
+
+
+
+ The points.
+
+
+
+
+ The equation.
+
+
+
+
+ The percent cv.
+
+
+
+
+ The coefficient of determination (R squared).
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The regression.
+
+
+ The current calibration levels.
+
+
+ The historic calibration levels.
+
+
+ The is internal standard.
+
+
+
+
+ Gets or sets the equation text from the regression calculation.
+
+
+
+
+ Gets the excluded replicates from current sequence data
+
+
+
+
+ Covert points to read only.
+
+
+ The points.
+
+
+ The collection of points
+
+
+
+
+ Gets the excluded replicates from current sequence data
+
+
+
+
+ Gets the excluded replicates from previously acquired data
+
+
+
+
+ Gets the excluded replicates from previously acquired data
+
+
+
+
+ Gets the included replicates from previously acquired data
+
+
+
+
+ Gets the included replicates from previously acquired data
+
+
+
+
+ Gets the fitted line
+
+
+
+
+ Gets the included replicates from current sequence data
+
+
+
+
+ Gets the included replicates from current sequence data
+
+
+
+
+ Gets or sets a value indicating whether the fitted line is empty
+ The curve data needs to be plotted as appropriate for
+ an internal standard: Centered on the set of points,
+
+
+
+
+ Gets or sets the percentage coefficient of variance from the first calibration level.
+
+
+
+
+ Gets or sets the percentage relative standard deviation from the first calibration level.
+
+
+
+
+ Gets the fitted line
+
+
+
+
+ Gets or sets the RSquared value from the regression calculation (-1 if not valid)
+
+
+
+
+ Create data for a calibration curve report from a replicate table.
+
+
+ The replicates for one component
+
+
+ Calibration replicates from the current sequence
+
+
+ If set: the data is for an internal standard,
+ and does not contain a line of fit
+
+
+ X,Y points for included, excluded and fitted line
+
+
+
+
+ Create data for a calibration curve report from a replicate table.
+
+
+ The replicates for one component
+
+
+ Calibration replicates from the current sequence
+
+
+ X,Y points for included, excluded and fitted line
+
+
+
+
+ Create data for a calibration curve report from a replicate table.
+
+
+ The replicates for one component
+
+
+ Calibration replicates from the current sequence
+
+
+ Calibration replicates from previous sequences
+
+
+ X,Y points for included, excluded and fitted line
+
+
+
+
+ Create data for a calibration curve report from a replicate table.
+
+
+ The replicates for one component
+
+
+ Calibration replicates from the current sequence
+
+
+ Calibration replicates from previous sequences
+
+
+ If set: the data is for an internal standard,
+ and does not contain a line of fit
+
+
+ X,Y points for included, excluded and fitted line
+
+
+
+
+ Create data for a calibration curve report from a replicate table.
+ This version does not support "stats" for ISTD curves.
+
+
+ The replicates for one component
+
+
+ Calibration replicates from the current sequence
+
+
+ X,Y points for included, excluded and fitted line
+
+
+
+
+ Create data for a calibration curve report from a replicate table.
+ This version does not support "stats" for ISTD curves.
+
+
+ The replicates for one component
+
+
+ Calibration replicates from the current sequence
+
+
+ Calibration replicates from previous sequences
+
+
+ If set: the data is for an internal standard,
+ and does not contain a line of fit
+
+
+ X,Y points for included, excluded and fitted line
+
+
+
+
+ Create a table of points to draw on a calibration curve
+
+
+ Replicate table to convert into points
+
+
+ if true, create points for the included data, else create points for the excluded data
+
+
+ The list of points to plot
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+ 2
+
+
+
+ Find the max amount in the supplied points
+
+
+ The points.
+
+
+ The max amount.
+
+
+
+
+ Find the relative standard deviation
+
+
+ The calibration levels.
+
+
+ The RSD.
+
+
+
+
+ class to represent calibration data, as may be drawn on a plot.
+
+
+
+
+ Gets or sets the amount (x) on calibration curve
+
+
+
+
+ Gets or sets the response (y) for the amount
+
+
+
+
+ Gets or sets the a key to identify this point. For example, a file name.
+
+
+
+
+ Gets or sets the a second key to identify this point. For example, a compound name.
+
+
+
+
+ Test that two points are equal
+
+ first point to compare
+ second point to compare
+ true if they have the same contents
+
+
+
+ Test that two spec points are not equal
+
+ first point to compare
+ second point to compare
+ true if they do not have the same contents
+
+
+
+ Test two points for equality
+
+
+ point to compare
+
+
+ true if they are equal
+
+
+
+
+ Gets a hash code Object.GetHashCode
+
+
+ The has code Object.GetHashCode
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+ 2
+
+
+
+ Defines interfaces for a calibration level.
+
+
+
+
+ Gets or sets the name for this calibration level
+
+
+
+
+ Gets or sets the amount of calibration compound (usually a concentration) for this level
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+ An exact copy of the current level.
+
+
+
+ This class defines a calibration level.
+ Each level has an amount BaseAmount and a name
+
+
+
+
+ A values very close to zero
+
+
+
+
+ Anticipated amount of target compound in calibration of QC standard.
+
+
+
+
+ Name for this calibration level
+
+
+
+
+ Gets or sets the name for this calibration level
+
+
+
+
+ Gets or sets the amount of calibration compound (usually a concentration) for this level
+
+
+
+
+ Initializes a new instance of the class.
+ Create a copy of a calibration level
+
+
+ Level to copy
+
+
+
+
+ Initializes a new instance of the class.
+ Default construction of calibration level
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ A name associated with the level
+
+
+ The amount of calibration compound (usually a concentration) for this level
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+ An exact copy of the current level.
+
+
+
+ Centroid data making a second stream with profile scan.
+
+
+
+
+ this allows base peak mass and base peak intensity to search for the base value on first use
+
+
+
+
+ Intensity of largest peak (valid when _basePeakFound)
+
+
+
+
+ Mass of largest peak
+
+
+
+
+ Noise of largest peak (valid when _basePeakFound)
+
+
+
+
+ Resolution of largest peak (valid when _basePeakFound)
+
+
+
+
+ Mass calibration coefficients
+
+
+
+
+ Creates a new instance of CentroidStream
+
+
+
+
+ Deep copy constructor
+
+
+
+
+
+ Gets or sets the list of baseline at each peak
+
+
+
+
+ Gets the intensity of most intense peak
+
+
+
+
+ Gets the mass of most intense peak
+
+
+
+
+ Gets the noise of most intense peak
+
+
+
+
+ Gets the resolution of most intense peak
+
+
+
+
+ Gets or sets the list of charge calculated for peak
+
+
+
+
+ Gets or sets the calibration Coefficients
+
+
+
+
+ Gets or sets the coefficients count.
+
+
+
+
+ Gets or sets the flags for the peaks (such as reference)
+
+
+
+
+ Gets or sets the list of Intensities for each centroid
+
+
+
+
+ Gets or sets the number of centroids
+
+
+
+
+ Gets or sets the list of masses of each centroid
+
+
+
+
+ Gets or sets the list of noise level near peak
+
+
+
+
+ Gets or sets resolution of each peak
+
+
+
+
+ Gets or sets the scan Number
+
+
+
+
+ Return the largest intensity (base value) in the ranges supplies
+
+ Ranges of masses
+ If the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses
+ Largest intensity in all ranges
+
+
+
+ Clears all the data.
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Make a deep clone of this object.
+
+ An object containing all data in this, and no shared references
+
+
+
+ Get the list centroids.
+
+
+ The centroids in the scan
+
+
+
+
+ Convert the data for a given peak in this stream into a LabelPeak
+
+
+ The index of the peak to convert.
+
+
+ Extracted data for the selected peak
+
+
+
+
+ Convert the data into LabelPeak objects
+
+ An array of LabelsPeaks, converted from this class
+
+
+
+ Forces re-computation of Base peaks , intensities.
+
+
+
+
+ Convert data into this object from an array of LabelPeaks
+
+ Data to populate the class
+ true on success. False if the labels peaks are null or empty
+
+
+
+ Sum all masses within the ranges
+
+ List of ranges to sum
+ If the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses
+ Sum of intensities in all ranges
+
+
+
+ Sum all masses within the ranges
+
+ List of ranges to sum
+ If the ranges have equal mass values,
+ then tolerance is subtracted from low and added to high to search for matching masses
+ Sum of intensities in all ranges
+
+
+
+ Convert to simple scan.
+ Even though this class implements ISimpleScanAccess,
+ there can be an advantage in doing this conversion, as when this object goes out of scope
+ the converted object only holds the mass and intensity refs, and will need less memory.
+
+
+ The .
+
+
+
+
+ Convert to segmented scan.
+ This feature is intended for use where an application or algorithm in "SegmentedScan" format,
+ such as typical centroid data from ITMS, but the data in this scan came from an FTMS detector,
+ which would have the profile data in "SegmentedScan" and the centroid data in this object.
+ Data from this object is duplicated (deep copy),
+ such that changing values in the returned object will not affect data in
+ this object.
+
+
+ The .
+
+
+
+
+ Convert to Scan.
+ This feature is intended for use where an application or algorithm needs data in "Scan" format,
+ with centroid information in the "SegmentedScan" property of the Scan.
+ (such as typical centroid data from ITMS), but the data in this scan came from an FTMS detector,
+ which would have the profile data in "SegmentedScan" and the centroid data in this object.
+ The data is first converted to SegmentedScan format (using ToSegmentedScan) then a new Scan is made
+ containing that data (with no data in "CentroidStream).
+ Data from this object is duplicated (deep copy),
+ such that changing values in the returned object will not affect data in
+ this object.
+ This initializes the returned scan's "ScanStatistics" based on the returned mass and intensity data.
+ If the (optional) originalScanStats parameter is included, information from
+ that is used to initialize RT, scan number and other fields
+ which cannot be calculated from this data.
+ The only values updated in the scan statistics are "BasePeakMass" and "BasePeakIntenity".
+ All other values are either as copied from the supplied parameter, or defaults.
+ Application should set any other values needed in the Scan,
+ such as "ScansCombined, ToleranceUnit, MassResolution",
+ which cannot be determined from the supplied parameters.
+
+ If this is supplied, the scan statistics are initialized as a deep clone
+ of the supplied object (so that RT etc. get preserved) then the values of BasePeakMass and
+ BasePeakIntensity are updated from this object
+
+ The .
+
+
+
+
+ Find the mass limits of this data
+
+
+
+
+
+ Test if this is a valid object (all streams are not null. All data has same length)
+
+
+ true if the object has valid data in it.
+
+
+
+
+ Test if this is a valid object (all streams are not null. All data has same length)
+
+ is thrown if this instance does not contain valid data.
+
+
+
+ Internal method, used to truncate long arrays
+
+ The size to "resize" to
+
+
+
+ Change the size of an array. This exists because "Array.Resize" cannot be directly called on an array property.
+
+
+ The original data.
+
+
+ The new size.
+
+
+ The resized options
+
+
+
+
+ Change the size of an array. This exists because "Array.Resize" cannot be directly called on an array property.
+
+
+ The original data.
+
+
+ The new size.
+
+
+ The resized array.
+
+
+
+
+ Find the most intense peak
+
+
+
+
+ Find the largest value in a given mass range, and combine with the value passed in.
+
+
+ The mass range to analyze
+
+
+ The base value so far.
+
+
+ The largest of the base value passed in, and the base value in this mass range.
+
+
+
+
+ Create a label peak from data at a given index.
+
+
+ The label index.
+
+
+ The .
+
+
+
+
+ Calculate the sum of intensities, for peaks within a mass range, and add to previous sum
+
+
+ The sum so far
+
+
+ The mass range.
+
+
+ This sum passed in, plus the sum of intensities of all peaks in range.
+
+
+
+
+ slice the data, using a set of mass ranges.
+
+ Ranges of data to include
+ sA scan which only has data in the requested ranges
+
+
+
+ The chromatogram aggregator.
+ This can join together chromatograms form batches of scans,
+ and return to caller when complete
+
+
+
+
+ Gets or sets the number of batches of scans, that sub-divide this chromatogram.
+
+
+
+
+ Gets the generator.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The tool to create chromatograms.
+
+ The scan numbers and retention times
+ Method called when the chromatogram is complete
+
+
+
+ Get the aggregator ready to hold result for "Batches" of data
+
+
+
+
+ Called when a signal is ready.
+ That is: A set of scans has been combined to make a chromatogram.
+ When the final batch is delivered, the chromatogram is sent to the client.
+
+
+ The batch number (which part of the overall chromatogram is this?).
+
+
+ The signal.
+
+
+
+
+ Collate the signals
+
+
+ The joined signals
+
+
+
+
+ The chromatogram batch generator.
+ This provides any number of chromatograms to a caller,
+ using multiple threads.
+
+
+
+
+ Gets or sets the available scans.
+
+
+
+
+ Gets or sets the scan reader.
+ Given a scan number,
+ Return the spectral data and scan event
+
+
+
+
+ Gets or sets the scan reader, for multiple scans
+ Given a scan number array,
+ Return the spectral data and scan event.
+ Note: May be null, in which case "ScanReader" will be used.
+
+
+
+
+ Gets or sets the scans in chromatogram batch.
+ An optimal value will depend on the experiment type.
+ For example: for SRM, with 20 or less centroid peaks per scan, this can be larger.
+ For full scan experiments, with 500 or more centroids per scan, this may need to be smaller, especially on
+ a 32 bit process.
+ Default 400 for 32 bit, 1600 for 64 bit. Suggested range 100 to 3000.
+ Setting this larger may increase efficiency (fewer small tasks to perform, in raw data with 100k scans),
+ but is at the cost of possible increased memory usage for scans.
+ This is intentionally "short". Values above 10,000 for this are discouraged, as that could
+ lead to significant memory overheads, and possibly less efficient thread management.
+
+
+
+
+ Gets or sets a value indicating whether the chromatograms have a strict time range.
+ By default, the retention time range of a chromatogram is considered as a "display range",
+ such that the first value before the range, and the first value after the range is included
+ in the data, permitting a continuous line, if plotted, to the edge of the time window.
+ If this property is true, then only points which are within the supplied RT range are returned.
+
+
+
+
+ The minimum permitted number of threads to work on generating chromatograms.
+
+
+
+
+ Gets or sets the maximum number of consumer threads to make.
+ In other words: The maximum number of chromatograms the caller will
+ be given to process in parallel.
+ Default: Environment.ProcessorCount.
+ Minimum : MinConsumerThreads
+
+
+
+
+ Gets or sets the maximum work backlog, which controls how much
+ work is kept in the pipeline, waiting for threads to become available.
+ Default: 5 for 32 bit process, 20 for 64 bit.
+ Setting a larger value may cause data reading from a raw file to be completed earlier,
+ but at the expense of more memory overheads.
+
+
+
+
+ Gets or sets a value indicating whether accurate precursor mass testing is done.
+ If not: a tolerance of 0.4 AMU is used.
+ All data dependent tests are done with 0.4 AMU tolerance.
+
+
+
+
+ Gets or sets the precision (decimal places)
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Generate chromatograms, returning the in progress tasks,
+ which are processing the chromatograms.
+ This permits async generation of chromatograms.
+ This method returns after all required scan data has been
+ read, and all work to process the chromatograms is queued.
+ (The implied raw data file can be closed, as ScanReader will not be called again).
+
+
+ The chromatogram deliveries.
+ These define the chromatogram settings, and a callback which will occur
+ as soon as the data for that chromatogram is ready.
+
+
+ The in progress tasks. Assuming the result is saved as "taskList" Use "Task.WaitAll(taskList)"
+ to wait for processing of these chromatograms to complete.
+
+
+
+
+ Process all items in a work list.
+
+
+ The work item list.
+
+
+
+
+ Add work to the work list.
+ If there are insufficient background workers, assign more.
+
+ Collection of work
+ New job to add
+
+
+
+ Add a worker thread.
+
+
+ The work.
+
+
+
+
+ Create partial chromatogram definitions, ordered by start scan.
+
+ requested chromatograms
+ Ordered partial chromatograms
+
+
+
+ Create work items.
+
+
+ The work request list, ordered by start scan.
+
+
+ The target work list.
+
+
+
+
+ Publish pending list of work, which has the same scan range
+
+
+ The pending item list.
+
+
+ The work.
+
+
+
+
+ Generate the chromatogram chunks, for all work items that this thread sees.
+
+
+ The work items.
+
+
+
+
+ The work item.
+ This consists of:
+ The requested chromatogram.
+ The set of scans needed to make a chromatogram.
+
+
+
+
+ Initializes a new instance of the class.
+ Create a work item, ready to make chromatograms from scans
+
+
+ The tool to read scans
+
+
+ The parameters for the chromatogram chunk
+
+
+
+
+ Gets the fragment.
+
+
+
+
+ Gets or sets the scans.
+
+
+
+
+ Process this work
+
+
+
+
+ Gets or sets the scan events interface, which can be used to optimize filtering, if provided.
+ This interface may be obtained from IRawDataPlus (ScanEvents property).
+
+
+
+
+ Class to find which scans belong in the RT range of a chromatogram.
+ This includes the feature that scans may be "entirely within" a given range, or go one scan beyond,
+ such that the range is extended allowing a chromatogram plot can be generated over the entire range.
+
+
+
+
+ Gets or sets the available scans.
+
+
+
+
+ Gets or sets a value indicating whether the chromatograms have a strict time range.
+ By default, the retention time range of a chromatogram is considered as a "display range",
+ such that the first value before the range, and the first value after the range is included
+ in the data, permitting a continuous line, if plotted, to the edge of the time window.
+ If this property is true, then only points which are within the supplied RT range are returned.
+
+
+
+
+ Find scan index for a given retention time.
+
+
+ The time.
+
+
+ The index into the scan table for this time.
+
+
+
+
+ Find the scan index range for chromatogram, based on the retention time range.
+
+
+ The RT range of the chromatogram.
+
+
+ The start and end index (items 1 and 2).
+
+
+
+
+ Class to analyze chromatogram requests, creating an ordered table
+ of partial chromatograms, which can be used to optimize data reading for
+ chromatogram generation.
+
+
+
+
+ Gets or sets the scans in chromatogram batch.
+ An optimal value will depend on the experiment type.
+ For example: for SRM, with 20 or less centroid peaks per scan, this can be larger.
+ For full scan experiments, with 500 or more centroids per scan, this may need to be smaller, especially on
+ a 32 bit process.
+ Default 400 for 32 bit, 1600 for 64 bit. Suggested range 100 to 3000.
+ Setting this larger may increase efficiency (fewer small tasks to perform, in raw data with 100k scans),
+ but is at the cost of possible increased memory usage for scans.
+ This is intentionally "short". Values above 10,000 for this are discouraged, as that could
+ lead to significant memory overheads, and possibly less efficient thread management.
+
+
+
+
+ Gets or sets a value indicating whether accurate precursor mass testing is done.
+ If not: a tolerance of 0.4 AMU is used.
+ All data dependent tests are done with 0.4 AMU tolerance.
+
+
+
+
+ Gets or sets the precision (decimal places)
+
+
+
+
+ Gets or sets the scan events interface, which can be used to optimize filtering, if provided.
+ This interface may be obtained from IRawDataPlus (ScanEvents property).
+
+
+
+
+ Create ordered chromatograms.
+ Creates a "time ordered" set of partial chromatogram requests,
+ which can then be used for efficient chromatogram generation,
+ by making a single pass over raw data.
+
+
+ The chromatograms to be delivered.
+
+
+ The ordered set of chromatogram requests.
+
+
+
+
+ Create requests for one chromatogram.
+
+
+ The requests.
+
+
+ The delivery.
+
+
+
+
+ Add a batch of scans.
+
+
+ The requests.
+
+
+ The aggregator.
+
+
+ The start scan index.
+
+
+ The end scan index.
+
+ Set if this is the final batch for a chromatogram
+
+
+
+ The chromatogram fragment request.
+ A request to make a section of the overall chromatogram.
+
+
+
+
+ Gets or sets a value indicating whether this is empty.
+ Empty implies that the raw file has no scans in the RT range.
+
+
+
+
+ Gets or sets the aggregator, which collates a set of partial chromatograms.
+
+
+
+
+ Gets or sets the batch.
+ This is the batch index with the results table of the aggregator
+
+
+
+
+ Gets or sets the start scan index.
+
+
+
+
+ Gets or sets the end scan index.
+
+
+
+
+ Gets or sets a value indicating whether this is a final section of a chromatogram.
+
+
+
+
+ Make a chromatogram from a batch of scans
+
+ The scans
+
+
+
+ The SignalConvert interface.
+ Defines an object which can be converted to signal
+
+
+
+
+ Convert to signal.
+ The object implementing this would have the required intensity information,
+ but limited other data (such as RT values) which can be pulled from "scans".
+
+
+ The scans.
+
+
+ The .
+
+
+
+
+ Gets the number of points in this data
+
+
+
+
+ The chromatogram generator factory.
+
+
+
+
+ Create a chromatogram generator.
+ This configures the generator for optimal performance in checking scans.
+ as there may be over 1000 components over 100k scans, that is 10m or more scan
+ filtering tests (most of which fail). So: optimize that test
+ use "for" and arrays (not foreach and IEnumerable) etc.
+
+
+ The request.
+
+ In this mode a tolerance matching for precursors is "accurate" (based on the precision value),
+ except for data dependent scans.
+ For all "non accurate" precursor selections, and for all data dependent scans a default (wide) tolerance is used.
+ number of decimal places for masses in filter
+ scan events interface, which can be used to optimize filtering, if provided.
+ This interface may be obtained from IRawDataPlus (ScanEvents property).
+
+ The .
+
+
+
+
+ The compressed chromatogram.
+ This holds a "double intensity" and a "shot index offset" for each scan
+ in the chromatogram, that is 10 bytes.
+ Al alternative (scan number 4 bytes. plus RT 8 bytes, plus intensity 8 bytes is twice as much memory 20bytes).
+ The data is expanded up on request.
+ With 1k unfiltered chromatograms, over 100k scans, this saves 1k*100k*10=1GB ram.
+
+
+
+
+ Convert to signal.
+ The object implementing this would have the required intensity information,
+ but limited other data (such as RT values) which can be pulled from "scans".
+
+
+ The scans.
+
+
+ The .
+
+
+
+
+ Gets the length.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The first index.
+
+
+ The index offsets.
+
+
+ The intensities.
+
+
+
+
+ Create a chromatogram from a set of scans, with no filtering
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The request.
+
+
+
+
+ Create a chromatogram.
+
+
+ The scans.
+
+
+ An interface to create a signal from the intensities which are calculated.
+ Null if no scans.
+
+
+
+
+ Create a chromatogram from a set of scans
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The request.
+
+
+
+
+ Create a chromatogram.
+
+
+ The scans.
+
+
+ An interface to create a signal from the intensities which are calculated.
+ Null if no scans passed the filter.
+
+
+
+
+ Create a chromatogram from a set of scans, where a filter is used for scan selection.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The request.
+
+ In this mode a tolerance matching for precursors is "accurate" (based on the precision value),
+ except for data dependent scans.
+ For all "non accurate" precursor selections, and for all data dependent scans a default (wide) tolerance is used.
+ number of decimal places for masses in filter
+ scan events interface, which can be used to optimize filtering, if provided.
+ This interface may be obtained from IRawDataPlus (ScanEvents property).
+
+
+
+ Create a chromatogram.
+
+
+ The scans.
+
+
+ An interface to create a signal from the intensities which are calculated.
+ Null if no scans passed the filter.
+
+
+
+
+ The ChromatogramGenerator interface.
+
+
+
+
+ Create a chromatogram.
+
+
+ The scans.
+
+
+ An interface to create a signal from the intensities which are calculated.
+ Null if no scans passed the filter.
+
+
+
+
+ Class to create objects to efficiently generate chromatogram points.
+
+
+
+
+ create an object to efficiently generate chromatogram points.
+ This analyzes the given arguments, and returns an interface which can most efficiently
+ generate the chromatograms
+
+ Retention time range for this chromatogram
+ Method of selecting scans to be included
+ Methods to generate points from scans
+ Object to make chromatogram points
+
+
+
+ Standard properties for chromatogram point builders
+
+
+
+
+ Gets or sets the retention time range.
+ Only scans within this range are included.
+
+
+
+
+ Gets or sets the scan selector, which determines if a scan is in the chromatogram, or not
+
+
+
+
+ Implementation of IChromatogramRequest,
+ which can generate chromatogram points for mass ranges.
+ Version which supports multiple mass ranges.
+ This version sums values for the listed ranges
+
+
+
+
+ Gets a value indicating whether this point type needs "scan data".
+ Always true for this type.
+
+
+
+
+ Gets or sets the point requests.
+ These determine how chromatogram points are created from a scan,
+ by adding or subtracting data form multiple mass ranges.
+
+
+
+
+ Gets the value for scan.
+ This function returns the chromatogram value for a scan.
+ For example: An XIC from the scan data.
+
+
+ The scan.
+
+
+ The chromatogram value of this scan.
+
+
+
+
+ create an object to efficiently generate chromatogram points.
+ This analyzes the given arguments, and returns an interface which can most efficiently
+ generate the chromatograms.
+ This version will find the "max value" from each of the supplied point requests (base peak)
+
+ Retention time range for this chromatogram
+ Method of selecting scans to be included
+ Methods to generate points from scans
+ Object to make chromatogram points
+
+
+
+ This chromatogram request finds base peak mass and intensity data.
+ It can return data for the full file or a mass range
+
+
+
+
+ Gets or sets a value indicating whether all data in the scan is used
+
+
+
+
+ Get os sets the mass range analyzed, when not "AllData"
+
+
+
+
+ Finds the Mass and Intsenty of the base peak
+
+
+ touple containin mass, intensity
+
+
+
+ Create a request to make an "base peak" mass chromatogram, based on a mass range.
+ That is: returns the mass of most intense peak over a given range.
+
+
+ The low mass.
+
+
+ The high mass.
+
+
+ The .
+
+
+
+
+ create an object to efficiently generate chromatogram points.
+ This analyzes the given arguments, and returns an interface which can most efficiently
+ generate the chromatograms.
+ This version will find the "max value" from each of the supplied point requests (base peak)
+
+ Retention time range for this chromatogram
+ Method of selecting scans to be included
+ Methods to generate points from scans
+ Object to make chromatogram points
+
+
+
+ Implementation of IChromatogramRequest,
+ which can generate chromatogram points for mass ranges.
+ Version which supports multiple mass ranges.
+ This version finds the Max of the values for all range (base peak)
+
+
+
+
+ Gets a value indicating whether this point type needs "scan data".
+ Always true for this type.
+
+
+
+
+ Gets or sets the point requests.
+ These determine how chromatogram points are created from a scan,
+ by adding or subtracting data form multiple mass ranges.
+
+
+
+
+ Gets the value for scan.
+ This function returns the chromatogram value for a scan.
+ For example: An XIC from the scan data.
+
+
+ The scan.
+
+
+ The chromatogram value of this scan.
+
+
+
+
+ Implementation of IChromatogramRequest,
+ which can generate chromatogram points for mass ranges.
+ Version which supports multiple mass ranges.
+ This version finds the Max of the values for all range (base peak)
+
+
+
+
+ Gets a value indicating whether this point type needs "scan data".
+ Always true for this type.
+
+
+
+
+ Gets or sets the point requests.
+ These determine how chromatogram points are created from a scan,
+ by adding or subtracting data form multiple mass ranges.
+
+
+
+
+ Gets the value for scan.
+ This function returns the chromatogram value for a scan.
+ For example: An XIC from the scan data.
+
+
+ The scan.
+
+
+ The chromatogram value of this scan.
+
+
+
+
+ Implementation of IChromatogramRequest,
+ which can generate chromatogram points for mass ranges.
+ Simplified version for one mass range.
+
+
+
+
+ Gets a value indicating whether this point type needs "scan data".
+ Always true for this type.
+
+
+
+
+ Gets or sets the point requests
+ Determine how a chromatogram point is created from a scan.
+
+
+
+
+ Gets the value for scan.
+ This function returns the chromatogram value for a scan.
+ For example: An XIC from the scan data.
+
+
+ The scan.
+
+
+ The chromatogram value of this scan.
+
+
+
+
+ Implementation of IChromatogramRequest,
+ which can generate chromatogram points for mass ranges.
+ Simplified version for one mass range, and no scaling
+
+
+
+
+ Gets a value indicating whether this point type needs "scan data".
+ Always true for this type.
+
+
+
+
+ Gets or sets the point requests
+ Determine how a chromatogram point is created from a scan.
+
+
+
+
+ Gets the value for scan.
+ This function returns the chromatogram value for a scan.
+ For example: An XIC from the scan data.
+
+
+ The scan.
+
+
+ The chromatogram value of this scan.
+
+
+
+
+ Request to create a point in a chromatogram, based on mass/intensity data in a scan.
+ Use the static methods to make common chromatogram types.
+
+
+
+
+ Gets or sets a value indicating whether all data
+ in the scan is used, or just a mass range.
+
+
+
+
+ Gets or sets the scale.
+ This can be 1 to "add data in a mass range" or
+ -1 to "subtract data a mass range",
+ or any other value to apply scaling to a range.
+
+
+
+
+ Gets or sets the mass range.
+ If an application has a center mass +/ tolerance,
+ then the static method may be useful to format the range.
+
+
+
+
+ Gets or sets the rule for how a chromatogram point is created from a mass range.
+
+
+
+
+
+
+
+ Create a request to make an "XIC" chromatogram, based on one ion plus mass tolerance.
+
+
+ The mass.
+
+
+ The tolerance.
+
+
+ The tolerance mode.
+
+
+ The .
+
+
+
+
+ Create a request to make an "XIC" chromatogram, based on a mass range
+
+
+ The low mass.
+
+
+ The high mass.
+
+
+ The .
+
+
+
+
+ Create a request to make a "TIC" chromatogram.
+
+
+ The .
+
+
+
+
+ Create a request to make a "base peak in scan" chromatogram.
+
+
+ The .
+
+
+
+
+ Create a request to make an "base peak" chromatogram, based on a mass range.
+ That is: returns the most intense peak over a given range.
+
+
+ The low mass.
+
+
+ The high mass.
+
+
+ The .
+
+
+
+
+ Create a request to make an "base peak" mass chromatogram, based on a mass range.
+ That is: returns the mass of most intense peak over a given range.
+
+
+ The low mass.
+
+
+ The high mass.
+
+
+ The .
+
+
+
+
+ Create a request to make a "mass of base peak in scan" chromatogram.
+
+
+ The .
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Calculate tolerance factor, applied to supplied tolerance value, based on mode.
+
+
+ The mass.
+
+
+ The mode.
+
+
+ The factor to apply.
+
+
+
+
+ Create a request to make a "neutral fragment" chromatogram.
+ If this is a "fixed fragment" based on a given MS/MS scan filter,
+ the lowMass is positive, and the range is assumed to be "filter MS/MS mass - neutral mass".
+ If the chromatogram has no MS/MS mass, then
+ the lowMass = -neural -0.5 and the highMass is -neutral +0.5
+ To get amass range for a given scan,
+ the MS/MS mass from that scan's event must be added to both low and high masses
+
+ Low mass of range
+ High mass of range
+ Mass tolerance (applied to precursor in target scan). Defaults to 0.5 amu when null
+ Interface to generate a neural fragment chromatogram point
+
+
+
+ This represents the data for a chromatogram
+
+
+
+
+ Convert chromatogram signals to ChromatogramDataPlus interface
+
+ An array of signals
+ interface to chromatogram data
+
+
+
+ Create a Chromatogram signal, from time and intensity arrays
+
+ array of retention times
+ array of intensities at each time
+ The constructed signal, or null if either of the inputs are null, or the inputs are not the same length
+
+
+
+ Create a Chromatogram signal, from time, intensity and scan arrays
+
+ array of retention times
+ array of intensities at each time
+ array of scan numbers for each time
+ The constructed signal, or null if either of the inputs are null, or the inputs are not the same length
+
+
+
+ Create a Chromatogram signal, from time, intensity, scan and base peak arrays
+
+ array of retention times
+ array of intensities at each time
+ array of scan numbers for each time
+ Array of base peak masses for each time
+ The constructed signal, or null if either of the inputs are null, or the inputs are not the same length
+
+
+
+ Create an array of signals from . The Interface
+
+ describes data read from a file (if using IRawData). This constructor converts to an array of type Signal,
+ simplifying use of individual chromatograms with Peak integration.
+
+ data (usually read from file) to convert into signals
+ The constructed signals, or null if the input is null
+
+
+
+ Create chromatogram data interface from . The Interface
+ describes data read from a file (if using IRawData).
+
+ data (usually read from file) to convert into signals
+ The constructed signals, or null if the input is null
+
+
+
+ The wrapped chromatogram data.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The data to wrap
+
+
+
+
+ Gets the base peak array.
+
+
+
+
+ Gets the intensities array.
+
+
+
+
+ Gets the length.
+
+
+
+
+ Gets the positions array.
+
+
+
+
+ Gets the scan numbers array.
+
+
+
+
+ The signal times.
+
+
+
+
+ The signal base peak masses.
+
+
+
+
+ The signal intensities.
+
+
+
+
+ The signal scans.
+
+
+
+
+ Gets or sets the signal times.
+
+ The signal times.
+
+
+
+ Gets the times.
+
+
+
+
+ Gets or sets the signal intensities.
+
+ The signal intensities.
+
+
+
+ Gets the intensities.
+
+ The signal intensities.
+
+
+
+ Gets or sets the signal scans.
+
+ The signal scans.
+
+
+
+ Gets the signal scans.
+
+ The signal scans.
+
+
+
+ Gets or sets the signal base peak masses.
+
+ The signal times.
+
+
+
+ Gets the signal base peak masses.
+
+ The signal base peak masses. May be null (should not be used) when HasBasePeakData returns false
+
+
+
+ Gets the time at the end of the signal
+
+
+
+
+ Gets the time at the start of the signal
+
+
+
+
+ Gets the time range.
+
+
+
+
+ Gets the number of points in the signal
+
+
+
+
+ Gets a value indicating whether there is any base peak data in this signal
+
+
+
+
+ Creates a new object that is a (deep) copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ covert array to multi dimension.
+
+
+ The data.
+
+
+ The converted array.
+
+
+
+
+ covert array to multi dimension.
+
+
+ The data.
+
+
+ The converted array.
+
+
+
+
+ Gets times in minutes for each chromatogram
+
+
+
+
+ Gets the scan numbers for data points in each chromatogram
+
+
+
+
+ Gets the intensities for each chromatogram
+
+
+
+
+ Gets the number of chromatograms in this object
+
+
+
+
+ Test if the signal is valid
+
+ True if both times and intensities have been set, and are the same length
+
+
+
+ Initializes a new instance of the class.
+
+ Clone from this interface
+
+
+
+ Initializes a new instance of the class.
+
+
+ The times.
+
+
+ The intensities.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The times.
+
+
+ The intensities.
+
+
+ The scans.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The times.
+
+
+ The intensities.
+
+
+ The scans.
+
+
+ The base peaks.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Test if the data is contained in valid arrays of the same size
+
+
+ The times.
+
+
+ The intensities.
+
+
+ True if both times and intensities have been set, and are the same length
+
+
+
+
+ Test if the data is contained in valid arrays of the same size
+
+
+ The times.
+
+
+ The intensities.
+
+
+ The scans.
+
+
+ True if all of times intensities and scans have been set, and are the same length
+
+
+
+
+ Test if the data is contained in valid arrays of the same size
+
+
+ The times.
+
+
+ The intensities.
+
+
+ The scans.
+
+
+ The base Peaks.
+
+
+ True if all of times intensities and scans have been set, and are the same length
+
+
+
+
+ Add a delay to all times. This is intended to support "detector delays" where
+ multiple detector see the same sample at different times.
+
+
+ The delay.
+
+
+
+
+ Setting to define a chromatogram Trace.
+
+
+
+
+ The delay in minutes.
+
+
+
+
+ The scan filter.
+
+
+
+
+ The fragment mass.
+
+
+
+
+ Flag for including reference and exception peaks.
+
+
+
+
+ The mass ranges.
+
+
+
+
+ The trace.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor creates a new instance of ChromatogramSettings
+
+
+
+
+ Initializes a new instance of the class.
+ Constructor creates a new instance of ChromatogramSettings and
+ sets the type of trace to construct.
+
+
+ The type of trace to construct; see for possible values
+
+
+
+
+ Initializes a new instance of the class.
+ Constructor creates a new instance of ChromatogramSettings based on a read only interface
+
+
+ Access to the read only parameters
+
+
+
+
+ Initializes a new instance of the class.
+ Initialize settings for a mass chromatogram. Makes "TraceType.MassRange"
+
+
+ scan filter
+
+
+ The mass range(s)
+
+
+
+
+ Initializes a new instance of the class.
+ Initialize settings for a mass chromatogram. Makes "TraceType.MassRange"
+
+
+ scan filter
+
+
+ The mass range(s)
+
+
+
+
+ Initializes a new instance of the class.
+ Clones available data from the supplied interface.
+
+
+ The chromatogram settings.
+
+
+
+
+ copy range.
+
+
+ from (old value).
+
+
+ The index.
+
+
+
+
+ Gets or sets the compound names.
+
+
+
+
+ Gets or sets the delay in minutes.
+
+ Floating point delay in minutes
+
+
+
+ Gets or sets the filter used in searching scans during trace build
+
+
+
+
+ Gets or sets the fragment mass for neutral fragment filters.
+
+ Floating point fragment mass for neutral fragment filters
+
+
+
+ Gets or sets a value indicating whether reference and exception peaks are included
+ in this chromatogram trace
+
+
+
+
+ Gets or sets the number of mass ranges, or wavelength ranges for PDA.
+
+
+ If is MassRange then mass range values are used to build trace.
+
+ Numeric count of mass ranges
+
+
+
+ Gets or sets the mass ranges.
+
+
+ If is MassRange then mass range values are used to build trace.
+
+ Array of mass ranges
+
+
+
+ Gets or sets the type of trace to construct
+
+ see for more details
+
+
+
+ Convert from interface chromatogram settings.
+ Note: This method is available as static converter, not
+ a constructor overload, to avoid ambiguity with exiting overloads.
+
+
+ The settings.
+
+
+ The .
+
+
+
+
+ Copies all of the items to from this object into the returned object.
+
+
+ The clone.
+
+
+
+
+ Gets a range value at 0-based index.
+
+
+ Use to find out the count of mass ranges.
+
+
+ If is MassRange then mass range values are used to build trace.
+
+
+ Index at which to retrieve the range
+
+
+ value at give index
+
+
+
+
+ Sets a range value at 0-based index.
+
+
+ Set count of mass ranges using before setting any mass ranges.
+
+
+ If is MassRange then mass range values are used to build trace.
+
+
+ Index at which new range value is to be set
+
+
+ New value to be set
+
+
+
+
+ Defines the definitions required to reading the data files.
+
+
+
+
+ Low Resolution spectrum packet type.
+
+
+
+
+ Low Resolution spectrum packet type2.
+
+
+
+
+ High Resolution spectrum packet type.
+
+
+
+
+ Spectrum profileIndex type.
+
+
+
+
+ FTMS data type (centroids)
+
+
+
+
+ FTMS data type (profiles)
+
+
+
+
+ Compressed profile format for MAT95
+
+
+
+
+ Compressed profile format for MAT95 (high-res)
+
+
+
+
+ LowResolution Spectrum Type (early quantum version).
+ Also referred to as LR_SP_TYPE3 in some parts of FileIO.
+ Used for centroid data from quantum about 2000, 2001 instruments.
+
+
+
+
+ LowResolution Spectrum Type.
+ Also referred to as LR_SP_TYPE4 in some parts of FileIO.
+ Used for centroid data from quantum and some other post 2002 instruments.
+
+
+
+
+ Profile Spectrum Type
+
+
+
+
+ Profile Spectrum Type2
+
+
+
+
+ Profile Spectrum Type3
+
+
+
+
+ Mass profile scan type
+
+
+
+
+ PDA UV discrete channel packet type
+
+
+
+
+ PDA UV discrete channel index header type
+
+
+
+
+ PDA UV scanned spectrum header packet type
+
+
+
+
+ PDA UV scanned spectrum header index header type
+
+
+
+
+ UV channel packet type
+
+
+
+
+ LT combined data type (profiles).
+
+
+
+
+ LT Combined Centroids.
+
+
+
+
+ Bitwise left shift operator, to get high 16 bits.
+
+ Number to shift
+ the high 16 bits of a 32 bit value
+
+
+
+ Get the low 16 bits of a 32 bit value.
+
+ Number to mask
+ The low 16 bits
+
+
+
+ Helper function to identifying the profile scan based on the given packet type.
+
+ packet type
+ True if this is a profile packet type
+
+
+
+ EH - The reason for the separation of packet type into profile/centroid and scan type is to
+ support legacy LCQ code that utilized the packet type to determine whether or not a scan
+ is profile or centroid. This becomes a problem with data converted from ICIS, for example,
+ which may store profile data in the centroid packet format. Setting this value is only necessary
+ where profile or centroid is written to a packet type that is not assumed to be of that
+ data type.
+
+
+
+
+ default is to use the packet type to determine profile/centroid
+
+
+
+
+ Centroid type
+
+
+
+
+ profile type.
+
+
+
+
+ The default scan provider.
+
+
+
+
+ Get a scan from a scan number.
+
+
+ The raw data.
+
+
+ The scan number.
+
+
+ The scan at "scan number"
+
+
+
+
+ The get scan at time.
+
+
+ The raw file.
+
+
+ The time.
+
+
+ The scan nearest to the given time.
+
+
+
+
+ This static factory class provides method to create a device method for an instrument method.
+
+
+
+
+ Creates the device method.
+
+ Optional: Data for the device
+ The IDeviceMethod instance.
+ name;Device method name cannot be empty.
+
+
+
+ Creates the device method factory.
+
+ Device method writer factory object.
+
+
+
+ IsotopeConsolidation - which function will be used for isotope consolidation
+
+
+
+
+ RemoveAllIsotopes - use function that strips all the isotopes during processing
+
+
+
+
+ KeepNonBaseIsotopes - use function that keeps non-base isotopes in the formula
+
+
+
+
+ Settings for the elemental compositions (formula searching) algorithm
+
+
+
+
+ Gets or sets a value indicating whether all features of elemental composition should be used. When false, all other settings are ignored
+ and results of searches should be returned as an empty collection.
+
+
+
+
+ Gets or sets the Lowest mass for use in mono isotopic mass searching
+
+
+
+
+ Gets or sets the Highest mass for mono isotopic mass searching
+
+
+
+
+ Gets or sets a value indicating whether to use the calculated mono isotopic mass, otherwise use the mass passed in.
+ Applies when "CalculateCompositionForMass" is called.
+
+
+
+
+ Gets or sets the minimum percentage threshold from the base peak for the mono isotopic mass
+
+
+
+
+ Gets or sets the tolerance (in amu) around the value to set limits when searching for mono isotopic mass.
+ Mass of mono isotopic peak must be within a limit of:
+ -MonoIsotopicSearchMassThreshold to +MonoIsotopicSearchMassThreshold
+ from the mass of a spectral peak.
+
+
+
+
+ Gets or sets the center of search range for mono isotopic mass
+ as a delta from the mass of a peak being analyzed
+
+
+
+
+ Gets or sets a string representation of the centroiding algorithm (for use on the UI)
+
+
+
+
+ Gets or sets a string representation of Missing Penalty Mode (for use in UI)
+
+
+
+
+ Gets or sets String representation of the SpectralFitNormalizationMode (for use in UI)
+
+
+
+
+ Gets or sets a string representation of (for use in UI)
+
+
+
+
+ Gets or sets a string representation of (for use in UI)
+
+
+
+
+ Gets or sets a value which determines how the masses are compared.
+
+
+
+
+ Gets or sets a value which determines the maximum error in mass for something to pass tolerance, in the selected units.
+
+
+
+
+ Gets or sets a value which determines how the fragment masses are compared.
+
+
+
+
+ Gets or sets a value which determines the maximum error in MSMS mass for something to pass tolerance, in the selected units.
+
+
+
+
+ Gets or sets the charge state of the fragmented ion
+
+
+
+
+ Gets or sets the String representation of (for use in UI)
+
+
+
+
+ Gets or sets a collection of elemental isotopes, and mix/max expected counts in formulae
+
+
+
+
+ Gets or sets a value indicating whether the element abundance table "Representative" should be use.
+ If it is not set, the "Protein" abundance table should be used.
+
+
+
+
+ Gets or sets a value indicating whether elemental compositions to be based on fitting against the supplied scan
+
+
+
+
+ Gets or sets a value indicating whether calibration reference data should be included in the scan.
+
+
+
+
+ Gets or sets the penalty (in units of spectral distance) that is
+ applied to a missing packet. A packet is missing if it exists in the theoretical pattern (above threshold)
+ but is not found in the measured spectrum (or too far away)
+
+
+
+
+ Gets or sets a value indicating whether the distances are normalized to have a max of 1.0 per packet (TrueDistance=false)
+ or of 1.414 (sqrt(2.0) per packet (TrueDistance=true)
+
+
+
+
+ Gets or sets a threshold which determines the smallest packets that are processed. It is applied to the
+ theoretical isotope pattern of an elemental composition candidate. Note that it is
+ not applied to the input spectrum.
+ Therefore a small pattern (BPI of pattern is smaller than 100% of input pattern
+ intensity) may still give good fits.
+
+
+
+
+ Gets or sets a value indicating whether the intensity error is taken absolute. This means that an intensity
+ that is expected to be 10% but is 9% has an error of 1%. If false, the
+ intensity error is taken relative. This means that an intensity that is
+ expected to be 10% but is 9% has an error of 10%.
+
+
+
+
+ Gets or sets a value indicating whether the spectral distance of an isotope packet is scaled with its intensity.
+ I.e: the intensity deviation of a small packet counts less
+ than the same deviation of a large packet.
+ see also WeightMassErrorByAbundance property.
+
+
+
+
+ Gets or sets a value indicating whether the spectral distance of an isotope packet is scaled with its intensity.
+ I.e: the mass deviation of a small packet counts less
+ than the same deviation of a large packet.
+ See also WeightIntensityErrorByAbundance property.
+
+
+
+
+ Gets or sets the error in units of standard deviation that is defined to give a 100% Spectral
+ Identity value. Together with the property ZeroFitExpectedError, these
+ two values define the scale of a 0 to 100 % error.
+
+
+
+
+ Gets or sets the error in units of standard deviation that is defined to give a 0% Spectral
+ Identity value. Together with the property HundredFitExpectedError, these
+ two values define the scale of a 0 to 100 % error.
+
+
+
+
+ Gets or sets The expected intensity error in units of standard deviation.
+ A standard deviation is defined such that 68% of all events are in the range X ± stddev.
+ 95% of all events are in the range X± 2*stddev
+
+
+
+
+ Gets or sets the expected mass error in units of standard deviation.
+ A standard deviation is defined such that 68% of all events are in the range X ± stddev.
+ 95% of all events are in the range X± 2*stddev.
+
+
+
+
+ Gets or sets the charge of the mass for which an
+ elemental composition is to be calculated.
+
+
+
+
+ Gets or sets the number of elemental compositions
+ that are to be saved. If the number of fits
+ found is bigger than "Best", only the best
+ "Best" ( judged by their deviation from the
+ specified mass) are saved in the result array.
+
+
+
+
+ Gets or sets the centroid algorithm that is used to calculate isotope
+ pattern masses from their isotopic distribution
+
+
+
+
+ Gets or sets The lowest acceptable RDB for a formula
+ Note that this property returns the RDB value for instances that contain
+ absolute RDB values. It returns RDB / 100 amu for instances that contain relative values.
+ Rather use GetRDB_LimitLow(). That one works for both absolute and relative limits
+
+
+
+
+ Gets or sets maximum RDB (ring double bond equivalence) for returned formulae.
+
+
+
+
+ Validates the ElementalCompositionParameters values
+
+
+ if parameters are invalid
+
+
+
+
+ Gets or sets the resolution that is used to calculate the theoretical isotope patterns.
+ This should be the same resolution with which the measured spectrum was acquired.
+
+
+
+
+ Gets or sets a value which determines if the nitrogen rule should be used. NitrogenRule enum for details
+
+
+
+
+ Gets or sets the theoretical and measured isotope for the Spectral Distance calculation,
+ patterns must be normalized. There are three different normalization modes available.
+
+
+
+
+ Gets or sets a value indicating whether to use auto dynamic range, for spectral distance
+ isotope simulations. If this is true (default) then the property "DynamicRange" is automatically adjusted,
+ each time spectral distance is calculated, based on the value of the theoretical peak intensity threshold,
+ which may also be auto calculated, or set to
+ depending on the value of .
+
+
+
+
+ Gets or sets a value indicating whether to apply dynamic A0 recalibration for spectral distance.
+ It is set to false by default.
+
+
+
+
+ Gets or sets MSMS SignalToNoise threshold for MSMS spectral processing
+
+
+
+
+ Gets or sets SpectralFit score cutoff for which formulas MSMS ranking will not be computed - will be set as 1
+
+
+
+
+ Gets or sets which function will be used for isotope consolidation - 0 - RemoveAllIsotopes, 1 -KeepNonBaseIsotopes
+
+
+
+
+ Gets or sets the weight applied to Spectral Fit in the re-ranking algorithm
+
+
+
+
+ Gets or sets the weight applied to MsCoverage in the re-ranking algorithm
+
+
+
+
+ Gets or sets the weight applied to MsMsCoverage in the re-ranking algorithm
+
+
+
+
+ Gets or sets the weight applied to PatternCoverageWeight in the re-ranking algorithm
+
+
+
+
+ Gets or sets the weight applied to MsMsShiftMeasure in the re-ranking algorithm
+
+
+
+
+ Gets or sets a value indicating whether or not re-ranking will be performed
+
+
+
+
+ Creates a default list of elements for searching
+
+
+
+
+ A single possible result (formula) for elemental composition of a mass
+
+
+
+
+ The _mass.
+
+
+
+
+ The _combined fit.
+
+
+
+
+ The _delta mass.
+
+
+
+
+ The _formula.
+
+
+
+
+ The _pattern fit.
+
+
+
+
+ The RDB equivalents.
+
+
+
+
+ The _spectral distance.
+
+
+
+
+ The _mass deviation.
+
+
+
+
+ The _score.
+
+
+
+
+ The _composition.
+
+
+
+
+ The _isotopePackets
+
+
+
+
+ Gets or sets the fit value in percent.
+
+
+
+
+ Gets or sets the Elemental composition formula, with subscript style digits for elemental quantities.
+ This formula defines the istope of the peak which was matched with the sample.
+
+
+
+
+ Gets or sets the Elemental composition formula, with subscript style digits for elemental quantities.
+ This is the formula which contains the peak from the sample as one of it's istopes.
+ It can be used to redraw the isotope plot.
+
+
+
+
+ Gets or sets the mass of Composition (the mass of the calculated formula)
+
+
+
+
+ Gets or sets the combined fit factor [range from 0% to 100%]. This is a linear
+ combination between pattern fit and mass deviation.
+
+
+
+
+ Gets or sets the difference between the mass of the formula and the mass being searched.
+ This is the mass difference in amu "mass to search for" - "mass of this formula".
+
+
+
+
+ Gets or sets the elemental formula (plain text)
+
+
+
+
+ Gets or sets the fit factor [range from 0% to 100%] that indicates fit between theoretical and
+ measured isotope pattern.
+
+
+
+
+ Gets or sets the calculated RDB for the found formula
+
+
+
+
+ Gets or sets the Spectral Distance. This is the distance between a theoretical
+ and a measured isotope pattern of n packets in an n-dimensional space.
+
+
+
+
+ Gets or sets the deviation in mass, using the same tolerance mode used when searching
+
+
+
+
+ Gets or sets the IsotopePackets.
+
+
+
+
+ Gets or sets the number of peaks matched to an isotope by spectral distance algorithm,
+ that is: All peaks which contributed to the scoring (even if the peak was out of mass and intensity
+ tolerance box).
+
+
+
+
+ Gets or sets the number of isotopes in the pattern tested for match against sample peaks
+
+
+
+
+ Gets or sets the number of isotopes in the pattern which were matched
+ against a sample peak, and were within mass/intensity tolerance limits
+
+
+
+
+ Gets or sets the number of isotopes where there is at least one sample peak
+ within 10* mass tolerance
+
+
+
+
+ Gets or sets the coverage of experimental spectrum by isotopic pattern
+
+
+
+
+ Gets or sets the coverage of theoretical spectrum by isotopic pattern
+
+
+
+
+ Gets or sets the computed coverage of MsMs spectrum
+
+
+
+
+ Gets or sets the computed measure of matches with average shift comparing to the precursor shift
+
+
+
+
+ Gets or sets the number of matched peaks in MSMS spectrum
+
+
+
+
+ Gets or sets the list of matched fragments
+
+
+
+
+ Gets or sets Combined score used for re-ranking results based on supplied weights
+
+
+
+
+ Gets or sets Rank of the candidate formula based on Combined score
+
+
+
+
+ isotope packet
+
+
+
+
+ Gets or sets Mass of theoretical isotope
+
+
+
+
+ Gets or sets Mass of measured centroid
+
+
+
+
+ Gets or sets Intensity of theoretical isotope
+
+
+
+
+ Gets or sets Intensity of measured centroid
+
+
+
+
+ Gets or sets the index into the original scan for the matched peak
+
+
+
+
+ Gets or sets a value indicating whether Theory has a close match with Measured
+
+
+
+
+ Gets or sets the match mode. Defines the quality of the match.
+
+
+
+
+ Initializes a new instance of the class.
+ default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ constructor
+
+
+ The intensityMeasured
+
+
+ The intensityTheory
+
+
+ The massMeasured
+
+
+ The massTheory
+
+
+ The matched
+
+
+
+
+ Class containing assignments of formulas to masses to the fragmentation spectrum
+
+
+
+
+ Gets or sets mass in fragmentation spectrum
+
+
+
+
+ Gets or sets formula matched to the Mass in the fragmentation spectrum
+
+
+
+
+ Gets or sets DeltaMass of assigned formula from the observed m/z
+
+
+
+
+ Gets or sets Intensity of the fragment
+
+
+
+
+ Gets or sets Signal to noise ratio of the fragment
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+
+ assigned mass
+ assigned formula
+
+
+
+ Initializes a new instance of the class
+
+ assigned mass
+ assigned formula
+ observed delta mass
+ observed intensity
+ observed signal to noise
+
+
+
+ Initializes a new instance of the class.
+ default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct from values. (Faster than constructing and setting properties, as property setters in this
+ class may be instrumented with change notification).
+
+
+ Sets CombinedFit property
+
+
+ Sets DeltaMass property
+
+
+ Sets Formula property
+
+
+ Sets Mass property
+
+
+ Sets MassDeviation property
+
+
+ Sets PatternFit property
+
+
+ Sets RdbEquivalents property
+
+
+ Sets SpectralDistance property
+
+
+ Sets Score property
+
+
+ Sets MatchedPeaks property
+
+
+ Sets NoPenaltyPeaks property
+
+
+ Sets BroadSearchMatches property
+
+
+ Sets IsotopesTested property
+
+
+ Sets Composition property. The is the isotope composition matched to the experminal peak
+
+
+
+
+ Add isotope packet into the ElementalCompositionResult
+
+
+ The intensityMeasured
+
+
+ The intensityTheory
+
+
+ The massMeasured
+
+
+ The massTheory
+
+
+ The matched
+
+ How the isotope was matched (within the mass and intensity limits)
+ Index of the matched peak in the original scan
+
+
+
+ Compares only the formula for equality
+
+
+ The Result who's formula is compared.
+
+
+ True if equal
+
+
+
+
+ A collection of element subsets.
+ Used to supply data to the elemental composition algorithm.
+
+
+
+
+ Add an element to the end of the collection.
+
+
+ Element to add
+
+
+
+
+ Add an element, keeping the list in nominal mass order.
+
+
+ Element to add
+
+
+
+
+ Remove all element subsets with a given sign
+
+
+ If the subset has this sign, it is removed
+
+
+
+
+ Reset the "UseRatio" flag for all subsets in the collection to a given value.
+
+
+ Value to set all "UseRatio" flags.
+
+
+
+
+ Test if there is any in the collection with a given sign
+
+
+ Sign to look for
+
+
+ true if at least one in this collection has the given Sign
+
+
+
+
+ Reset the "in use" flag for all subsets in the collection to a given value.
+
+
+ Value to set all "in use" flags.
+
+
+
+
+ Defines an isotope of an element, and quantity limits of that isotope.
+ This is an input parameter to elemental composition searching.
+
+
+
+
+
+ The chemical symbol.
+
+
+
+
+ The min abs count of this isotope.
+
+
+
+
+ The max abs count of this isotope
+
+
+
+
+ The min relative count of this isotope.
+
+
+
+
+ The max relative count of this isotope
+
+
+
+
+ If "relative" values (ratios) should be used.
+
+
+
+
+ Is this isotope used?
+
+
+
+
+ The nominal mass
+
+
+
+
+ The isotope mass.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct from all possible settings
+ (Obsolete form, use initializer, as many of the values have the same type,
+ and this is not "order safe").
+
+
+ The sign.
+
+
+ The mass.
+
+
+ The nominal.
+
+
+ The min Abs.
+
+
+ The max Abs.
+
+
+ The min Relative.
+
+
+ The max Relative.
+
+
+ The use Ratio.
+
+
+ The in Use.
+
+
+
+
+ Gets or sets the chemical symbol for the element
+
+
+
+
+ Gets or sets the maximum count of this isotope in returned formula
+
+
+
+
+ Gets or sets the maximum count of this element in the returned formula
+
+
+
+
+ Gets or sets the maximum count of this isotope in returned formulae
+
+
+
+
+ Gets or sets the minimum count of this isotope in returned formulae
+
+
+
+
+ Gets or sets the minimum relative amount of this isotope
+
+
+
+
+ Gets or sets the maximum relative amount of this isotope
+
+
+
+
+ Gets or sets the nominal mass of this isotope
+
+
+
+
+ Gets the isotope including its nominal mass. For example "12 C" or "13 C".
+
+
+
+
+ Gets or sets the exact mass of the isotope
+
+
+
+
+ Gets or sets a value indicating whether this element is used for searching.
+
+
+
+
+ Gets or sets a value indicating whether the "Relative" min and max count of isotopes is used.
+
+
+
+
+ Enumeration of possible bar code status values
+
+
+
+
+ NotRead status.
+
+
+
+
+ Read status.
+
+
+
+
+ Unreadable status.
+
+
+
+
+ Error status.
+
+
+
+
+ Wait status.
+
+
+
+
+ Enumeration of sample types
+
+
+
+
+ Unknown sample
+
+
+
+
+ Blank sample
+
+
+
+
+ QC sample
+
+
+
+
+ Standard Clear (None) sample
+
+
+
+
+ Standard Update (None) sample
+
+
+
+
+ Standard Bracket (Open) sample
+
+
+
+
+ Standard Bracket Start (multiple brackets) sample
+
+
+
+
+ Standard Bracket End (multiple brackets) sample
+
+
+
+
+ Program sample
+
+
+
+
+ A sample which only contains solvent
+
+
+
+
+ Blank which includes internal standard only.
+
+
+
+
+ Matrix sample with known amounts of surrogates
+
+
+
+
+ Matrix sample with known amounts of target.
+
+
+
+
+ Data acquisition device
+
+
+
+
+ No instrument
+
+
+
+
+ Mass spectrometer
+
+
+
+
+ Data collected from an analog input connected to a mass spectrometer.
+
+
+
+
+ An A to D device
+
+
+
+
+ UV/Vis detector
+
+
+
+
+ PDA (UV detector)
+
+
+
+
+ Unknown detector type or instrument which collects only status
+
+
+
+
+ Enumeration of trace types, for chromatograms.
+ Note: legacy C++ file reader does not support
+ analog trace numbers above "4" or UV above "channel D".
+ Traces are organized in blocks of 10
+ For example:
+
+ StartAnalogChromatogramTraces=10 (not a valid trace type, just a limit)
+ Analog1 to Analog8 = 11 to 18
+ EndAnalogChromatogramTraces =19 (not a valid trace type, just a limit)
+ Next block:
+ StartPDAChromatogramTraces = 20
+ Etc.
+
+
+
+
+
+ Marks the start of the MS trace types (this enum value +1)
+
+
+
+
+ Chromatogram summing between two masses
+
+
+
+
+ Total Ion Current
+
+
+
+
+ Largest peak in scan (or mass range in scan)
+
+
+
+
+ Neutral fragment
+
+
+
+
+ Marks the end of the MS trace types (this enum value -1)
+
+
+
+
+ Marks the start of the Analog trace types (this enum value +1)
+
+
+
+
+ Analog channel 1
+
+
+
+
+ Analog channel 2
+
+
+
+
+ Analog channel 3
+
+
+
+
+ Analog channel 4
+
+
+
+
+ Analog channel 5
+
+
+
+
+ Analog channel 6
+
+
+
+
+ Analog channel 6
+
+
+
+
+ Analog channel 6
+
+
+
+
+ Marks the end of the Analog trace types (this enum value -1)
+
+
+
+
+ Marks the start of the PDA trace types (this enum value +1)
+
+
+
+
+ Sum of values over a range of wavelengths
+
+
+
+
+ Average of all values in PDA scan
+
+
+
+
+ Largest value in scan (or wavelength range in scan)
+
+
+
+
+ Marks the end of the PDA trace types (this enum value -1)
+
+
+
+
+ Marks the start of the UV trace types (this enum value +1)
+
+
+
+
+ UV Channel A
+
+
+
+
+ UV Channel B
+
+
+
+
+ UV Channel C
+
+
+
+
+ UV Channel D
+
+
+
+
+ UV Channel E
+
+
+
+
+ UV Channel F
+
+
+
+
+ UV Channel G
+
+
+
+
+ UV Channel H
+
+
+
+
+ Marks the end of the UV trace types (this enum value -1)
+
+
+
+
+ A to D converter channels start at this +1
+
+
+
+
+ A to D channel 1
+
+
+
+
+ A to D channel 2
+
+
+
+
+ A to D channel 3
+
+
+
+
+ A to D channel 3 (old naming convention)
+ use "A2DChannel3" in new code
+
+
+
+
+ A to D channel 4
+
+
+
+
+ A to D channel 4 (old naming convention)
+ use "A2DChannel4" in new code
+
+
+
+
+ A to D channel 5
+
+
+
+
+ A to D channel 6
+
+
+
+
+ A to D channel 7
+
+
+
+
+ A to D channel 8
+
+
+
+
+ A to D converter channels end at this -1
+
+
+
+
+ Marks the start of all trace types (this enum value -1)
+
+
+
+
+ enumeration for data type for the fields used by
+ records of TuneData, StatusLog, TrailerExtra
+ These are upper case names, so that they don't clash with standard
+ type names.
+
+
+
+ Null data type. No data is available (just a label)
+
+
+ character data type (1 byte)
+
+
+ true/false data type/ Similar to boolean, 1 byte of data displayed as True or False
+
+
+ Yes/No data type. 1 byte of data displayed as Yes or No
+
+
+ ON/OFF data type. 1 byte of data displayed as On or Off
+
+
+ unsigned char data type
+
+
+ short data type
+
+
+ unsigned short data type
+
+
+
+ long data type
+ Note: this is referred as a long (4-byte) in C++. It's not the same size as long in C#.
+
+
+
+
+ unsigned log data type
+ Note: this is referred as an unsigned long (4-byte) in C++. It's not the same size as unsigned long in C#.
+
+
+
+ float data type
+
+
+ double data type
+
+
+ string data type (single byte chars)
+
+
+ string data type (wide chars, unicode)
+
+
+
+ enumeration of all initial and Timed events.
+ Note. The Threshold and Bunch Factor parameters are the most important ones
+ in controlling peak detection.
+
+
+
+
+ No peak detector event
+
+
+
+
+ Directly related to the RMS noise in the chromatogram,
+ this is Threshold, the fundamental control used for peak detection.
+ Set the threshold at the start of a peak
+
+
+
+
+ Directly related to the RMS noise in the chromatogram,
+ this is Threshold, the fundamental control used for peak detection.
+ Set the threshold at the end of a peak.
+
+
+
+
+ Controls the area cutoff.
+ Any peaks with a final area less than the area threshold will not be detected.
+ This control is in units of area for the data.
+
+
+
+
+ The peak to peak resolution threshold controls how much peak overlap must be present
+ before two or more adjacent peaks create a peak cluster.
+ Peak clusters will have a baseline drop instead of valley to valley baselines.
+ This is specified as a percent of peak height overlap.
+
+
+
+
+ Permit detection of a negative going peak.
+ Automatically resets after a negative peak has been found.
+
+
+
+
+ The Bunch Factor is the number of points grouped together during peak detection.
+ It controls the bunching of chromatographic points during integration and does not
+ affect the final area calculation of the peak.
+ The Bunch Factor must be an integer between 1 and 6;
+ a high bunch factor groups peaks into clusters.
+
+
+
+
+ Controls how closely the baseline should follow the overall shape of the chromatogram.
+ A lower tension traces the baseline to follow changes in the chromatogram more closely.
+ A high baseline tension follows the baseline less closely,
+ over longer time intervals. Set in minutes.
+
+
+
+
+ Using this event, you can tangent skim any peak clusters.
+ By default, it chooses the tallest peak in a cluster as the parent.
+ You can also identify which peak in the cluster is the parent.
+ Tangent skim peaks are detected on either side (or both sides) of the parent peak.
+ Tangent skim automatically resets at the end of the peak cluster.
+
+
+
+
+ Allows peak shoulders to be detected (peaks which are separated by an inflection rather than a valley)
+ Sets a threshold for the derivative.
+
+
+
+
+ Disables peak shoulder detection.
+
+
+
+
+ Stop detecting peaks, until the next on event.
+
+
+
+
+ Start detecting peaks again.
+
+
+
+
+ Force the following peaks to be treated as a cluster (single peak).
+
+
+
+
+ End the forced clustering of peaks.
+
+
+
+
+ Prevent any peaks from being clustered.
+
+
+
+
+ Permit clusters to occur again.
+
+
+
+
+ Determines if ion ratio checks are based on an absolute or relative window, from the expected percentage.
+
+
+
+
+ Window is an absolute % range. For example: 50% +/- absolute 10% gives 40-60%
+
+
+
+
+ Window is a relative range, for example: 50% +/ relative 10% gives 45%-55%.
+
+
+
+
+ Defines electrical polarity
+
+
+
+
+ Positive charge
+
+
+
+
+ Negative charge
+
+
+
+
+ Specifies how the valley between resolved peaks is measured (in what units)
+
+
+
+
+ Peaks are measured at full with half maximum.
+ This implies that two close peaks will both hit half maximum at the valley,
+ and is equivalent to 100% valley height (no valley), or just starting to be resolved.
+
+
+
+
+ Valley between two resolved peaks is 10% of peak height.
+ Used for most accurate mass instruments.
+
+
+
+
+ The shape of the peaks to simulate, when making a profile out of an isotope pattern.
+
+
+
+
+ Create Profile with a Gaussian peak shape.
+ (Legacy mode, as used in common core 2.0)
+
+
+
+
+ Create profile with a cosine peak shape
+
+
+
+
+ Create profile with a triangular peak shape
+
+
+
+
+ Create profile with a Lorentzian peaks shape
+
+
+
+
+ Use: Updated Gaussian table
+ This table is designed to allow slightly higher
+ precision in simulation and higher performance
+
+
+
+
+ Specifies a method of calculation centroids from a profile.
+
+
+
+
+ used in LCQ, TSQ, Quantum
+
+
+
+
+ Austin tweaking of TSQ algorithm
+
+
+
+
+ used in MAT95 and DFS products
+
+
+
+
+ used in Orbitrap and FT analyzers
+
+
+
+
+ Specifies units for measuring mass tolerance.
+ Tolerance is used to determine if a results should be kept,
+ in formula search. If the exact mass of a formula is not within tolerance
+ of a measured mass from an instrument, then the formula is not considered a valid result.
+
+
+
+
+ No tolerance mode
+
+
+
+
+ Atomic mass units (or Daltons)
+
+
+
+
+ Milli Mass Units (1/1000 Dalton)
+
+
+
+
+ Parts Per Million
+
+
+
+
+ If a packet of a theoretical pattern is not found in the measured pattern, this causes
+ a penalty. This enum defines the magnitude of the penalty
+
+
+
+
+ The penalty is one standard deviation
+
+
+
+
+ The penalty is four standard deviations
+
+
+
+
+ The penalty is sixteen standard deviations
+
+
+
+
+ The penalty is the spectral distance to the closest packet
+
+
+
+
+ The penalty is selected automatically. According to S/N
+
+
+
+
+ The penalty is selected automatically. According to S/N and ion statistic
+
+
+
+
+ For the Spectral Distance calculation, the theoretical and measured isotope
+ patterns must be normalized. There are three different normalization modes available.
+
+
+
+
+ Base peak normalization means that base
+ peak intensities are assumed to be identical.
+
+
+
+
+ If the mode is LINEAR, both theoretical and measured
+ spectrum are normalized such that the sum of their
+ intensity differences is minimized.
+
+
+
+
+ If the mode is QUADRATIC, both theoretical and measured
+ spectrum are normalized such that the sum of their
+ squared intensity differences is minimized.
+
+
+
+
+ The N-Rule builds on the fact that any compound
+ containing C,H,O,N,S elements has an even number
+ of N atoms if its molecular weight is even and
+ has an odd number of N atoms if its molecular
+ weight is odd. So if you want possible elemental
+ compositions for an molecular ion that has an even
+ mass, it makes no sense to display elemental composition
+ candidates with an odd number of N-atoms.
+
+
+
+
+ No limitations are imposed on results based on this rule.
+
+
+
+
+ For the EvenElectronIons mode, elemental compositions
+ containing N-atoms are only displayed if their RDB
+ ( Ring and double bond equivalent ) has an integer value
+ ( -1.0 0.0 1.0 2.0 … ); compositions containing N-atoms
+ with an RDB value of -0.5 0.5 1.5.. are not displayed.
+
+
+
+
+ For the OddElectronIons mode, elemental compositions
+ containing N-atoms are only displayed if their RDB
+ ( Ring and double bond equivalent ) has an non-integer value
+ ( -0.5 0.5 1.5.. ); compositions containing N-atoms
+ with an RDB value of -1.0 0.0 1.0 2.0 … are not displayed.
+
+
+
+
+ Units of data from a UV or analog devices (if known).
+
+
+
+
+ No units or unknown units
+
+
+
+
+ straight AU
+
+
+
+
+ Milli AU
+
+
+
+
+ micro AU
+
+
+
+
+ Units are Volts
+
+
+
+
+ Units are Millivolts
+
+
+
+
+ micro volts
+
+
+
+
+ Gives orientation whether or not a packet is inside the expected mass and intensity window (= Expectation rectangle)
+ If it is outside: it tells where the packet lies:
+ North: intensity too big.
+ South: Intensity too small
+ West: Mass too low.
+ East: Mass too big.
+
+
+
+
+ Unknown or not initialized yet
+
+
+
+
+ Packet has lower mass and higher intensity than expected
+
+
+
+
+ Packet has lower mass than expected but correct intensity
+
+
+
+
+ Packet has lower mass and lower intensity than expected
+
+
+
+
+ Packet has correct mass but lower intensity than expected
+
+
+
+
+ Packet has higher mass and lower intensity than expected
+
+
+
+
+ Packet has correct intensity but mass but higher mass than expected
+
+
+
+
+ Packet has higher mass and higher intensity than expected
+
+
+
+
+ Packet has correct mass and higher intensity than expected
+
+
+
+
+ Packet is inside expected error limits
+
+
+
+
+ The spectrum packet types.
+ Internally, within raw files, these are defined simply as "a short integer packet type"
+ These are then mapped to "constants".
+ It is possible that types may be returned by from raw data, or other transmissions, which
+ are outside of this range.
+ These types define original compression formats from instruments.
+ Note that most data values are returned as "double", when using IRawDataPlus
+ regardless of the compressed file format used.
+
+
+
+
+ No packet type is being specified.
+ This can be used as a method parameter to mean "use default".
+ This value is not valid when in a data record within a raw file.
+
+
+
+
+ Format for basic profiles (especially: 1990s San Jose instruments).
+ Packet Type 0.
+
+
+
+
+ Format for low resolution centroids (especially: 1990s San Jose instruments).
+ Packet Type 1.
+
+
+
+
+ Format for high resolution centroids (especially: 1990s San Jose instruments).
+ Packet Type 2.
+
+
+
+
+ Profile index.
+ Index into multiple segment profile data. Legacy flag, not returned within scans.
+ Packet Type 3.
+
+
+
+
+ Compressed accurate mass spectrum, legacy mass lab instruments.
+ Packet type 4
+
+
+
+
+ Standard accurate mass spectrum, legacy mass lab instruments.
+ Packet type 5
+
+
+
+
+ Standard uncalibrated spectrum, legacy mass lab instruments.
+ Packet type 6
+
+
+
+
+ Accurate Mass Profile Spectrum, legacy mass lab instruments.
+ Packet type 7
+
+
+
+
+ PDA UV discrete channel packet type.
+ Packet type 8
+
+
+
+
+ PDA UV discrete channel index header type.
+ (Typical for multi channel UV)
+ Packet type 9
+
+
+
+
+ PDA UV scanned spectrum header packet type
+ (Typical diode array detector format)
+ Packet type 10
+
+
+
+
+ PDA UV scanned spectrum header index header type
+ Packet type 11.
+
+
+
+
+ UV channel packet type
+ Packet type 12
+
+
+
+
+ MS Analog channel packet type
+ Packet type 13
+
+
+
+
+ Profile spectrum type 2. Older San Jose instruments (LCQ) format.
+ Packet type 14.
+
+
+
+
+ Low resolution spectrum type 2. Older San Jose instruments (LCQ) format.
+ Packet type 15.
+
+
+
+
+ Profile spectrum type 2. Quantum format.
+ Packet type 16.
+
+
+
+
+ Low resolution spectrum type 3. Quantum format.
+ Packet type 17.
+
+
+
+
+ Linear Trap (centroids).
+ This format may also return extended data from "Centroid stream".
+ Packet type 18.
+
+
+
+
+ Linear Trap (profiles).
+ This format may also return extended data from "Centroid stream".
+ Packet type 19.
+
+
+
+
+ FTMS data type (centroids)
+ This format may also return extended data from "Centroid stream".
+ Packet type 20.
+
+
+
+
+ FTMS data type (profiles)
+ This format may also return extended data from "Centroid stream".
+ Packet type 21.
+
+
+
+
+ Compressed profile format for MAT95 (high-res)
+ Packet type 22.
+
+
+
+
+ Compressed profile format for MAT95
+ Packet type 23.
+
+
+
+
+ Low Resolution Packet type 4 (Quantum) Centroid + Flags
+ Packet type 24.
+
+
+
+
+ Not a known type
+
+
+
+
+ Specifies a sequence bracket type.
+ This determines which groups of samples use the same calibration curve.
+
+
+
+
+ No bracket type specified.
+
+
+
+
+ Standards are Overlapped with adjacent brackets.
+
+
+
+
+ There is no bracketing. All samples in a sequence are a single group with one calibration curve.
+
+
+
+
+ Multiple groups which are not overlapped (do not share standards).
+
+
+
+
+ Groups of samples are automatically determined, based on sample types of each row.
+
+
+
+
+ Event list, includes both initial events and timed events.
+ Initial events are similar to properties of the peak detector.
+ They are always at the start of the list, and are not time triggered.
+ Timed events modify the initial values for a limited duration,
+ or control special features, such a detecting the next peak as "negative".
+ The additional functions are intended to assist in editing the list.
+ The initial events are at the start of the list
+ The timed events are in order
+
+
+
+
+ Gets the List of time events
+
+
+
+
+ Count the number of timed (as opposed to initial) events
+
+ The number of timed events
+
+
+
+ Step past any initial events, and find the first time event
+
+ The node for the first timed event
+
+
+
+ Find the first event matching a specific event code
+
+ The code to search for
+ (returned) the number of the event in the list
+ The node containing the first event matching the supplied event code
+
+
+
+ Find the first event matching a specific event code and kind
+
+ Initial or timed version
+ The code to search for
+ (returned) the number of the event in the list
+ The node containing the first event matching the supplied event code
+
+
+
+ Creates the initial default events for the collection
+
+
+
+
+ Make a copy of the current event collection
+
+ A copy of the event collection
+
+
+
+ Extends the "Scan" object to provide charge envolope information,
+ which is available from certain instrumnets.
+
+
+
+
+ Creates a new ExtendedScan from a Scan.
+ All extended data is empty
+
+
+
+
+
+ Default constructor for Extended Scan
+
+
+
+
+ Create an extended scan object from a file and a scan number.
+
+
+ File to read from
+
+
+ Scan number to read
+
+
+ The scan read, or null of the scan number if not valid
+
+
+
+
+ read extended scan data from file.
+
+
+ The raw file.
+
+
+ The scan number.
+
+
+ The stats.
+
+
+
+
+ Return a slice of a scan which only contains data within the supplied mass Range or ranges.
+ For example: For a scan with data from m/z 200 to 700, and a single mass range of 300 to 400:
+ This returns a new scan containing all data with the range 300 to 400.
+ All annotaion and charge envolope data is discarded, as peaks whcih make up envelopes are
+ not guranteed to be in any slice.
+
+ The mass ranges, where data should be retained. When multiple ranges are supplied,
+ all data which is in at least one range is included in the returned scan
+ If this is true, then the scan will reset the
+ scan's mass range to the bounds of the supplied mass ranges
+ This setting only applies when the scan has both profile and centroid data.
+ If true: When there isa centroid near the start or end of a range, and the first or
+ final "above zero" section of the profile includes that peak, then the profile is extended, to include the points
+ which contribute to that peak. A maximum of 10 points may be added
+ A copy of the scan, with only the data in the supplied ranges
+
+
+
+ Gets centroids with additional charge envelope information (when available)
+
+
+
+
+ Gets a value indicating whether charge envelope data
+ was recorded for this scan
+
+
+
+
+ Gets additional annotations per peak, related to change envelopes
+
+
+
+
+ Gets the change envelopes. This include overall information
+ about the envelope, plus the set of included peaks,
+
+
+
+
+ The file header.
+
+
+
+
+ Gets or sets the creator Id. The creator Id is the full text user name of the user
+ when the file is created.
+
+
+
+
+ Gets or sets the creator Login name.
+ The creator login name is the user name of the user
+ when the file is created, as entered at the "user name, password" screen in windows.
+
+
+
+
+ Gets or sets the creator Id. The creator Id is the full text user name of the user
+ when the file is created.
+
+
+
+
+ Gets or sets the creator Login name.
+ The creator login name is the user name of the user
+ when the file is created, as entered at the "user name, password" screen in windows.
+
+
+
+
+ Gets or sets the type of the file.
+ If the file is not recognized, the value of the FileType will be set to "Not Supported"
+
+
+
+
+ Gets or sets the file format revision
+ Note: this does not refer to revisions of the content.
+ It defines revisions of the binary files structure.
+
+
+
+
+ Gets or sets the file creation date in local time.
+
+
+
+
+ Gets or sets the modified date in local time.
+ File changed audit information (most recent change)
+
+
+ The modified date.
+
+
+
+
+ Gets or sets the number of times modified.
+
+
+ The number of times the file has been modified.
+
+
+
+
+ Gets or sets the number of times calibrated.
+
+
+ The number of times calibrated.
+
+
+
+
+ Gets or sets the file description.
+ User's narrative description of the file, 512 unicode characters (1024 bytes)
+
+
+ The file description.
+
+
+
+
+ Provides a means of reading headers from Xcalibur files.
+
+
+
+
+ Creates the reader.
+
+ File header reader factory object
+
+
+
+ Read a file header.
+ The file header contents are returned. The file is not kept open.
+
+ Name of file to read
+ Access to the contents of the file header.
+
+
+
+ This class is designed to allow iteration
+ through MS data in a file, based on a filter.
+ To use this, first open a raw file then
+ create this object based on the open file.
+ To process all the matching scans:
+
+ FilteredScans scans=new FilteredScans(myFile,"MS2");
+ int next=scans.NextSpectrumNumber;
+ while(next > 0)
+ {
+ scans.MoveSpectrumPosition (next);
+ var scan=myFile.GetSegmentedScanFromScanNumber(next,null);
+ //process the scan, then move to the next
+ next=scans.NextSpectrumNumber;
+ }
+
+
+
+
+
+ Test if the file is open
+
+
+ True if it is open.
+
+
+
+
+ Set the filter used for iterating over spectra.
+ This can be used with the method to iterate over scans with a certain filter
+
+ an object containing the Filter to be used for iterating over spectra
+
+
+
+ Initializes a new instance of the class.
+ Creates an iterator to step through the selected file
+
+
+ The file.
+
+
+ The scan filter.
+
+
+
+
+ Move the iterator to the start of the list.
+ Permitting this loop to process all matching scans
+
+ int next = iterate.MoveFirst();
+ int count = 0;
+
+ while (next > 0)
+ {
+ // add your application code to
+ // fetch and process scan "next"
+ // end of application code block
+
+ iterate.SpectrumPosition = next;
+ count++;
+ next = iterate.NextSpectrumNumber;
+ }
+
+
+ The first valid spectrum number, or -1 if not scans match the given filter
+
+
+
+ Move the iterator to the end of the list
+
+ The last valid spectrum number, or -1 if not scans match the given filter
+
+
+
+ Gets the filter used for iterating over spectra, in string form.
+ This can be used with the method to iterate over scans with a certain filter
+
+
+
+
+ Gets the Previous Spectrum, matching the filter
+ returns the previous spectrum number in file. 0 if there is no file open
+
+
+
+
+ Gets the Next Spectrum, matching the filter
+ returns the next spectrum number in file. 0 if there is no file open
+
+
+
+
+ Sets the CurrentSpectrumNumber to the new Spectrum Number
+ The Set property has no return value
+
+
+
+
+ Gets a value indicating whether there may be spectra before the current scan.
+ Note that this does not check if this scan matches the filter.
+ returns true if there is an Previous spectrum in file. Otherwise false
+
+
+
+
+ Gets a value indicating whether there are more scans after the current scan
+ Note that this does not check if this scan matches the filter.
+ returns true if there is an Next spectrum in file. Otherwise false
+
+
+
+
+ The filter extensions.
+ These are internal, as they are only
+ supported for use by the ScanEventHelper class.
+
+
+
+
+ Calculate the filter mass resolution.
+
+
+ The filter.
+
+
+ The .
+
+
+
+
+ Calculates the number of masses, corrected for multiple activations.
+
+
+ The filter.
+
+
+ The .
+
+
+
+
+ Test if the compensation voltage value is valid.
+
+
+ The filter.
+
+
+ The i.
+
+
+ The .
+
+
+
+
+ Defines a combination of plain text and interface defintions of filters.
+
+
+
+
+ Gets a Standard (parsable) text form of the filter. This does not include any compound names.
+
+
+
+
+ Gets the scan filer (as accessable fields)
+
+
+
+
+ Gets a string which combines the compound name and the filter text.
+
+
+
+
+ Gets the compound name
+
+
+
+
+ Creates a new instance of FilterWithString, parsing the filter based on
+ a supplied raw file.
+
+ The raw data, used to parse this filter
+ The text form of the filter
+
+
+
+ Creates a new instance of FilterWithString.
+
+
+
+
+ Gets a value indicating whether this object only has a compound name,
+ and does not have any filter text or filter interface defined.
+ When this is set: Only the Name property should be used.
+
+
+
+
+ Results of the find algorithm
+
+
+
+
+ Gets or sets the scan number for this result
+
+
+
+
+ Gets or sets the scan number predicted for this peak
+
+
+
+
+ Gets or sets the retention time of the peak which has been found
+
+
+
+
+ Gets or sets a score based on both forward and reverse matching factors
+
+
+
+
+ Gets or sets the score from forward search
+
+
+
+
+ Gets or sets the score from reverse search
+
+
+
+
+ Gets or sets the intensity of the supplied chromatogram at this result
+
+
+
+
+ Gets or sets the score from Match algorithm.
+
+
+
+
+ Gets or sets the peak found for this result
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+
+ An exact copy of the current collection.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Copy constructor
+
+
+ object to copy
+
+
+
+
+ Settings for the spectrum find algorithm.
+ This algorithm validates a detected peak,
+ by proving that the masses in the supplied spectrum for the peak
+ maximize near the peak.
+
+
+
+
+ Gets or sets the forward threshold for find algorithm.
+
+
+
+
+ Gets or sets the match threshold for find algorithm
+
+
+
+
+ Gets or sets the reverse threshold for find algorithm
+
+
+
+
+ Gets or sets the spec points.
+
+ The spec points.
+
+
+
+ Gets the spec points.
+
+ The spec points.
+
+
+
+ Get a copy of the find spectrum
+
+
+ A copy of the find spectrum.
+
+
+
+
+ Update the spectrum (for the find algorithm)
+
+ The spectrum to find
+
+
+
+
+ The forward threshold.
+
+
+
+
+ The match threshold.
+
+
+
+
+ The reverse threshold.
+
+
+
+
+ The find spectrum.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ Make a copy of this object
+
+ a copy of this object
+
+
+
+ User parameters for the Genesis peak integration algorithm.
+ These settings determine how the chromatogram is integrated.
+
+
+
+
+ Gets or sets a value indicating whether to constrain the peak width of a detected peak (remove tailing)
+ width is then restricted by specifying a peak height threshold and a tailing factor.
+
+
+
+
+ Gets or sets the expected peak width (seconds).
+ This controls the minimum width that a peak is expected to have (seconds)
+ if valley detection is enabled. The property is expressed as a window.
+ With valley detection enabled,
+ any valley points nearer than [expected width]/2
+ to the top of the peak are ignored.
+ If a valley point is found outside the expected peak width,
+ Genesis terminates the peak at that point.
+ Genesis always terminates a peak when the signal reaches the baseline,
+ independent of the value set for the ExpectedPeakWidth.
+
+
+
+
+ Gets or sets the percent of the total peak height (100%) that a signal needs to be above the baseline
+ before integration is turned on or off.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.0 to 100.0%.
+
+
+
+
+ Gets or sets the edge detection Signal to Noise threshold.
+ This displayed as "S/N Threshold" in product UI.
+ Larger values cause peaks to become narrower.
+ A peak is considered ended if the following condition is met:
+ height <= (BaseNoise * SignalToNoiseThreshold))
+ Where BaseNoise is the calculated noise on the fitted baseline,
+ and height is the height above baseline.
+
+
+
+
+ Gets or sets the Tailing Factor, which controls how Genesis integrates the tail of a peak.
+ This factor is the maximum ratio of the trailing edge to the leading side of a constrained peak.
+ This applies only when the is true.
+ The valid range is 0.5 through 9.0.
+
+
+
+
+ Gets or sets a value indicating whether to perform base to base integration
+
+
+
+
+ Gets or sets a value determining how far down from the peak apex a valley must be.
+ The peak edge is set to values below this defined ratio.
+ This test assumes an edge of a peak is found when the baseline adjusted height of the edge is less than
+ the ratio of the baseline adjusted apex height and the peak S/N cutoff ratio.
+ If the S/N at the apex is 500 and the peak S/N cutoff value is 200,
+ Genesis defines the right and left edges of the peak when the S/N reaches a value less than 200.
+ Range: 50.0 to 10000.0.
+ Technical equation:if height < (1/PeakSignalToNoiseRatioCutoff)*height(apex) => valley here
+
+
+
+
+ Gets or sets the percentage of the valley bottom
+ that the peak trace can rise above a baseline (before or after the peak).
+ If the trace exceeds RisePercent,
+ Genesis applies valley detection peak integration criteria.
+ This method drops a vertical line from the apex of the valley between unresolved
+ peaks to the baseline.
+ The intersection of the vertical line and the baseline defines the end of the first
+ peak and the beginning of the second peak.
+ This test is applied to both the left and right edges of the peak.
+ The RisePercent criteria is useful for integrating peaks with long tails.
+ Useful range: 0.1 to 50
+
+
+
+
+ Gets or sets a value determining how deep a valley must be.
+ The range is 1.0 to 100.0. for valley detection.
+ Technical equation:height(here +/- VALLEY_WIDTH) > ValleyDepth*SNR+height(here) => valley here
+
+
+
+
+ Gets or sets a value indicating whether to enable RMS noise calculation.
+ If not set, noise is calculated peak to peak.
+ It is set by default.
+
+
+
+
+ Gets or sets the Baseline noise tolerance.
+ controls how the baseline is drawn in the noise data.
+ The higher the baseline noise tolerance value,
+ the higher the baseline is drawn through the noise data.
+ The valid range is 0.0 to 100.0
+
+
+
+
+ Gets or sets the minimum number of scans that Genesis uses to calculate a baseline.
+ A larger number includes more data in determining an averaged baseline.
+ The valid range is 2 to 100.0.
+
+
+
+
+ Gets or sets a factor which controls the width of the RMS noise band above and below the peak detection baseline
+ and is applied to the raw RMS noise values to raise the effective RMS noise during peak detection.
+ The left and right peak boundaries are assigned above the noise and, therefore,
+ closer to the peak apex value in minutes.
+ This action effectively raises the peak integration baseline above the RMS noise level.
+ Range: 0.1 to 10.0.
+ Default: 2.0.
+
+
+
+
+ Gets or sets the minutes between background scan recalculations.
+ Baseline is refitted each time this interval elapses.
+
+
+
+
+ Gets or sets the smallest permitted signal to noise ratio.
+ Peaks are rejected if they have a lower signal to noise ratio than this.
+
+
+
+
+ Gets or sets the lowest permitted percentage of the largest peak.
+ Do not return peaks which are less than this % of the highest peak above baseline.
+
+
+
+
+ Gets or sets a value indicating whether peaks are filtered by relative signal height
+
+
+
+
+ Constrain the width of the peak. Default false
+
+
+
+
+ Expected peak width (seconds). default 0.0
+
+
+
+
+ Percent of the total peak height (100%) that a signal needs to be above the baseline. Default 5%.
+
+
+
+
+ edge detection Signal to Noise threshold. default 0.5
+
+
+
+
+ which controls how Genesis integrates the tail of a peak. default 1.0
+
+
+
+
+ perform base to base integration? default false
+
+
+
+
+ how far down from the peak apex a valley must be. default 200
+
+
+
+
+ percentage of the valley bottom
+ that the peak trace can rise above a baseline (before or after the peak). default 10%
+
+
+
+
+ How deep a valley must be. default 1.0
+
+
+
+
+ Should noise be calculated as RMS? default true
+
+
+
+
+ The higher the baseline noise tolerance value,
+ the higher the baseline is drawn through the noise data. default 10.0
+
+
+
+
+ minimum number of scans that Genesis uses to calculate a baseline. default 16.
+
+
+
+
+ controls the width of the RMS noise band above and below the peak detection baseline. default 2.0
+
+
+
+
+ minutes between background scan recalculations. default 5.0
+
+
+
+
+ The smallest permitted signal to noise ratio. Default 0.5. range in UI 0.0 to 999.
+
+
+
+
+ lowest permitted percentage of the largest peak. Default 10.0.
+
+
+
+
+ peaks are filtered by relative signal height? default false.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ Initializes a new instance of the class.
+ Maps settings from an Xcalibur processing method.
+
+
+ The access.
+
+
+
+
+ make a copy of this object
+
+ A copy of this object
+
+
+
+ Defines the format of a log entry, including label (name of the field), data type, and numeric formatting.
+
+
+
+
+ Gets or sets the display label for the field.
+ For example: If this a temperature, this label may be "Temperature" and the DataType may be "GenericDataTypes.FLOAT"
+
+
+
+
+ Gets or sets the data type for the field
+
+
+
+
+ Gets or sets the precision, if the data type is float or double,
+ or string length of string fields.
+
+
+
+
+ Gets or sets a value indicating whether a number should be displayed in scientific notation
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The label.
+ Type of the data.
+ The string length or precision.
+ This indicates whether a number should be displayed in scientific notation. Optional parameter has a default value = false.
+
+
+
+ Gets a value indicating whether this is considered numeric data.
+ This is the same test as performed for StatusLogPlottableData".
+ Integer types: short and long (signed and unsigned) and
+ floating types: float and double are defined as numeric.
+
+
+
+
+ Tests whether this is a variable header.
+ A "variable header", if present as the first field in a table of
+ headers, defines that each record has a variable number of valid fields.
+ The first field in each data record will then be converted to "validity flags"
+ which determine which of the fields in a data record have valid values.
+
+
+ The number of fields in the header.
+
+
+ True if this specifies that "variable length" records are used.
+
+
+
+
+ Re-formats the specified value per the current header's settings.
+
+
+ The value, as a string.
+
+
+ The formatted value.
+
+
+
+
+ Format a bool string based on the header.
+
+
+ The value to format.
+
+
+ The true string value.
+
+
+ The false string value.
+
+
+ The formatted bool value.
+
+
+
+
+ Format a numeric value.
+
+
+ The value to format.
+
+
+ The formatted numeric value.
+
+
+
+
+ The centroid peak interface.
+
+
+
+
+ Gets or sets mass.
+
+
+
+
+ Gets or sets intensity.
+
+
+
+
+ Gets or sets resolution.
+
+
+
+
+ Gets or sets base Line.
+
+
+
+
+ Gets or sets noise.
+
+
+
+
+ Gets or sets charge.
+
+
+
+
+ Gets or sets Peak Options Flag.
+
+
+
+
+ Gets or sets the signal to noise.
+
+
+
+
+ Methods for creating a value for one scan in a chromatogram.
+
+
+
+
+ Sum all masses within the ranges
+
+
+ List of ranges to sum
+
+
+ If the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses
+
+
+ Sum of intensities in all ranges
+
+
+
+
+ Return the largest intensity (base value) in the ranges supplied
+
+
+ Ranges of positions (masses, wavelengths)
+
+
+ If the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses
+
+
+ Largest intensity in all ranges
+
+
+
+
+ User parameters for the ICIS peak integration algorithm.
+ These settings determine how the chromatogram is integrated.
+
+
+
+
+ Gets or sets the number of scans.
+ Each scan is checked to see if it should be considered a baseline scan.
+ This is determined by looking at a number of scans (BaselineWindow) before
+ and after the a data point. If it is the lowest point in the group it will be
+ marked as a "baseline" point.
+ Range: 1 - 500
+ Default: 40
+
+
+
+
+ Gets or sets the Noise level multiplier.
+ This determines the peak edge after the location of the possible peak,
+ allowing the peak to narrow or broaden without affecting the baseline.
+ Range: 1 - 500
+ Default multiplier: 5
+
+
+
+
+ Gets or sets the noise level multiplier (a minimum S/N ratio).
+ This determines the potential peak signal threshold.
+ Range: 1 - 1000
+ Default multiplier: 10
+
+
+
+
+ Gets or sets a value indicating whether to constrain the peak width of a detected peak (remove tailing)
+ width is then restricted by specifying a peak height threshold and a tailing factor.
+
+
+
+
+ Gets or sets the percent of the total peak height (100%) that a signal needs to be above the baseline
+ before integration is turned on or off.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.0 to 100.0%.
+
+
+
+
+ Gets or sets the tailing factor.
+ This controls how Genesis integrates the tail of a peak.
+ This factor is the maximum ratio of the trailing edge to the leading side of a constrained peak.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.5 through 9.0.
+
+
+
+
+ Gets or sets the minimum number of scans required in a peak.
+ Range: 0 to 100.
+ Default: 3.
+
+
+
+
+ Gets or sets the minimum separation in scans between the apexes of two potential peaks.
+ This is a criterion to determine if two peaks are resolved.
+ Enter a larger number in a noisy environment when the signal is bouncing around.
+ Range: 1 to 500.
+ Default: 10 scans.
+
+
+
+
+ Gets or sets the number of scans on each side of the peak apex to be allowed.
+ Range: 0 to 100.
+ Default: 0 scans.
+ 0 specifies that all scans from peak-start to peak-end are to be included in the area integration.
+
+
+
+
+ Gets or sets the number of scans past the peak endpoint to use in averaging the intensity.
+ Range: 0 to 100.
+ Default: 5 scans.
+
+
+
+
+ Gets or sets a value indicating whether noise is calculated using an RMS method
+
+
+
+
+ Gets or sets a value which determines how the ICIS peak detector determines which signals are noise.
+ The selected points can determine a noise level, or be fed into an RMS calculator,
+ depending on the RMS setting.
+
+
+
+
+ The _baseline window.
+
+
+
+
+ The _area noise factor.
+
+
+
+
+ The _peak noise factor.
+
+
+
+
+ The _constrain peak width.
+
+
+
+
+ The _peak height percentage.
+
+
+
+
+ The _tailing factor.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ make a copy of this object
+
+ a copy of this object
+
+
+
+ Contains common instrument information.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the type of the device.
+
+
+
+
+ Gets or sets the base URI.
+
+
+
+
+ Gets or sets the name of the instrument
+
+
+
+
+ Gets or sets the Model of instrument
+
+
+
+
+ Gets or sets the Serial number of instrument
+
+
+
+
+ Gets or sets the Software version of instrument
+
+
+
+
+ Gets or sets the Hardware version of instrument
+
+
+
+
+ Gets or sets Units of UV or analog data (not used for MS instruments)
+
+
+
+
+ Gets or sets the run header of the instrument.
+
+
+
+
+ Gets or sets the list of auto filters.
+
+
+
+
+ Gets or sets the list of instrument methods.
+
+
+
+
+ Gets or sets the tune data for the instrument
+
+
+
+
+ Gets or sets the Status log data for the instrument
+
+
+
+
+ Gets or sets the segment event table for the current instrument
+
+
+
+
+ Gets or sets names for channels (for UV or analog data)
+
+
+
+
+ Data about an instrument, for example, instrument name
+
+
+
+
+ Gets or sets the name of the instrument
+
+
+
+
+ Gets or sets the model of instrument
+
+
+
+
+ Gets or sets the serial number of instrument
+
+
+
+
+ Gets or sets the software version of instrument
+
+
+
+
+ Gets or sets the hardware version of instrument
+
+
+
+
+ Gets or sets the Names for the channels, for UV or analog data:
+
+
+
+
+ Gets or sets the units of the Signal, for UV or analog
+
+
+
+
+ Gets or sets additional information about this instrument.
+
+
+
+
+ Gets or sets Device suggested label of X axis
+
+
+
+
+ Gets or sets Device suggested label of Y axis (name for units of data, such as "°C")
+
+
+
+
+ Gets or sets a value indicating whether the instrument is valid.
+
+
+
+
+ Gets a value indicating whether this file has accurate mass precursors
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct by copying fields from interface
+
+
+ Interface to copy from
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+ 2
+
+
+
+ Test if this is a TSQ quantum series file.
+ Such files may have more accurate precursor mass selection.
+
+ True if this is a raw file from a TSQ Quantum
+
+
+
+ This static factory class provides methods for exporting instrument method from a raw file
+
+
+
+
+ Creates the instrument method exporter with an input raw file name.
+ It returns an interface which can be used to export an instrument method from a raw file.
+
+ Example:
+ using (var exporter = InstrumentMethodExporterFactory.ReadFile(rawFile))
+ {
+ if (!exporter.HasError && exporter.HasInstrumentMethod)
+ {
+ exporter.ExportInstrumentMethod("Export instrument method file name", false);
+ }
+ }
+
+
+ Name of the raw file.
+ Interface object for exporting the instrument method.
+
+
+
+ create a reader for instrument methods
+
+
+ A factory to read instrument methods.
+
+
+
+
+ Provides a means of opening instrument methods.
+
+
+
+
+ create a reader for instrument methods
+
+
+ A factory to read instrument methods.
+
+
+
+
+ Read an instrument method.
+ The file contents are returned. The file is not kept open.
+ Because this reads a file, try catch is suggested around this activity.
+ Caller must test IsError after opening to obtain any detected error conditions in the file.
+
+ Name of file to read
+ Access to the contents of the file.
+
+
+
+ Instrument Method Writer Extension Methods
+
+
+
+
+ Creates a device section with the given device name and writes the binary data
+ and text data to it. If the same device name is already exist, it will get
+ overwritten.
+
+ The instrument method writer object.
+ The instrument method in binary format.
+ The instrument method in text string.
+ The device name
+ True if
+
+
+
+ This static factory class provides methods to create an instrument method writer for creating/updating an instrument method file.
+
+
+
+
+ Creates the instrument method writer with an input file name.
+ The method should open a file if it exists and loads the data into internal structure and then close the file;
+ otherwise, a new in-memory method file should be created (since it's in-memory, the data isn't persisted to a file yet).
+ After editing the device method, caller should use either the "Save" or "SaveAs" method to persist the data to a file.
+
+ Name of the instrument method file.
+ Instrument method writer object.
+ Null or empty file name argument.
+
+
+
+ Because there is no input file name, this method will create an "Unnamed" in-memory instrument method
+ file (since it's in-memory, the data isn't persisted to a file yet).
+ After editing the device method, caller should use the "SaveAs" method with a valid file name to save the data to a file.
+
+ Instrument method writer object.
+
+
+
+ Creates the instrument method writer factory.
+
+ Instrument method writer factory object.
+
+
+
+ Defines which instrument is selected in a file.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Index of the instrument.
+ Type of the device.
+
+
+
+ Gets the Stream number (instance of this instrument type).
+ Stream numbers start from 1
+
+
+
+
+ Gets the Category of instrument
+
+
+
+
+ A Metadata class represents key/value pair of Index and InstrumentType of an instrument in the raw file.
+
+
+
+
+ Gets or sets the index of the Instrument.
+
+
+
+
+ Gets or sets the type of the instrument.
+
+
+
+
+ Holds the results of integrating a single chromatogram.
+ The results are a peak list and the chromatogram data.
+
+
+
+
+ Gets or sets the data read from the raw file
+
+
+
+
+ Gets or sets the peaks found in the chromatogram
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+ 2
+
+
+
+ Setting for all peak integrators, plus selection of integrator to use
+
+
+
+
+ Gets or sets settings for Avalon integrator
+
+
+
+
+ Gets or sets settings for genesis integrator
+
+
+
+
+ Gets or sets settings for ICIS integrator
+
+
+
+
+ Gets or sets choice of integrator to use
+
+
+
+
+ Gets Avalon.
+
+
+
+
+ Gets Genesis.
+
+
+
+
+ Gets ICIS settings.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Constructor, which should be used when not serializing, with the parameter set "true"
+
+
+ When true: default events are added to the Avalon integrator.
+ This is not needed when the object is about to be used by a serializer, as in that
+ case the initial settings will already be in the serialized object
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The access.
+
+
+
+
+ Make a deep copy of this object
+
+
+ deep copy of peak detection settings
+
+
+
+
+ Events are either at the start of peak detection (Initial) or part way through the data (Timed)
+
+
+
+
+ Event value before any peak detection begins.
+
+
+
+
+ An event which occurs at a specific time in the chromatogram.
+
+
+
+
+ Class for initial and timed events.
+ Includes the event, any attributes and the event time.
+
+
+
+
+ Initializes a new instance of the class.
+ Create an empty event
+
+
+
+
+ Gets or sets the event which is occurring (for example "start cluster")
+
+
+
+
+ Gets or sets a value which determines if this is an initial value, or a timed event.
+
+
+
+
+ Gets or sets the event time.
+ If this is a timed event, this is the time the event occurs, in minutes.
+
+
+
+
+ Gets or sets the first data value associated with the event
+
+
+
+
+ Gets or sets the second data value associated with the event
+
+
+
+
+ Set the initial value of a timed event.
+ This sets an event at time=0.
+
+
+ The event being programmed
+
+
+ initial value of the event
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+
+ An exact copy of the current collection.
+
+
+
+
+ Exception filter string with invalid format
+
+
+
+
+ Initializes a new instance of the class.
+ Basic analysis exception, no specified reason.
+
+
+
+
+ Initializes a new instance of the class.
+ Exception, with reason as text, which application can display or log
+
+
+ Reason for exception
+
+
+
+
+ Initializes a new instance of the class.
+ Exception, with reason as text, which application can display or log
+
+
+ Reason for exception
+
+
+ Trapped inner exception
+
+
+
+
+ Initializes a new instance of the class.
+ Construct an exception, with serialization.
+
+
+ Data to serialize this object
+
+
+ Stream for serializing
+
+
+
+
+ Parameters to the Ion Ratio confirmation algorithm, for a single mass.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Constructor, which should be used when not serializing, with the parameter set "true"
+
+
+ When true: default events are added to the Avalon integrator.
+ This is not needed when the object is about to be used by a serializer, as in that
+ case the initial settings will already be in the serialized object
+
+
+
+
+ The construct.
+
+
+ The initialize.
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The access to mass test.
+
+ Peak integration settings
+ Smoothing settings
+
+
+
+ Gets or sets the smoothing data for the ion ratio peak calculation.
+ This is the only interaction with m_smoothingPoints. This class is only
+ a place holder. Other users of this class will fill this data item and
+ use the settings.
+
+ The smoothing points.
+
+
+
+ Gets the integration choice item. This is the only interaction
+ with m_integrationChoice. This class is only a place holder. Other
+ users of this class will fill this data item and use the settings.
+
+ The integration choice item.
+
+
+
+ Gets or sets the integration choice item. This is the only interaction
+ with m_integrationChoice. This class is only a place holder. Other
+ users of this class will fill this data item and use the settings.
+
+ The integration choice item.
+
+
+
+ Gets the smoothing data for the ion ratio peak calculation.
+ This is the only interaction with m_smoothingPoints. This class is only
+ a place holder. Other users of this class will fill this data item and
+ use the settings.
+
+ The smoothing points.
+
+
+
+ Gets or sets mass to be tested
+
+
+
+
+ Gets or sets the Expected ratio
+ The ratio of the qualifier ion response to the component ion response.
+ Range: 0 - 200%
+
+
+
+
+ Gets or sets a Window determine how accurate the match must be
+ The ratio must be +/- this percentage.
+
+
+
+
+ Copy all settings from this object to another
+
+
+ Destination of copy
+
+
+
+
+ Copy all settings to this object from another
+
+
+ Source of copy
+
+
+
+
+ Copies the base values.
+ Creates a deep copy.
+
+
+ Cloned object
+
+
+
+
+ Ion Ratio Confirmation settings
+
+
+
+
+ Gets or sets Qualifier Ion Coelution
+ The time the retention time can vary from the expected retention time for the ion to still be considered confirmed.
+ Units: minutes
+ Bounds: 0.000 - 0.100
+
+
+
+
+ Gets or sets a value indicating whether this Ion Ratio Confirmation is enabled.
+
+ true if enable; otherwise, false.
+
+
+
+ Gets or sets the type of the windows.
+
+ The type of the windows.
+
+
+
+ Gets or sets the qualifier ions.
+
+ The qualifier ions.
+
+
+
+ Gets the qualifier ions.
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The component.
+
+
+
+
+ This class encapsulates the results of an ion ratio test for one ion.
+
+
+
+
+ Gets or sets a value indicating whether the coelution test has passed for this ion
+
+
+
+
+ Gets or sets the results of the coelution test
+ targetCompoundPeak.Apex.RetentionTime - ion.Apex.RetentionTime;
+
+
+
+
+ Gets or sets the measured ion ratio, as a percentage
+ (qualifierIonResponse * 100) / targetCoumpoundResponce
+
+
+
+
+ Gets or sets the Window in absolute % used to bound this test
+
+
+
+
+ Gets or sets a value indicating whether the ratio test passed for this ion
+
+
+
+
+ Gets or sets the Mass which was tested
+
+
+
+
+ Gets or sets The peak which was found in the IRC chromatogram
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+ An exact copy of the current Result.
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Copy constructor
+
+
+ Object to copy
+
+
+
+
+ The Reaction interface.
+ Defines a reaction for fragmenting an ion (an MS/MS stage).
+
+
+
+
+ Gets the precursor mass (mass acted on)
+
+
+
+
+ Gets the collision energy of this reaction
+
+
+
+
+ Gets the isolation width of the precursor mass
+
+
+
+
+ Gets a value indicating whether precursor range is valid.
+ If this is true, then is still the center of
+ the range, but the values and
+ define the limits of the precursor mass range
+
+
+
+
+ Gets the start of the precursor mass range (only if )
+
+
+
+
+ Gets the end of the precursor mass range (only if )
+
+
+
+
+ Gets a value indicating whether collision energy is valid.
+
+
+
+
+ Gets the activation type.
+
+
+
+
+ Gets a value indicating whether this is a multiple activation.
+ In a table of reactions, a multiple activation is a second, or further,
+ activation (fragmentation method) applied to the same precursor mass.
+ Precursor mass values should be obtained from the original activation, and may not
+ be returned by subsequent multiple activations.
+
+
+
+
+ Gets the isolation width offset.
+
+
+
+
+ Methods to read a scan from a file
+
+
+
+
+ Create a scan object from a file and a scan number.
+
+
+ File to read from
+
+
+ Scan number to read
+
+
+ The scan read, or null of the scan number if not valid
+
+
+
+
+ Create a scan object from a file and a retention time.
+
+
+ File to read from
+
+
+ time of Scan number to read
+
+
+ The scan read, or null if no scan was read
+
+
+
+
+ Will be used with Channel labels. Currently not implemented.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The source to copy the values from.
+
+
+
+ Gets or sets the index.
+
+
+
+
+ Gets or sets the label text.
+
+
+
+
+ Label Peak Information.
+
+
+
+
+ Initializes a new instance of the class.
+ Default Constructor.
+
+
+
+
+ Gets or sets mass.
+
+
+
+
+ Gets or sets intensity.
+
+
+
+
+ Gets or sets resolution.
+
+
+
+
+ Gets or sets base Line.
+
+
+
+
+ Gets or sets noise.
+
+
+
+
+ Gets or sets charge.
+
+
+
+
+ Gets or sets Peak Options Flag.
+
+
+
+
+ Gets or sets the signal to noise.
+
+
+
+
+ This class defines table of replicates for a calibration level
+
+
+
+
+ Initializes a new instance of the class.
+ Default construction of replicates
+
+
+
+
+ Initializes a new instance of the class.
+ Create a new replicate table for a calibration level.
+
+
+ Level to base this replicate table on
+
+
+
+
+ Initializes a new instance of the class.
+ Create a new replicate table for a calibration level.
+
+
+ Level to base this replicate table on
+
+
+
+
+ Gets or sets the Replicate Collection.
+
+
+
+
+ Gets the number of replicates for this level
+
+
+
+
+ Gets the replicates of this calibration level
+
+
+
+
+ array access operator to return Replicate array element.
+
+ Index into the array
+ The requested replicate
+
+
+
+ array access operator to return Replicate array element.
+
+ Index into the array
+ The requested replicate
+
+
+
+ Add a replicate to the list of replicates.
+ If the supplied replicate has keys which match a
+ keyed item in the current collection, then the matching record is replaced.
+
+ An additional replicate of this calibration level
+
+
+
+ Add a replicate collection to the list of replicates.
+ If any of the supplied replicates has keys which match a
+ keyed item in the current collection, then the matching record is replaced.
+
+ The collection to add
+
+
+
+ Add all replicates from this collection to the list of replicates.
+ This addition only succeeds if the collections have the same calibration level
+ If any of the supplied replicates has keys which match a
+ keyed item in the current collection, then the matching record is replaced.
+
+ The replicates to add
+
+ true if the collection was added,
+ false if the calibration levels do not match.
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+ An exact copy of the current sample.
+
+
+
+ Count all included/excluded replicates.
+
+ The included and excluded counts are incremented by the number of included
+ and excluded points. These counters are not set to zero,
+ allowing this method to be called repeatedly, for example to count
+ replicates for all levels.
+
+
+ (updated) included counter
+ (updated) excluded counter
+
+
+
+ delete all replicates from the list of replicates.
+
+
+
+
+ Finds the replicate with amount and response.
+
+ Amount to match
+ Response to match
+ the matching replicate
+
+
+
+ Find the first replicate which matches the given key, and has no second key
+
+ Key to find
+ Found replicate, or null
+
+
+
+ Find the replicate which matches a given key and
+
+ First key (for example file or sample name)
+ Key for this peak (for example component name)
+ The replicate which matches a given key and peak key, or null if not found.
+
+
+
+ Find the replicate which matches a the keys in a given replicate
+
+ replicate to match
+ The matching replicate, or null if not found.
+
+
+
+ Return the highest included response. Any excluded points are ignored.
+
+ The highest response included in the calibration curve
+
+
+
+ Return the lowest included response. Any excluded points are ignored.
+
+ The lowest response included in the calibration curve
+
+
+
+ Update the count of included and excluded replicates.
+
+ The included counter is incremented if this is an included
+ point, otherwise the excluded counter is incremented. These counters are not set to zero,
+ allowing this method to be called repeatedly, for example to count
+ replicates for all calibration levels.
+
+
+ Replicate to count
+ (updated) included counter
+ (updated) excluded counter
+
+
+
+ The results of finding a single peak from a list.
+ This includes the peak that is found, how it was found,
+ and in the case of spectral searching, the spectral search results.
+
+
+
+
+ Gets or sets the peak which best matches the location rules.
+
+
+
+
+ Gets the peak which best matches the location rules.
+
+
+
+
+ Gets or sets a record of how this peak was found.
+ The find results are only valid when this is set to "Spectrum".
+
+
+
+
+ Gets or sets a value indicating whether RT adjustments could be made to the RT reference.
+ This flag is only meaningful when RT reference adjustments are made based on
+ a reference peak (see the locate class).
+ If a valid reference peak is supplied, then the expected RT can be adjusted based on the reference.
+ If no reference peak is found (a null peak) then the expected RT cannot be adjusted, and this flag will be false.
+
+
+
+
+ Gets or sets the Find Results.
+ When using spectrum LocateMethod this will contain the best matching peaks and find scores.
+
+
+
+
+ Gets the peak which best matches the location rules.
+
+ The results for this peak, or empty list
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Copy constructor
+
+
+ The object to copy
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+ An exact copy of the current collection.
+
+
+
+ Holds the results of locating a single peak from chromatogram.
+ The results are a and the chromatogram data.
+
+
+
+
+ Gets or sets the data read from the raw file
+
+
+
+
+ Gets or sets the peaks found in the chromatogram
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+ 2
+
+
+
+ Copy these results
+
+ Object to fill with the results
+
+
+
+ Represents a single log.
+
+
+
+
+ Gets or sets the labels in this log.
+
+
+
+
+ Gets or sets the values in this log.
+
+
+
+
+ Gets or sets the length of the log.
+
+
+
+
+ Information returned when a peak baseline is manually adjusted on a chromatogram
+
+
+
+
+ Gets or sets x (time) of new baseline start point (left of peak)
+
+
+
+
+ Gets or sets x (time) of new baseline end point (right of peak)
+
+
+
+
+ Gets or sets y (intensity) of new baseline start point (left of peak)
+
+
+
+
+ Gets or sets y (intensity) of new baseline end point (right of peak)
+
+
+
+
+ Copy this object
+
+ copy of object
+
+
+
+ Contains the options for displaying and calculating the masses.
+
+
+
+
+ The initial tolerance.
+
+
+
+
+ The initial precision.
+
+
+
+
+ The initial tolerance units.
+
+
+
+
+ Initializes a new instance of the class.
+ Default Constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Parameter Constructor
+
+
+ tolerance value
+
+
+ units of tolerance value
+
+
+ precision (decimal places)
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ Gets or sets the tolerance value.
+
+ The tolerance.
+
+
+
+ Gets or sets the precision (decimal places).
+
+
+
+
+ Gets or sets the tolerance units.
+
+
+
+
+ Gets the tolerance string of the current toleranceUnits setting.
+
+
+
+
+ Gets the tolerance string from the enumeration strings resource.
+
+
+ The tolerance units.
+
+
+ The tolerance units as a string.
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+ An exact copy of the current object.
+
+
+
+ Get the tolerance window around a specific mass
+
+
+ Mass about which window is needed
+
+
+ The distance (in amu) from the mass which is within tolerance.
+ For example: myWindow=GetToleranceAtMass(myMass);
+ accept data between "myMass-myWindow" and "myMass+myWindow"
+
+
+
+
+ Contains the generic header definitions of the Status log header, Trailer extra header and Tune header.
+ If caller is not intended to use any one of these headers, caller should either pass a null argument or zero length array.
+ i.e. TrailerExtraHeaders = null or TrailerExtraHeaders = new IHeaderItem[0]
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the status log headers.
+ Optional property, it has a default value of no header items (zero length array)
+
+
+ The status log headers.
+
+
+
+
+ Gets or sets the trailer extra headers.
+ Optional property, it has a default value of no header items (zero length array)
+
+
+ The trailer extra headers.
+
+
+
+
+ Gets or sets the tune headers.
+ Optional property, it has a default value of no header items (zero length array)
+
+
+ The tune headers.
+
+
+
+
+ Information about the mass spec device data stream
+
+
+
+
+ Initializes a new instance of the class.
+ Default field values:
+ Comment1 = "";
+ Comment2 = "";
+ ExpectedRunTime = 0;
+ MassResolution = 0.5;
+ Precision = 2;
+
+
+
+
+ Gets or sets the expected run time. The value should be greater than zero.
+ The expected run time. All devices MUST do this so that the real-time update can display a sensible Axis.
+
+
+ The expected run time.
+
+
+
+
+ Gets or sets the mass resolution (width of the half peak).
+ Optional property, it has a default value of 0.5.
+
+
+ The mass resolution.
+
+
+
+
+ Gets or sets the first comment about this data stream.
+ Optional property, it has a default value of empty string.
+ The comment is for "Sample Name" in Chromatogram view title (max 39 chars).
+
+
+ The comment1.
+
+
+
+
+ Gets or sets the second comment about this data stream.
+ Optional property, it has a default value of empty string.
+ This comment is for "Comment" in Chromatogram view title (max 63 chars).
+
+
+ The comment2.
+
+
+
+
+ Gets or sets the number of digits of precision suggested for formatting masses.
+ Optional property, it has a default value of 2.
+
+
+ The precision.
+
+
+
+
+ Class which includes the coefficients for
+ mass calibration from a particular scan, and means to convert between mass and frequency
+
+
+
+
+ Gets or sets the coefficient 1.
+
+
+
+
+ Gets or sets the coefficient 2.
+
+
+
+
+ Gets or sets the coefficient 3.
+
+
+
+
+ Gets or sets the base frequency.
+
+
+
+
+ Gets or sets the delta frequency.
+
+
+
+
+ Converts the given frequency to it's corresponding mass.
+
+ sample number to convert
+ converted mass.
+
+
+
+ Converts the given mass to frequency.
+
+ The mass to convert
+ converted frequency
+
+
+
+ Gets or sets the highest mass.
+
+
+
+
+ Gets or sets the (largest) segment range of the scans processed.
+
+
+
+
+ General math routines
+
+
+
+
+ Calculates the discrete Fourier transform of a set of real-valued data points.
+
+ Calculates the FFT of a set of dataPointsCount real-valued data points.
+ The routine replaces the input data stored in data[0..dataPointsCount-1]
+ by the positive frequency half of its complex Fourier transform.
+ The real-valued first and last components of the complex transform
+ are returned as elements data[0] and data[1], respectively.
+ dataPointsCount MUST be a power of 2.
+ This routine also calculates the inverse transform of a complex
+ data array if it is the transform of real data (the result in this
+ case must be multiplied with 2/n).
+
+
+
+ The input array of real-valued data points.
+
+
+ The number of data points in the array (must be a power of 2).
+
+
+ Flag indicating to calculate the FFT (sign=1) or the inverse FFT (sign=-1).
+
+
+
+
+ Calculates the discrete Fourier transform of a set of data points.
+
+ Calculates the discrete Fourier transform of a set of data points.
+ The routine replaces data[0..2*dataPointsCount-1] by its discrete Fourier
+ transform, if sign is input as 1; or replaces data[0..2*dataPointsCount-1]
+ by dataPointsCount times its inverse discrete Fourier transform, if sign
+ is input as -1.
+ data is a complex array of length dataPointsCount or (i.e. dataPointsCount real/imaginary
+ pairs, which make up dataPointsCount array elements), equivalently, a real
+ array of length 2*dataPointsCount.
+ dataPointsCount MUST be an integer power of 2.
+
+
+
+ Data to transform, as real and imaginary pairs (index 0= real, 1=imaginary etc.)
+
+
+ Number of valid points in the data.
+
+ Sign of the data
+
+
+
+
+ Swap array elements
+
+
+ The array to swap.
+
+
+ The source
+
+
+ The destination.
+
+
+
+
+ Encapsulates information about MSAnalogInstrument.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Represents the MassSpec instrument.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ The MS instrument data.
+ This class provides a default implementation of IMsInstrumentData
+
+
+
+
+ Gets or sets the centroid data. It's a second stream with profile scan.
+
+
+
+
+ Gets or sets the event data.
+
+
+
+
+ Gets or sets the frequencies (for LT/FT).
+
+
+
+
+ Gets or sets the noise data.
+
+
+
+
+ Gets or sets or sets the scan data.
+
+
+
+
+ Gets or sets the statistics data.
+
+
+
+
+ Initialize MS Instrument data from a scan and a scan event.
+
+
+ The scan.
+
+
+ The scan event.
+
+
+ The .
+
+
+
+
+ Class to manage the MS order information in a filter.
+ Simplifies the reaction tables into one entry per MS/MS stage.
+
+
+
+
+ Initializes a new instance of the class.
+ Construct an MS Order table from a filter or event
+
+
+ filter or event to analyze
+
+
+
+
+ Gets the reaction data for all MS/MS stages
+
+
+
+
+ create reactions table
+
+ Data from raw file
+ Table of reactions
+
+
+
+ Create a list of MS/MS stages (one per parent)
+
+ Reactions, which may have multiple per stage
+
+
+
+ format the MS order.
+
+
+ The scan filter.
+
+
+
+
+ The MS reaction.
+ This is reaction to fragment a precursor mass.
+ Reactions are used for MS/MS, Parent and Neutral scan types.
+
+
+
+
+ Gets or sets the precursor mass (mass acted on).
+ For a product ion scan, this would be a parent mass.
+ For a parent ion scan, this would be the fragment mass.
+ If this is a multiple reaction, this value is not used.
+
+
+
+
+ Gets or sets the collision energy of this reaction
+
+
+
+
+ Gets or sets the isolation width of the precursor mass
+
+
+
+
+ Gets or sets a value indicating whether precursor range is valid.
+ If this is true, then is still the center of
+ the range, but the values and
+ define the limits of the precursor mass range
+
+
+
+
+ Gets or sets the start of the precursor mass range (only if )
+
+
+
+
+ Gets or sets the end of the precursor mass range (only if )
+
+
+
+
+ Gets or sets a value indicating whether collision energy is valid.
+ When not valid "CollisionEnergy" should not be tested or displayed.
+
+
+
+
+ Gets or sets the activation type.
+ This defines how an ion is fragmented.
+
+
+
+
+ Gets or sets a value indicating whether this is a multiple activation.
+ In a table of reactions, a multiple activation is a second, or further,
+ activation (fragmentation method) applied to the same precursor mass.
+ Precursor mass values should be obtained from the original activation, and may not
+ be returned by subsequent multiple activations.
+
+
+
+
+ Gets or sets the isolation width offset.
+
+
+
+
+ Defines one stage of MS/MS, which may have multiple reactions.
+ For a parent or neutral scan, one stage is required.
+ For an MS/MS scan, one stage per MS/MS level is needed.
+ For example: define 2 stages for an MS3 experiment.
+ Each stage must have one or more reactions.
+
+
+
+
+ Gets or sets the set of reactions done at an MS stage.
+ There must be at least one reaction for a valid stage.
+ The first reaction of a stage must not have the MultipleActivation property set.
+ Subsequent reactions of a stage must have the MultipleActivation property set.
+
+
+
+
+ Gets the precursor mass for this MS/MS stage.
+ This is the precursor mass of the first reaction, and is defined as "0"
+ if no reactions have been added yet.
+
+
+
+
+ Initializes a new instance of the class.
+ Construct an MS stage from a list of reactions
+
+
+ Reactions for this stage
+
+
+
+
+ Contains objects containing data, related to "MS data systems".
+ Used as an interchange between various common core DLLs.
+ Several types are just "default get/set" implementations of interfaces
+ Some types have business logic in them.
+
+
+
+
+ A request for a Neutral loss chromatogram
+
+
+
+
+ Gets or sets tolerance applied to precursor mass
+
+
+
+
+ Find the data for one scan.
+
+
+ The scan, including header and scan event.
+
+
+ The chromatogram point value for this scan.
+
+
+
+
+ Exception for data reading. Thrown when a newer file format is detected.
+ This is usually because an appliction has been compiled against an older generation file reader DLL.
+ The application must be upgraded to use newer tools, which can decode this file.
+
+
+
+
+ Initializes a new instance of the class.
+ Basic analysis exception, no specified reason.
+
+
+
+
+ Initializes a new instance of the class.
+ Exception, with reason as text, which application can display or log
+
+
+ Reason for exception
+
+
+
+
+ Initializes a new instance of the class.
+ Exception, with reason as text, which application can display or log
+
+
+ Reason for exception
+
+
+ Trapped inner exception
+
+
+
+
+ Initializes a new instance of the class.
+ Construct an exception, with serialization.
+
+
+ Data to serialize this object
+
+
+ Stream for serializing
+
+
+
+
+ Defines noise and baseline at a given mass
+ (Part of support for reading orbitrap data)
+
+
+
+
+ Gets or sets the mass.
+
+
+
+
+ Gets or sets the noise.
+
+
+
+
+ Gets or sets the baseline.
+
+
+
+
+ Exception for raw data reading. Called when a Device specific method is made
+ without first selecting a Device. For example: requesting a chromatogram
+
+
+
+
+ Initializes a new instance of the class.
+ Basic analysis exception, no specified reason.
+
+
+
+
+ Initializes a new instance of the class.
+ Exception, with reason as text, which application can display or log
+
+
+ Reason for exception
+
+
+
+
+ Initializes a new instance of the class.
+ Exception, with reason as text, which application can display or log
+
+
+ Reason for exception
+
+
+ Trapped inner exception
+
+
+
+
+ Initializes a new instance of the class.
+ Construct an exception, with serialization.
+
+
+ Data to serialize this object
+
+
+ Stream for serializing
+
+
+
+
+ Exception for raw data reading. Called when a MS specific method is made
+ without first selecting the MS data.
+ For example: Requesting "scan filters" from UV data.
+ These should all be handled in the code (never intentionally thrown to caller)
+
+
+
+
+ Initializes a new instance of the class.
+ Basic analysis exception, no specified reason.
+
+
+
+
+ Initializes a new instance of the class.
+ Exception, with reason as text, which application can display or log
+
+
+ Reason for exception
+
+
+
+
+ Initializes a new instance of the class.
+ Exception, with reason as text, which application can display or log
+
+
+ Reason for exception
+
+
+ Trapped inner exception
+
+
+
+
+ Initializes a new instance of the class.
+ Construct an exception, with serialization.
+
+
+ Data to serialize this object
+
+
+ Stream for serializing
+
+
+
+
+ Factory to create objects which make MS chromatograms in parallel.
+ Chromatograms are delivered on threads, such that action methods to perform
+ peak integration etc. can be performed in parallel, and while other chromatograms,
+ if they end at a later time, are still being generated from the raw file
+ Chromatograms are generated from scans read from the raw file.
+ Each scan is read only once.
+ Data from the scans is reduced to mass and intensity information only, to reduce memory consumed.
+ If the data is "FT format" with a set of supplied centroids, then the data is generated from
+ the centroids only (no profiles are read from the raw file).
+ If the data is not FT format then the regular "segmented scan" data is used.
+ Scans are read in increasing scan number order.
+ Scans which are outside of the required ranges to build the chromatograms are not read.
+ Methods to "get chromatograms" are not called directly on supplied raw data interfaces.
+ This also supports async reading from multiple raw files, as the returned information is a thread array,
+ which the caller must sync (with "WaitAll") to complete operations on a given file.
+
+
+
+
+ Attach data sources to a Chromatogram batch generator (for MS chromatograms),
+ based in data available via IRawDataPlus.
+ This method has an IO overhead, as it configures a ChromatogramBatchGenerator, with a table
+ of "scan number and RT", which is read from the raw data.
+ It requires that the "rawData" interface supplied has an efficient implementation of RetentionTimeFromScanNumber.
+
+
+ Tool to generate chromatograms
+
+
+ The raw data.
+
+
+ Thrown if there is no available MS data.
+
+
+
+
+ Create the list of all MS scans.
+
+
+ The data.
+
+
+ The list of scan headers.
+
+
+
+
+ Defines an implementation of "IScanWithSimpleData",
+
+
+
+
+ Gets or sets the scan event.
+
+
+
+
+ Gets or sets the data.
+
+
+
+
+ The fast scan from raw data class, which supplies code needed for the
+ chromatogram batch generator to get from the IRawDataPlus interface.
+ Enhanced version uses methods which only return mass and intensity data.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The raw data.
+
+
+
+
+ The scan reader.
+
+
+ The scan index, to the available scans.
+
+
+ The .
+
+
+
+
+ Encapsulates information about PDA Instrument.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Defines the PDA scan header and wavelength settings
+
+
+
+
+ Gets or sets the start time.
+
+
+
+
+ Gets or sets the TIC.
+
+
+
+
+ Gets or sets the long wavelength.
+
+
+
+
+ Gets or sets the short wavelength.
+
+
+
+
+ Gets or sets the wave length step.
+
+
+
+
+ Gets or sets the Absorbance Unit's scale.
+
+
+
+
+ This class encapsulates a peak. (the result of peak detection)
+
+
+
+
+ Initializes a new instance of the class.
+ default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ copy constructor
+
+
+ The peak to copy from.
+
+
+
+
+ Create by copying a peak.
+
+
+ The peak to copy.
+
+
+
+
+ Gets or sets the list of peaks that have been merged
+
+
+
+
+ Gets the list of peaks that have been merged
+
+
+
+
+ Gets a value which determines how signal to noise has been calculated.
+ When this returns .Value, a numeric value can
+ be obtained from .
+
+
+
+
+ Gets the signal to noise ratio. If is .Value, then this property returns the signal to noise ratio.
+ Otherwise this should not be used. Use .ToString() instead.
+
+
+
+
+ Gets or sets the position, height, baseline at left limit
+
+
+
+
+ Gets or sets the position, height, baseline at peak apex
+
+
+
+
+ Gets or sets the position, height, baseline at right limit
+
+
+
+
+ Gets or sets the Integrated peak area
+
+
+
+
+ Gets or sets the Mass of the base peak from the apex scan.
+
+
+
+
+ Gets or sets the Mass to charge ratio of peak.
+
+
+
+
+ Gets or sets the expected RT after making any RT adjustments.
+
+
+
+
+ Gets or sets the Noise measured in detected peak (for signal to noise calculation)
+
+
+
+
+ Gets or sets a value indicating whether the "Noise" value was calculated by an RMS algorithm.
+
+
+
+
+ Gets or sets the scan number at peak apex.
+ The apex of the peak corresponds to a particular signal.
+ This gives the scan number of that signal.
+ If no scan numbers are sent with the peak detection signal, then
+ the scan number = "signal index at apex +1".
+ Note that there is no guarantee that left and right edges will always be exactly on a scan, even
+ though most peak detectors behave that way, so this is not added as a property of
+
+
+
+
+ Gets or sets a Name for this peak (for example, compound name)
+
+
+
+
+ Gets or sets the number of scans integrated
+
+
+
+
+ Gets or sets a value which describes why the peak started. It is only set by the Genesis Detector.
+
+
+
+
+ Gets or sets a value which describes why the peak ended. It is only set by the Genesis Detector.
+
+
+
+
+ Gets or sets a value indicating whether this is a valid peak.
+ Peaks are assumed to have valid data, but may be marked invalid by
+ an integrator, if failing certain tests.
+ Invalid peaks should never be returned to a calling application
+ by an integrator algorithm.
+ Invalid peaks must never be: Drawn in a plot, listed in a report etc.
+ An application should indicate "Peak not found" when a peak is flagged as "Invalid".
+
+
+
+
+ Gets or sets a value indicating whether this is saturated.
+
+ true when integration/mass range has saturation.
+
+
+
+ Gets or sets a value indicating whether valley detection was used when detecting this peak.
+
+
+
+
+ Gets or sets the Direction of peak (Positive or Negative)
+
+
+
+
+ Gets or sets the chi-squared error in fitting the peak.
+
+
+
+
+ Gets or sets the calculated width, or 'gamma_r'.
+
+
+
+
+ Gets or sets the calculated intensity, or 'gamma_A'.
+
+
+
+
+ Gets or sets the calculated position, or 'gamma_t0'.
+
+
+
+
+ Gets or sets the calculated fourth parameter for gamma (gamma_M) or EMG functions.
+
+
+
+
+ Gets or sets the peak shape used in the fitting procedure.
+
+
+
+
+ Gets or sets the number of data points used in the fit.
+
+
+
+
+ Find baseline height for a peak at specified time
+
+ Retention time to use for interpolation
+ Interpolated baseline height at
+
+
+
+ Gets or sets a value indicating whether calculated values (such as height) may return negative numbers.
+ If false: negative calculated numbers are returned as 0
+
+
+
+
+ Gets or sets peak Purity.
+
+
+
+
+ Gets Low time from peak purity calculation
+
+
+
+
+ Gets High time from peak purity calculation
+
+
+
+
+ Gets or sets the Low value of the retention time range, after a peak purity calculation.
+
+
+
+
+ Gets or sets the High value of the retention time range, after a peak purity calculation..
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+ An exact copy of the current Peak.
+
+
+
+ Class to hold chromatogram settings of a peak
+
+
+
+
+ Initializes a new instance of the class.
+ Constructor for PeakChromatogramSettings
+
+
+
+
+ Initializes a new instance of the class.
+ Construct this object from read only interface
+
+ The settings to copy from
+
+
+
+
+ Gets or sets the scan filter.
+ This determines which scans are included in the chromatogram.
+
+
+
+
+ Gets the chromatogram settings.
+ This defines how data for a chromatogram point is constructed from a scan.
+
+
+
+
+ Gets the chromatogram settings
+ When there is a trace operator set,
+ This defines how data for a chromatogram point is constructed from a scan for the chromatogram
+ to be added or subtracted.
+
+
+
+
+ Gets or sets the chromatogram settings.
+ This defines how data for a chromatogram point is constructed from a scan.
+
+
+
+
+ Gets or sets the chromatogram settings
+ When there is a trace operator set,
+ This defines how data for a chromatogram point is constructed from a scan for the chromatogram
+ to be added or subtracted.
+
+
+
+
+ Gets or sets the device type.
+ This defines which data stream within the raw file is used.
+
+
+
+
+ Gets the instrument index (starting from 1).
+ For example: "3" for the third UV detector.
+
+
+
+
+ Gets or sets the trace operator.
+ If the operator is not "None" then a second chromatogram can be added to or subtracted from the first.
+
+
+
+
+ Create a deep copy of this object
+
+ Copy of object
+
+
+
+ These settings detail how a peak is to be identified from the
+ list of possible peaks found by integrating a chromatogram.
+ The peak is expected at a certain time, which may be adjusted using a retention time reference.
+ The peak is then selected from possible peaks within a window around the selected time.
+
+
+
+
+ Gets or sets a value indicating whether retention time should be adjusted based on a reference peak.
+
+
+
+
+ Gets or sets the expected time, as in the method (before any adjustments)
+
+
+
+
+ Gets or sets a value which determine how a single peak is found from the list of
+ returned peaks from integrating the chromatogram.
+ For example: Highest peak in time window.
+
+
+
+
+ Gets or sets the window, centered around the peak, in minutes.
+ The located peak must be within a window of expected +/- width.
+
+
+
+
+ Gets or sets a setting which is used to restrict the chromatogram.
+ Only scans within the range "adjusted expected RT" +/- Window are processed.
+ For example: a 1 minute window setting implies 2 minutes of data.
+
+
+
+
+ Gets or sets settings for finding a peak based on spectral fit
+
+
+
+
+ Gets settings for finding a peak based on spectral fit
+
+
+
+
+ Gets or sets a rejection parameter for peaks
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ make a copy of this object
+
+ a copy of this object
+
+
+
+ A record of the signal at a certain point in a detected peak.
+ For example, the Apex.
+
+
+
+
+ Initializes a new instance of the struct.
+ Create A new point on a detected peak
+
+
+ Retention time at this point
+
+
+ The signal height at this point above the baseline (signal.intensity - baseline)
+
+
+ baseline height at retentionTime
+
+
+
+
+ Gets or sets the retention time at this point, in minutes.
+
+
+
+
+ Gets or sets the intensity minus baseline at RT
+
+
+
+
+ Gets or sets the baseline height at RT
+
+
+
+
+ Test that two peak points are equal
+
+ first point to compare
+ second point to compare
+ true if they have the same contents
+
+
+
+ Test that two peak points are not equal
+
+ first point to compare
+ second point to compare
+ true if they do not have the same contents
+
+
+
+ Test two peaks for equality
+
+
+ peak to compare
+
+
+ true if they are equal
+
+
+
+
+ Object.GetHashCode
+
+ The hash code
+
+
+
+ Settings PDA peak purity calculations
+
+
+
+
+ Gets or sets the % of the detected baseline.
+
+
+
+
+ Gets or sets a value indicating whether to compute Peak Purity.
+
+
+
+
+ Gets or sets a value indicating whether to use the enclosed wavelength range, not the total scan
+
+
+
+
+ Gets or sets the high limit of the scan over which to compute
+
+
+
+
+ Gets or sets the low limit of the scan over which to compute
+
+
+
+
+ Gets or sets the max of a scan must be greater than this to be included
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ Make a copy of this object
+
+ a copy of this object
+
+
+
+ Defines a peak which has included system suitability results.
+
+
+
+
+ Initializes a new instance of the class.
+ Initializes from a peak and system suitability results.
+ This clones data from the passed in interfaces.
+
+
+ The peak.
+
+
+ The suitability results.
+
+
+
+
+ Gets or sets the suitability results.
+
+
+
+
+ Gets the resolution of the peak (from other peaks)
+
+
+
+
+ Gets a value indicating whether the resolution test passed
+
+
+
+
+ Gets a value indicating whether the symmetry test passed
+
+
+
+
+ Gets a value indicating whether the peak width test passed
+
+
+
+
+ Gets a value indicating whether the peak tailing test passed
+
+
+
+
+ Gets a value indicating whether the column overload test passed
+
+
+
+
+ Gets a value indicating whether the signal to noise test passed
+
+
+
+
+ Gets a value indicating whether the saturation test passed
+
+
+
+
+ Gets a value indicating whether the concave peak test passed
+
+
+
+
+ Gets a value indicating whether the baseline clipping test passed
+
+
+
+
+ Gets a value indicating whether the following values have been calculated:
+ PassedResolutionChecks, MeasuredResolution
+
+
+
+
+ Gets a value indicating whether the following values have been calculated:
+ PassedSymmetryChecks
+
+
+
+
+ Gets a value indicating whether the following values have been calculated:
+ PassedPeakWidth, PassedTailing, PassedColumnOverload, PassedNoise, PassedSaturated,
+ PassedConcave, PassedBaselineClipped
+
+
+
+
+ Gets a value indicating whether the ResolutionCheck was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the SymmetryCheck was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the PeakWidth test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the Tailing test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the ColumnOverload test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the Noise test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the Saturated test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the Concave test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the BaselineClipped test was performed, and the results of the test, when run.
+
+
+
+
+ Defines a precursor mass, and means of fragmenting it
+
+
+
+
+ Gets or sets the mass of the precursor
+
+
+
+
+ Gets or sets the method used to fragment the precursor
+
+
+
+
+ Gets or sets the level of activation to fragment the precursor
+
+
+
+
+ Gets or sets the precision of this value (number of decimal places found when parsing)
+
+
+
+
+ Compares the current object with another object of the same type.
+
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings:
+ Value
+ Meaning
+ Less than zero
+ This object is less than the parameter.
+ Zero
+ This object is equal to .
+ Greater than zero
+ This object is greater than .
+
+
+ An object to compare with this object.
+
+
+
+
+ Provides a means of opening processing methods.
+
+
+
+
+ create reader.
+
+
+ The reader
+
+
+
+
+ Read a processing method.
+ The file contents are returned. The file is not kept open.
+
+ Name of file to read
+ Access to the contents of the file.
+
+
+
+ This class defines a QC level.
+ This is based on a calibration level, with a name and expected amount (base amount)
+ The QC level add a TestPercent and a means of testing
+
+
+
+
+ Gets or sets the QC test standard: 100 * (yobserved-ypredicted)/ypreditced
+
+
+
+
+ Initializes a new instance of the class.
+ Create a copy of a QC level
+
+
+ Level to copy
+
+
+
+
+ Test if an amount passes the QC test for this level
+
+
+ The calculated amount for the QC
+
+
+ true if the QC test passes, within tolerance
+
+
+
+
+ Initializes a new instance of the class.
+ Default construction of QC level
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+ An exact copy of the current level.
+
+
+
+ Initializes a new instance of the class.
+ Create a quality control level
+
+
+ A name associated with the level
+
+
+ The amount of calibration compound (usually a concentration) for this level
+
+
+ QC test standard: 100 * (yobserved-ypredicted)/ypreditced
+
+
+
+
+ A range of double Low, High.
+
+
+
+
+ Implements the operator ==.
+
+ The first.
+ The second.
+ The result of the operator.
+
+
+
+ Implements the operator !=.
+
+ The first.
+ The second.
+ The result of the operator.
+
+
+
+ Create an immutable (constant) range from center and delta, such that the range is center +/- delta.
+
+
+ The center.
+
+
+ The delta.
+
+
+ The .
+
+
+
+
+ Create an immutable (constant) range from low and high.
+
+
+ The low.
+
+
+ The high.
+
+
+ The range.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+ Construct a range from limits
+
+
+ low limit of range
+
+
+ High limit of range
+
+
+
+
+ Initializes a new instance of the class.
+ Construct a range from another range, adding a tolerance if ends are the same
+
+
+ range to copy
+
+
+ If limits are same (with 1e-10)
+ this is subtracted from low and added to high of the new range
+
+
+
+
+ Initializes a new instance of the class.
+ Construct a range from another range, adding a tolerance if ends are the same
+ (within 1.0E-10).
+
+
+ range to copy
+
+
+ If limits are same (within 1e-10)
+ the tolerance is subtracted from low and added to high of the new range
+
+
+
+
+ Initializes a new instance of the class.
+ Construct a range from another range.
+
+
+ range to copy
+
+
+
+
+ Gets or sets the low end of range
+
+
+
+
+ Gets or sets the high end of range
+
+
+
+
+ Test for inclusion.
+
+
+ The value.
+
+
+ True if in range
+
+
+
+
+ Compares the current object with another object of the same type.
+
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings:
+ Value
+ Meaning
+ Less than zero
+ This object is less than the parameter.
+ Zero
+ This object is equal to .
+ Greater than zero
+ This object is greater than .
+
+ An object to compare with this object.
+
+
+
+
+ Indicates whether this instance and a specified object are equal.
+
+ Another object to compare to.
+
+ true if and this instance are the same type and represent the same value; otherwise, false.
+
+
+
+
+ Returns the hash code for this instance.
+
+
+ A 32-bit signed integer that is the hash code for this instance.
+
+
+
+
+ Factory to produce immutable ranges of double
+
+
+
+
+ Create an immutable (constant) range from low and high.
+
+
+ The low.
+
+
+ The high.
+
+
+ The range.
+
+
+
+
+ Create an immutable (constant) range from center and delta, such that the range is center +/- delta.
+
+
+ The center.
+
+
+ The delta.
+
+
+ The .
+
+
+
+
+ Construct a range from another range, adding a tolerance if ends are the same
+ (within 1.0E-10).
+
+
+ range to copy
+
+
+ If limits are same (within 1e-10)
+ the tolerance is subtracted from low and added to high of the new range
+
+
+
+
+ Construct a range from another range, adding a tolerance if ends are the same
+
+
+ range to copy
+
+
+ If limits are same (with 1e-10)
+ this is subtracted from low and added to high of the new range
+
+
+
+
+ Encapsulates raw file data.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the date when this data was created
+
+
+
+
+ Gets or sets the name of acquired file (excluding path)
+
+
+
+
+ Gets or sets the name of person creating data
+
+
+
+
+ Gets or sets the xml schema version for this file.
+
+
+
+
+ Gets or sets all instrument names.
+
+
+
+
+ Gets or sets the information about the sample.
+
+
+
+
+ Gets or sets the MS instruments.
+
+
+
+
+ Gets or sets the UV instruments.
+
+
+
+
+ Gets or sets the PDA instruments.
+
+
+
+
+ Gets or sets the PDA instruments.
+
+
+
+
+ Gets or sets the PDA instruments.
+
+
+
+
+ Gets or sets the instrument types map. This metadata is used to support GetInstrumentTypes method.
+
+
+
+
+ Gets or sets the list of instrument methods.
+
+
+
+
+ Gets The number of instruments (data streams) in this file.
+
+
+
+
+ get the number of instruments (data streams) of a certain classification.
+ For example: the number of UV devices which logged data into this file
+
+
+ The device type to count
+
+
+ The number of devices of this type
+
+
+
+
+ Class to read raw files
+ New code should not use this class directly.
+ Use only the static class: "RawFileReaderFactory"
+ Catch exceptions from the construction, which will be thrown if
+ the DLLs are missing.
+ Call the "OpenFile" method to open a raw file.
+ The returned interface from OpenFile is "IRawDataPlus".
+ The IRawDataPlus interface implements the IRawData interface,
+ so the returned object can also be passed to code expecting IRawData.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initialize: Load the required DLLs.
+
+
+
+
+ Open the requested raw file
+
+ Name of file to open
+ Interface to read the raw data
+
+
+
+ Class to read raw files, using 64 bit technology.
+ Call the "ReadFile" method to open a raw file.
+ The returned interface from ReadFile is "IRawDataPlus".
+ The IRawDataPlus interface implements the IRawData interface,
+ so the returned object can also be passed to code expecting IRawData.
+ To access data for the same file from multiple threads, see
+
+
+
+
+ create a thread manager.
+
+
+ The thread manager
+
+
+
+
+ create reader.
+
+
+ The factory
+
+
+
+
+ Open a raw file for reading.
+
+ Name of file to read
+ Access to the contents of the file.
+
+
+
+ Open a raw file for reading, creating a manager tool, such that
+ multiple threads can access the same open file.
+
+ Name of file to read
+ Access to the contents of the file.
+
+
+
+ A replicate is a measurement of a single calibration peak in 1 file.
+
+
+
+
+ Gets or sets the amount of target compound in calibration or QC standard.
+
+
+
+
+ Gets or sets the response of this sample, for example: Ratio of target peak area to ISTD peak area
+
+
+
+
+ Gets or sets the retention time of this replicate, for drift calculations
+
+
+
+
+ Gets or sets a value indicating whether to exclude this data point from the calibration curve.
+
+
+
+
+ Gets or sets the first key name associated with this replicate (for example a file name)
+
+
+
+
+ Gets or sets the second key name associated with this replicate (for example a peak or compound name)
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+ An exact copy of the current Replicate.
+
+
+
+ Exception for raw data reading. Called when a Chromatogram reading method is made
+ without first selecting a devices with chromatographic data. For example: requesting a chromatogram
+ from a device of type "Other" (such a an auto sampler).
+
+
+
+
+ Initializes a new instance of the class.
+ Basic analysis exception, no specified reason.
+
+
+
+
+ Initializes a new instance of the class.
+ Exception, with reason as text, which application can display or log
+
+
+ Reason for exception
+
+
+
+
+ Initializes a new instance of the class.
+ Exception, with reason as text, which application can display or log
+
+
+ Reason for exception
+
+
+ Trapped inner exception
+
+
+
+
+ Initializes a new instance of the class.
+ Construct an exception, with serialization.
+
+
+ Data to serialize this object
+
+
+ Stream for serializing
+
+
+
+
+ The run header.
+
+
+
+
+ Gets or sets the number for the first scan in this stream (usually 1)
+
+
+
+
+ Gets or sets the number for the last scan in this stream
+
+
+
+
+ Gets or sets the time of first scan in file
+
+
+
+
+ Gets or sets the time of last scan in file
+
+
+
+
+ Gets or sets the lowest recorded mass in file
+
+
+
+
+ Gets or sets the highest recorded mass in file
+
+
+
+
+ Gets or sets the mass resolution value recorded for the current instrument.
+ The value is returned as one half of the mass resolution.
+ For example, a unit resolution controller would return a value of 0.5.
+
+
+
+
+ Gets or sets the expected acquisition run time for the current instrument.
+ double ExpectedRunTime { get; }
+
+
+
+ Gets or sets the max integrated intensity.
+
+
+
+
+ Gets or sets the max intensity.
+
+
+
+
+ Gets or sets the tolerance unit.
+
+
+
+
+ Encapsulates various information about sample.
+
+
+
+
+ Max number of user text column count (20)
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the comment about sample (from user).
+
+
+
+
+ Gets or sets the Code to identify sample.
+
+
+
+
+ Gets or sets the description of sample.
+
+
+
+
+ Gets or sets the vial or well form auto sampler.
+
+
+
+
+ Gets or sets the amount of sample injected.
+
+
+
+
+ Gets or sets bar code from scanner (if attached).
+
+
+
+
+ Gets or sets the bar code status.
+
+
+
+
+ Gets or sets a name to identify the Calibration or QC level associated with this sample.
+ Empty if this sample does not contain any calibration compound.
+
+
+
+
+ Gets or sets the bulk dilution factor (volume correction) of this sequence row.
+
+
+
+
+ Gets or sets the instrument method filename of this sequence row.
+
+
+
+
+ Gets or sets the name of acquired file (excluding path).
+
+
+
+
+ Gets or sets the name of calibration file.
+
+
+
+
+ Gets or sets the ISTD amount of this sequence row.
+
+
+
+
+ Gets or sets the row number.
+
+
+
+
+ Gets or sets the path to original data.
+
+
+
+
+ Gets or sets the processing method filename of this sequence row.
+
+
+
+
+ Gets or sets the type of the sample.
+
+
+
+
+ Gets or sets the sample volume of this sequence row.
+
+
+
+
+ Gets or sets the sample weight of this sequence row.
+
+
+
+
+ Gets or sets the collection of user text.
+
+
+
+
+ Create a deep copy of the current object.
+
+ A deep copy of the current object.
+
+
+
+ Class to represent a scan
+
+
+
+
+ Initializes a new instance of the class.
+ Default construction.
+
+
+
+
+ Initializes a new instance of the class.
+ Overload for processed data (such as averaged or subtracted)
+
+
+ The converter from mass to frequency (used by FT data averaging and exporting).
+
+ Optional: Noise and baseline table
+
+
+
+ Copy scan data. This protected method is inteded for derived object use only.
+ It is not a "deep clone" of a scan.
+
+ Scan to copy
+
+
+
+ Gets or sets A second data stream for the scan
+
+
+
+
+ Gets A second data stream for the scan
+
+
+
+
+ Gets a value indicating whether this scan has a centroid stream.
+
+
+
+
+ Gets a value indicating whether this scan has a noise table.
+ This will be true only if the scan was constructed with the overload containing this table.
+ Note that this is not related to having "noise and baseline" values with centroid stream data.
+ This is a separate table, used for spectrum averaging and subtraction of orbitrap data
+
+
+
+
+ Gets or sets a value indicating whether the User Tolerance value is being used.
+
+
+
+
+ Gets or sets the mass resolution for all scan arithmetic operations
+
+
+
+
+ Gets or sets a value indicating whether, when requesting "Preferred data", the centroid stream will be returned.
+ For example "", "".
+ If this property is false, or there is no centroid stream, then these methods will return
+ the data from . For greater efficiency, callers should cache the return of "".
+ Typically data processing, such as elemental compositions, should use these methods.
+
+
+
+
+ Gets peak flags (such as saturated) for default data stream (usually centroid stream, if present).
+ Falls back to data if centroid stream is not preferred or not present
+
+
+
+
+ Gets Mass of base peak default data stream (usually centroid stream, if present).
+ Falls back to data if centroid stream is not preferred or not present
+
+
+
+
+ Gets Noise of base peak for default data stream (usually centroid stream, if present).
+ Falls back to zero if centroid stream is not preferred or not present
+
+
+
+
+ Gets Resolution of base peak for default data stream (usually centroid stream, if present).
+ Falls back to zero if centroid stream is not preferred or not present
+
+
+
+
+ Gets peak flags (such as saturated) for default data stream (usually centroid stream, if present).
+ Falls back to data if centroid stream is not preferred or not present
+
+
+
+
+ Gets Intensity for default data stream (usually centroid stream, if present).
+ Falls back to data if centroid stream is not preferred or not present
+
+
+
+
+ Gets the Mass for default data stream (usually centroid stream, if present).
+ Falls back to data if centroid stream is not preferred or not present
+
+
+
+
+ Gets Noises for default data stream (usually centroid stream, if present).
+ Returns an empty array if centroid stream is not preferred or not present
+
+
+
+
+ Gets Resolutions for default data stream (usually centroid stream, if present).
+ Returns an empty array if centroid stream is not preferred or not present
+
+
+
+
+ Gets or sets the number of scans which were combined to create this scan.
+ For example: By the scan averager.
+ This can be zero if this is a "scan read from a file"
+
+
+
+
+ Gets or sets Header information for the scan
+
+
+
+
+ Gets Header information for the scan
+
+
+
+
+ Gets or sets Type of scan (for filtering)
+
+
+
+
+ Gets or sets The data for the scan
+
+
+
+
+ Gets The data for the scan
+
+
+
+
+ Gets or sets IScanSubtract interface pointer.
+
+ Interface to perform subtraction
+
+
+
+ Gets or sets IScanAdd interface.
+ This delegates addition of FT profile scans.
+
+ Interface to perform addition
+
+
+
+ Gets or sets the Tolerance value.
+
+
+
+
+ Get or sets a value indicating whether scan + and - operators will merge data from scans
+ which were not scanned over a similar range.
+ Only applicable when scans only have a single segment.
+ By default: Scans are considered incompatible if:
+ The span of the scanned mass range differs by 10%
+ The start or end of the scanned mass range differs by 10%
+ If this is set as "true" then any mass ranges will be merged.
+
+
+
+
+ Create a scan object from a file and a retention time.
+
+
+ File to read from
+
+
+ time of Scan number to read
+
+
+ The scan read, or null of the scan number if not valid
+
+
+
+
+ test if 2 scans can be averaged or subtracted.
+
+
+ Returned as "true" if all segments are the same
+
+
+ Current scan object
+
+
+ The scan to possibly add
+
+
+ true if scans can be merged
+
+
+
+
+ Create an object which can be used to read scans from a file, with optional caching.
+ This is valuable if repeated operations (such as averaging) are expected over the same region of data.
+ Scans returned from each call are unique objects, even if called repeatedly with the same scan number.
+
+
+ Number of scans cached.
+ When set to 1 or more, this creates a FIFO, keeping track of the most recently read scans.
+ If a scan in the FIFO is requested again, it is pulled from the cache.
+ If a scan is not in the cache, then a new scan is read from the file.
+ If the cache is full, the oldest scan is dropped. The newly read scan is that added to the FIFO cache.
+ If size is set to 0, this makes a trivial object
+ with no overheads, that directly gets scans from the file.
+
+
+ Object to read scans from a file
+
+
+
+
+ Create a scan object from a file and a scan number.
+
+
+ File to read from
+
+
+ Scan number to read
+
+
+ The scan read, or null of the scan number if not valid
+
+
+
+
+ Merge the two scans.
+
+ current scan object(this).
+ scan object to merge.
+ returns the sum of two scans.
+
+
+
+ Averages the two scans.
+
+ scan object to average.
+ divider (or) common factor.
+ returns the average scan.
+
+
+
+ Subtract method for MS data.
+
+ current scan object.
+ scan object to subtract.
+ returns the subtracted scan object.
+
+
+
+ Converts the segmented scan to centroid scan.
+ Used to centroid profile data.
+
+
+ The scan to centroid
+
+ The centroided version of the scan
+
+
+
+ Make a deep clone of this scan.
+
+
+ An object containing all data in the input, and no shared references
+
+
+
+
+ Return a slice of a scan which only contains data within the supplied mass Range or ranges.
+ For example: For a scan with data from m/z 200 to 700, and a single mass range of 300 to 400:
+ This returns a new scan containing all data with the range 300 to 400.
+
+ The mass ranges, where data should be retained. When multiple ranges are supplied,
+ all data which is in at least one range is included in the returned scan
+ If this is true, then the scan will reset the
+ scan's mass range to the bounds of the supplied mass ranges
+ This setting only applies when the scan has both profile and centroid data.
+ If true: When there isa centroid near the start or end of a range, and the first or
+ final "above zero" section of the profile includes that peak, then the profile is extended, to include the points
+ which contribute to that peak. A maximum of 10 points may be added
+ A copy of the scan, with only the data in the supplied ranges
+
+
+
+ Order mass ranges by lowest mass.
+
+
+
+
+
+
+
+ generate frequency table for this scan.
+ This method only applied to "FT" format scans
+ which have mass to frequency calibration data.
+ When a scan in constructed from processing algorithms, such
+ as averaging, a frequency to mass converter is used to
+ create this scan. This same converter can be used to create
+ a frequency table, which would be needed when writing averaged (or subtracted) data to a raw file.
+
+
+ The frequency table.
+
+
+
+
+ Generates a "noise and baseline table".
+ This table is only relevant to FT format data.
+ For other data, an empty list is returned.
+ This table is intended for use when exporting processed (averaged, subtracted) scans to a raw file.
+ If this scan is the result of a calculation such as "average of subtract" it may be constructed using
+ an overload which includes a noise and baseline table.
+ If so: that tale is returned.
+ Otherwise, a table is generated by extracting data from the scan.
+
+
+ The nose and baseline data
+
+
+
+
+ The add centroids.
+
+
+ The current scan.
+
+
+ The input scan.
+
+
+
+
+ Addition of FTMS centroid scans (called by operator +=)
+
+
+ current scan object(this).
+
+
+ scan to right of + operator (that)
+
+
+ The sum of the two scans
+
+
+
+
+ The add scan stats.
+
+
+ The left scan.
+
+
+ The right scan.
+
+
+ The scan stats.
+
+
+ The base height.
+
+
+ The base mass.
+
+
+
+
+ The add segment.
+
+
+ The left scan.
+
+
+ The left segment.
+
+
+ The right segment.
+
+
+ The segment number.
+
+
+ The result scan segments.
+
+
+ The base height.
+
+
+ The base mass.
+
+
+ The process segments.
+
+
+
+
+ Add segments.
+
+
+ The _identical flag.
+
+
+ The left scan.
+
+
+ The right scan.
+
+
+ The process segments.
+
+
+ The sum of the two scans, which is also in "leftScan".
+
+
+
+
+ The append peak.
+
+
+ The results.
+
+
+ The new peak.
+
+
+ The mass fuzz (tolerance).
+
+
+
+
+ Determine if this is a basic profile type.
+
+
+ The packet type.
+
+
+ True if it is basic profile type.
+
+
+
+
+ Attempt to find the tolerance factor, from the base peak of a scan
+ return "true" on fail.
+
+
+ The centroid count.
+
+
+ The centroid stream.
+
+
+ The base mass.
+
+
+ The tolerance factor.
+
+
+ The is orbitrap data.
+
+
+ The calculated tolerance factor.
+
+
+
+
+ Returns the default tolerance factor.
+
+
+ flag to Check if we have LTQ-FT or Orbitrap data
+
+
+ The calculate default tolerance factor.
+
+
+
+
+ The calculate mass fuzz.
+
+
+ The current scan.
+
+
+ The left centroid.
+
+
+ The right centroid.
+
+
+ The tolerance factor.
+
+
+ The is orbitrap data.
+
+
+ The left iterator.
+
+
+ The right iterator.
+
+
+ The process segments.
+
+
+ The calculated mass fuzz.
+
+
+
+
+ Calculates the Mass tolerance for centroid peak.
+
+
+ current mass tolerance value.
+
+
+ tolerance factor
+
+
+ previous mass tolerance value
+
+
+ flag to check if we have LTQ-FT or Orbitrap data.
+
+
+ tolerance unit
+
+
+ The calculate mass fuzz for centroid peak.
+
+
+
+
+ Calculates the Mass tolerance for profile peak.
+
+
+ current mass tolerance value.
+
+
+ tolerance factor
+
+
+ previous mass tolerance value
+
+
+ flag to check if we have LTQ-FT or Orbitrap data.
+
+
+ tolerance unit
+
+
+ The calculated mass fuzz for profile peak.
+
+
+
+
+ Calculates the tolerance factor
+
+
+ CentroidStream object
+
+
+ calculates the tolerance factor at specified index.
+
+
+ flag to Check if we have LTQ-FT or Orbitrap data
+
+
+ The calculate tolerance factor for labels.
+
+
+
+
+ Calculate total scan size.
+
+
+ The segments.
+
+
+ The total scan size.
+
+
+
+
+ Check for identical.
+
+
+ The identical flag.
+
+
+ The current scan object.
+
+
+ The input scan object.
+
+
+ The number of segments found
+
+
+
+
+ The combine peaks.
+
+
+ The left.
+
+
+ The right.
+
+
+
+
+ The convert centroid stream tolerance.
+
+
+ The current scan.
+
+
+ The centroid stream.
+
+
+ The counter.
+
+
+ The use peak width as mass fuzz.
+
+
+ The resolution factor.
+
+
+ The converted centroid stream tolerance.
+
+
+
+
+ Create an empty centroid stream.
+
+
+ The size.
+
+
+ The scan number.
+
+
+ A centroid stream which has "size" data packets.
+
+
+
+
+ Create a segmented scan.
+
+
+ The number of peaks in the scan.
+
+
+ The created scan
+
+
+
+
+ Assuming that the methods ReplaceScanDataArrays and UpdateSegmentSizes
+ have already been called, the result scan
+ is formatted ready to accept new data
+ Merge the data from the results of adding each segment
+
+
+ The scan.
+
+
+ The segments.
+
+
+
+
+ The fill segment range.
+
+
+ The left segment.
+
+
+ The right segment.
+
+
+ The output segmented scan.
+
+
+
+
+ find segment start packet index number.
+
+
+ The left segment.
+
+
+ The right segment.
+
+
+ The iterator.
+
+
+ The count of peaks before this segment in the left scan.
+
+
+ The count of peaks before this segment in the right scan.
+
+
+
+
+ Fix the length of segment tables after a merge
+
+
+ scan which will contain a merge
+
+
+ segments which are result of addition
+
+
+
+
+ The get subtracted index.
+
+
+ The current scan.
+
+
+ The right scan.
+
+
+ The output peak count.
+
+
+ The base height.
+
+
+ The base mass.
+
+
+ Index of the subtracted scan
+
+
+
+
+ get the sum index.
+
+
+ The current scan.
+
+
+ The right scan.
+
+
+ The output peak count.
+
+
+ The base height.
+
+
+ The base mass.
+
+
+ The scan index data for the summed scans
+
+
+
+
+ get the tolerance factor.
+
+
+ The current scan.
+
+
+ The right scan.
+
+
+ The left centroid.
+
+
+ The right centroid.
+
+
+ The right centroid count.
+
+
+ Get the tolerance factor.
+
+
+ The is orbitrap data.
+
+
+ The left centroid count.
+
+
+ The tolerance factor.
+
+
+
+
+ Test if is known profile type.
+
+
+ The packet type.
+
+
+ true if this is known to be profile
+
+
+
+
+ The merge segments.
+
+
+ The scan.
+
+
+ The all results.
+
+
+
+
+ Order the segment ranges of the scan, and order the "allResults" table to match
+ This is part of the process to centroid a scan
+ when this is done, it is more efficient to combine "allResults" into a single segment
+
+
+ The scan ranges.
+
+
+ The all results.
+
+
+ The segment range table
+
+
+
+
+ Addition of SegmentedScan's.
+ this case for profile data,which matches with identical or similar segments.
+
+
+ set if the flags have the same segments
+
+
+ left scan of addition "left + right"
+
+
+ right scan of addition "left + right"
+
+
+
+
+ Added for supporting addition of FTMS profile points
+
+
+
+
+
+
+
+ Index into input data
+
+ Mass Tolerance
+
+
+
+
+ Adds the two CentroidSteam's
+
+
+ Current position in the output buffer
+
+
+ previous output CentroidStream.
+
+
+ current CentroidStream.
+
+
+ index.
+
+
+ mass value.
+
+
+
+
+ The put peak.
+
+
+ The result count.
+
+
+ The out put.
+
+
+ The in put.
+
+
+ The position.
+
+
+ The mass fuzz.
+
+
+ The process segments.
+
+
+
+
+ Adds the two segmented scan.
+
+
+ index into output array
+
+
+ previous output peak.
+
+
+ current peak object.
+
+
+ index.
+
+
+ mass value.
+
+
+
+
+ The remove zeros.
+
+
+ The stream.
+
+
+ The new size.
+
+
+
+
+ The remove zeros.
+
+
+ The scan.
+
+
+ The new size.
+
+
+
+
+ create the arrays for the scan, with a new length
+
+
+ The scan.
+
+
+ The total.
+
+
+
+
+ Create a new scan out of the data in resultScanSegments
+ in the private method, the scan is assumed to have valid segment ranges
+ and the correct size of the segment tables
+ only the data for the segments needs to be replaced
+
+
+ The scan.
+
+
+ The segments.
+
+
+
+
+ Scale the label intensities by a common factor.
+
+
+ common factor
+
+
+ CentroidStream object to scale.
+
+
+ returns the scaled Centroid Stream object.
+
+
+
+
+ Search for the base peak resolution.
+
+
+ base mass value
+
+
+ CentroidStream object to search.
+
+
+ peak value.
+
+
+ The search base peak index.
+
+
+
+
+ Select only non zero values from an array.
+
+
+ The values.
+
+
+ The array of non zero values
+
+
+
+
+ The sub centroids.
+
+
+ The current scan.
+
+
+ The input scan.
+
+
+
+
+ The sub ft centroid data.
+
+
+ The current scan.
+
+
+ The right scan.
+
+
+ The subtracted scan
+
+
+
+
+ Subtract FT Profile Data
+
+
+ The object subtract from this
+
+
+
+
+ The result of the subtraction of the two scans
+
+
+
+
+ Add FT Profile Data
+
+
+ The object subtract from this
+
+
+
+
+ The result of the subtraction of the two scans
+
+
+
+
+ The sub label.
+
+
+ The output index.
+
+
+ The out put.
+
+
+ The input.
+
+
+ The position.
+
+
+ The mass fuzz.
+
+
+
+
+ Subtract a background peak.
+
+
+ The output (foreground scan) counter.
+
+
+ The output (foreground scan).
+
+
+ The input (background scan).
+
+
+ The input (background scan) counter.
+
+
+ The mass fuzz (tolerance).
+
+
+
+
+ The subtract profile segments.
+
+
+ The identical flag.
+
+
+ The current scan.
+
+
+ The input scan.
+
+
+
+
+ The subtract segment.
+
+
+ The left scan.
+
+
+ The left segment.
+
+
+ The right segment.
+
+
+ The segment number.
+
+
+ The result scan segments.
+
+
+ The base height.
+
+
+ The base mass.
+
+
+
+
+ The subtract segments.
+
+
+ The identical flag.
+
+
+ The left scan.
+
+
+ The right scan.
+
+
+ The subtraction result
+
+
+
+
+ Try to merge similar scans.
+
+
+ The current scan object.
+
+
+ The input scan object.
+
+
+ The both centroids.
+
+
+ The counter.
+
+
+ The can merge.
+
+
+ True if can merge similar scans.
+
+
+
+
+ The update segment sizes.
+
+
+ The scan.
+
+
+ The segments.
+
+
+
+
+ The validate centroid scan.
+
+
+ The stream.
+
+
+
+
+
+
+ The validate segmented scan.
+
+
+ The scan.
+
+
+
+
+ Convert tolerance into mass.
+
+
+ The prof.
+
+
+ The positions.
+
+
+ The converted tolerance.
+
+
+
+
+ Find peaks in the current segment (part of centroiding)
+
+ The scan segment (SIM/SRM range)
+
+
+
+
+ The read from file.
+
+
+ The raw file.
+
+
+ The scan number.
+
+
+ The stats.
+
+
+
+
+ The fragment result.
+
+
+
+
+ Gets or sets Intensity.
+
+
+
+
+ Gets or sets Mass.
+
+
+
+
+ Gets or sets Options.
+
+
+
+
+ Helper class for parallel chromatogram generation.
+ This object pulls data from constructor data into the required
+ properties to meet the interface.
+ This object can be used over 1 billion times when generating chromatograms
+ from a sequence of raw files (especially the scan event helper),
+ so all data is pulled into properties.
+ This object can then be used as a "class" rather than "interface"
+ permitting the compiler to inline.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The scan.
+
+
+ The scan index.
+
+
+
+
+ Gets the header, wrapper from supplied interface.
+
+
+
+
+ Gets the index.
+
+
+
+
+ Gets the scan event helper.
+
+
+
+
+ Gets the data.
+
+
+
+
+ Gets the scan event
+
+
+
+
+ Provides a means of averaging scans
+
+
+
+
+ Create a factory, which can be used to average scans.
+
+
+ The tool to average
+
+
+
+
+ Create a scan averaging tool, for use with a specific raw file.
+ This can then be use to average selected scans from the file.
+ Processing of scan filters, and default values for tolerance
+ also use the supplied raw data interface.
+
+ Access to data to be averaged
+ Interface to perform averaging
+
+
+
+ Defines an extended centroid scan (FTMS data), which includes analysis of charge envelopes.
+
+
+
+
+ Gets a value indicating whether charge envelope data
+ was recorded for this scan
+
+
+
+
+ Gets additional annotations per peak, related to change envelopes
+
+
+
+
+ Gets the change envelopes. This include overall information
+ about the envelope, plus the set of included peaks,
+
+
+
+
+ All isotopes just having a different charge will be grouped together in a charge envelope. Due
+ to calculation restrictions it is quite likely that there are further peaks which theoretically
+ be part of the same charge envelope, but where noise level, neighborhood, hardware limitations
+ keep those peaks unassigned.
+ This interfaces has statistics about a charge envelope, but not the contributing peaks.
+
+
+
+
+ This is the monoisotopic mass that a particular peak belongs to. The value is
+ a calculated one, it is very likely that this cannot be seen at all in the spectrum.
+ But it is the reference point of all members of one charge envelope.
+
+ Note that the value becomes 0 if the value is not isotopically resolved. See also and
+
+
+
+ Keep in mind that depending on instrument calibration this value may not exactly match a calculated mass.
+
+
+
+
+
+ This cross-correlation factor is the maximum of all cross-correlation values
+ over all averagines. An averagine is a statistical model of the isotope distribution
+ of the same molecule at a given charge. The observed peaks within the spectrum are fitted
+ to the model, the overlap is calculated by a cross-correlation that only takes the intensities
+ into account.
+
+ The averagine model is strongly linked to peptide analysis. As an example, averagine
+ mass distribution for pesticides are totally different.
+
+
+ Cross-correlation factors vary in the range 0 to 1. 0 will be set if
+ is also 0. In this case, the fit was unsuccessful. The value is also 0 if
+ is set.
+
+
+
+
+
+ This is the index to the top peak centroid in the centroid list coming with the same scan.
+ One can use this to get access to the mass of the so called top peak.
+
+
+ The top peak is that peak in a charge envelope that fulfills two requirements in this order: 1) never being considered
+ to be part of another charge envelope, and 2) having the highest abundance.
+
+
+
+
+ Return whether this charge envelope was created using isotopically resolved species.
+
+ For isotopically resolved peaks the
+ is set. If not resolved, only an average mass is returned.
+
+
+
+
+
+ When peaks are non-isotopically resolved (see ),
+ this value contains the average mass of all species in the envelope, otherwise it contains 0.
+
+
+
+
+ Defines a set of peaks which are part of a charge envelope
+
+
+
+
+ Gets or sets the collection of peaks in this charge envelopes
+
+
+
+
+ Gets or sets the index into the centroids for the top peak
+
+
+
+
+ Data about a single peak within a charge envelope.
+
+ This grouping has a separate structure explained in . While presentation to CC consumers
+ may be different, the (at least Orbitrap-)generated data structure allocates one 16-bit value for each centroid.
+
+
+
+
+
+ Returns true if the peak is a monoisotopic peak, false otherwise.
+
+
+
+
+ Returns true if the conditions below met, false otherwise.
+
+ The top peak is that peak in a charge envelope that fulfills two requirements in this order:
+ 1) never being considered to be part of another charge envelope, and
+ 2) having the highest abundance.
+
+
+
+
+
+ Returns true if the peak and its charge envelope have further isotope sibling (according to averagine model, etc).
+
+ Note that a charge envelope must be considered non-isotopically resolved if at least one of its peaks has this flag "false",
+ and it can be considered an error if some peaks of an envelope have this flag set and other peaks not.
+
+
+
+
+
+ Advanced Peak Detection on (FT) scans allow to better calculate charges of peaks. This is done by finding correlations
+ of peaks. If found, the assumption is considered valid that these peaks belong to the same species of a molecule, but
+ with different charges.
+
+ This grouping has a separate structure explained in . While presentation to CC consumers
+ may be different, the (at least Orbitrap-)generated data structure allocates one 16-bit value for each centroid.
+
+
+ The 16-bit value contains three bits and an index number into an array of s which also come
+ with the same scan.
+ TODO
+ This is an interface. Implementation details ( such as "structure is 16 bit") are not meaningful here.
+ Describe instead "What information is presented to the consumer".
+ Using IPeakAnnotation you can ???
+
+
+
+
+
+ Returns null if information is not available (as with non-APD annotated Orbitrap spectra or unresolved peaks),
+ the index to the corresponding otherwise. Values out of range must not exist and should be checked
+ in advance.
+
+
+
+
+ Defines data which explains how charges are calculated.
+ ChargeEnvelopes contains summary information about each detected envelope.
+ CentroidAnnotations can be used to determine which charge envelope (if any) a peak belongs to.
+
+
+
+
+ Gets or sets a flag indicating whether there are charge envelopes.
+
+
+
+
+ Gets a value indicating whether this is valid "charge envelope" data, when decoded from a raw file.
+ Raw files have diagnostic sections of potentially unknown formats, so it is possible that, even though some data exists, it
+ cannot be decoded as charge envelopes.
+
+
+
+
+ Gets summary informtion the "charge envelopes". Purpose needs to be detailed?
+
+
+
+
+ Gets the "Centroid Annotations". Purpose needs to be detailed?
+
+
+
+
+ This class can be ued to decode instrument specific additional data saved with a scan.
+
+
+
+
+ Obtain the annotations for a specific scan
+
+ The raw file
+ scan number
+ Annotations for this scan
+
+
+
+ Read centroid data for a scan, with annotations (where available).
+ These annotaions are set by the charge calculator in some instruments.
+
+ The raw file
+ scan number
+ set if reference and exception peaks should be returned
+ The extended scan
+
+
+
+ Read centroid data for a scan, with annotations (where available).
+ These annotaions are set by the charge calculator in some instruments.
+ This version returns an internal type
+
+ The raw file
+ scan number
+ set if reference and exception peaks should be returned
+ The extended scan
+
+
+
+ An extension of centroids which includes:
+ Peak charge envelopes.
+ Annotations for each centroid
+
+
+
+
+ Created an extended centroid stream by making a copy of the base data
+
+
+
+
+
+ Gets or sets the annotation about charge envelopes for each peak
+
+
+
+
+ Gets or sets a value indicating whether charge envelope data
+ was recorded for this scan
+
+
+
+
+ This class converts the byte array within the debug section of an Orbitrap scan to a list
+ of centroid annotations. Those annotations may point to charge envelopes, they also become
+ available.
+
+
+
+
+ Gets or sets a flag indicating whether there are charge envelopes.
+
+
+
+
+ Gets or sets a value indicating whether this is valid data.
+ It is valid, even if there is no data available.
+ It is invalid if data has been found, but cannot be decoded.
+
+
+
+
+ Get access to the charge envelopes. It is an empty array if no APD data has been calculated
+ or if unfolding the binary data shows errors.
+
+ Returns the charge envelopes of the scan
+
+
+
+ Get access to the centroid peak annotations. It is an empty array if no APD data has been calculated
+ or if unfolding the binary data shows errors.
+
+ Returns the peak annotations of the scan
+
+
+
+ This class defines the characteristics of an Orbitrap debug subsegment.
+
+ The debug section according to unified_data_format.html has the format:
+
+
+ Type Meaning
+
+ -
+ Uint32 Or'd combination of all debug sub-section flags + some extra bits
+ SubSection defined below
+ SubSection further sub-sections, end defined by overall length of debug section
+
+
+
+
+ The debug sub-section according to unified_data_format.html has the format:
+
+
+ Type Meaning
+
+ -
+ Uint32 Content flags (0x100 = transients, 0x80000 for extensions, see below)
+ UInt32 Count of 32-bit word of this sub-section
+ UInt32[] Content depending on sub-section
+
+
+
+
+ The APD extensions and all other extensions have an UInt32 specifier as first 32-bit word what data follows. The specifiers are:
+
+
+ Value Meaning
+
+ -
+ 1 transients (effectively not in use)
+ 2 Annotations (array of 16-bit values for each centroid)
+ 3 ChargeEnvelopes (array of those)
+
+
+
+
+ The APD annotations section is an array or annotation elements, each consisting of 16-bit values, one for each centroid. For an
+ odd number of centroids, there exists a further 16-bit value of unknown content. Each annotation has a format described in
+ class description of .
+
+
+ The APD charge envelopes section is an array or charge envelopes. Each charge envelopes has a format described in
+ class description of .
+
+
+
+
+
+ What type of sub-segment do we have?
+
+
+
+
+ According to unified_data_format.html, DBUGCON definition, the 9th LSB bit
+ is a send_transient section.
+
+
+
+
+ This value is reserved for extensions of the debug section. Sub-segments have a further indicator
+ describing the packet type.
+
+
+
+
+ This debug segment extension is an array of s.
+
+
+
+
+ This debug segment extension is an array of s.
+
+
+
+
+ This is the offset into the byte array to which this structure belongs.
+
+
+
+
+ Access to the size of data in section without headers in 32-bit words.
+
+
+
+
+ What kind of debug sub-segment is contained in this sub-segment?
+
+
+
+
+ This structure is one element of the annotations . The format is:
+
+
+
+ Bit Meaning
+
+ -
+ 0-12 (LSB) Index into array of charge envelopes (0x1FFF=no envelope)
+ 13 Flag IsNonIsotopicallyResolved
+ 14 Flag IsClusterTop
+ 15 Flag IsMonoisotopic
+
+
+
+
+
+
+
+ Implementation of
+
+
+
+
+ Implementation of
+
+
+
+
+ Implementation of
+
+
+
+
+ Not resolved
+
+
+
+
+ Implementation of
+
+
+
+
+ This structure is one element of the charge envelopes . The format is:
+
+
+
+ Type Meaning
+
+ -
+ double Usually monoisotopic mass (with respect to instrument accuracy), can be average mass
+ float Cross-correlation of applied model (like averagine), can be 0 for various reasons
+ (U)Int32 Index into centroid list of peak being most abundant in this envelope
+
+
+
+
+
+
+
+ Access to the stored mass, which is either the monoisotopic mass or rge average mass, depending on flags of the annotation section.
+
+
+
+
+ Cross-correlation in the range [0 - 1] of the fitting of the envelope.
+
+
+
+
+ Index into the array of centroids. The indexed centroid is the most abundant of all centroids belonging to this envelope.
+
+ Orbitrap format never uses addresses more than 2**30 peaks, so no need for uint.
+
+
+
+
+
+ This class implements . It bases on a stored Orbitrap data block.
+
+
+
+
+ Initialize a and assign the structure on which it bases.
+
+ Data structure containing its core values
+
+
+
+ Returns the monoisotopic mass for a model-fitted envelope and all species belonging to
+ this envelope with respect to the mass accuracy or 0 if resolved non-isotopically.
+ See .
+
+
+
+
+ Cross-correlation value of the model fitting in the range 0-1. Value remains 0 for non-isotopically
+ resolved peaks or unsuccessful fittings.
+
+
+
+
+ Index into centroid list to the most abundant centroid within this envelope. The value can be used
+ for grouping.
+
+
+
+
+ Returns true if at least one peak belonging to the charge envelope was non-isotopically resolved.
+
+ Call the setter for each in order to detect non-isotopically resolved peaks.
+
+
+
+
+
+ Returns true if at least one peak belonging to the charge envelope was non-isotopically resolved.
+
+ Call the setter for each in order to detect non-isotopically resolved peaks.
+
+
+
+
+
+ Returns 0 for a model-fitted envelope or the average mass if resolved non-isotopically.
+ See .
+
+
+
+
+ category of tokens with a scan filter
+
+
+
+
+ A mass range token.
+
+
+
+
+ A generic token (a string, such as "Full").
+
+
+
+
+ A data format ("p" or "c").
+
+
+
+
+ A polarity token ("+" or "-").
+
+
+
+
+ An MS order token.
+
+
+
+
+ A parent mass.
+
+
+
+
+ A data dependent token "d".
+
+
+
+
+ Describes a scan, based on interpreting filter strings.
+ This class need not be serialized or cloned, as it is intended to be "read only"
+ All information can be kept as a string. Call FromString to initialize this.
+ This class is designed for use where filter information is
+ only available as a string (such as with implementations of IRawData)
+ Newer code (with IRawDataPlus) should use IScanFilter for details about filters.
+
+
+
+
+ Gets or sets the Polarity, Positive or Negative ions
+
+
+
+
+ Gets or sets a value indicating whether this scan depends on data in previous scans
+
+
+
+
+ Gets or sets a value indicating whether the scan is centroid format (else profile)
+
+
+
+
+ Gets the precursor masses and their means of activation
+
+
+
+
+ Gets or sets the MS or MS/MS order (for example 2 for MS/MS)
+
+
+
+
+ Gets or sets the Mass Ranges scanned
+
+
+
+
+ Gets or sets a value indicating whether this is an MSX scan type
+
+
+
+
+ Gets or sets the tolerance used when matching mass ranges.
+ It is initialized to 0.0005.
+ On parsing a string (using the FromString method), this is set based on the precision of the "low mass value" from the string.
+ For example, for a mass range of "34.256 - 41.365" the precision is determined to be 3 decimal places
+ and the tolerance is initialized to "0.0005" which will match items which have the same "3 decimals places".
+ It is assumed that all values in a parsed string have the same mass precision.
+
+
+
+
+ Create a scan definition from a filter strings. The string is formatted as a list of text tokens, separated by spaces.
+ Most tokens can be any text, apart from some specifically parsed items:
+
+ + Positive
+ - Negative
+ d data dependant
+ c Centroid
+ p Profile
+ [Ranges] scanned ranges, for example [100.1-300.2,556.8-901.4]
+
+
+
+ String to parse
+
+
+ Scan definition which matches the string
+
+
+
+
+ Sort the filters in alphabetic and numeric order of appropriate fields.
+ It is assumed that the supplied list has been automatically generated, and
+ therefore filters with the same parameters will have those in the same order
+ in the string.
+
+
+ Items to sort
+
+
+ A sorted list of the filters
+
+
+
+
+ Sort the filters in alphabetic and numeric order of appropriate fields.
+ Compact the filters, so that filters which match within tolerance are eliminated.
+ This is designed to take input from "Auto filter" or similar methods.
+ It is not designed to take a "user generated list".
+ It is assumed that the supplied list has been automatically generated, and
+ therefore filters with the same parameters will have those in the same order
+ in the string.
+
+
+ Items to sort
+
+
+ Tolerance for matching precursor masses.
+ If this is zero, then the tolerance is based on the number of precision digits entered in the text
+
+
+ A sorted list of the filters
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ The list of sub strings (tokens) in the supplied filter text
+
+
+ The tokens.
+
+
+
+
+ Convert to a text string
+
+
+ String form of the filter
+
+
+
+
+ Strip a number. Removes a number from the start of the supplied string.
+
+
+ The string, which should start with a number.
+
+
+ The number of decimal places found in the string.
+
+
+ The stripped number.
+
+
+
+
+ Parse definitions.
+
+
+ The filters.
+
+
+ The parsed scan definitions
+
+
+
+
+ Convert definitions to strings.
+
+
+ The definitions.
+
+
+ The strings for each scan definition
+
+
+
+
+ Create a unique list of definitions, from a list which may have duplicates.
+
+
+ The definitions.
+
+
+ The precursor mass tolerance.
+
+
+ The list of unique definitions
+
+
+
+
+ Match a generic token
+
+
+ Token to look for
+
+
+ List of all tokens in the scan filter
+
+
+ True if the token is found
+
+
+
+
+ Read the activation code string.
+
+
+ The string being parsed.
+
+
+ The precursor to update.
+
+
+
+
+ Find ranges from token.
+
+
+ The item.
+
+
+ The parsed.
+
+
+ The mass ranges
+
+
+
+
+ Create from a string.
+
+
+ The string to create from.
+
+
+
+
+ Add the MS order.
+
+
+ The number of parent masses expected before this call.
+
+
+ The item.
+
+
+ The number of parent masses expected after parsing the MS order.
+
+
+
+
+ Add initial mass range.
+
+
+ The item to parse.
+
+
+ The mass ranges found so far.
+
+
+ True if more mass ranges are expected.
+
+
+
+
+ Add a single char item.
+
+
+ The item to add.
+
+
+
+
+ Add a mass range.
+
+
+ The item containing a range.
+
+
+ The mass ranges found so far.
+
+
+ True if more mass ranges are expected.
+
+
+
+
+ Add a parent mass.
+
+
+ The number of parent masses expected.
+
+
+ The item.
+
+
+ The next token.
+
+
+ True if more parent masses are expected.
+
+
+
+
+ Add a token.
+
+
+ The token.
+
+
+ The token class.
+
+
+
+
+ Test if a scan type "passes the filter", that is the scan
+ type is the same as, or is a superset of the scan definition.
+
+
+ The type of the scan which needs to be checked
+
+
+ true if the supplied scan has passed a filter against this scan definition
+
+
+ is out of range.
+
+
+
+
+ Test if a scan type "passes the filter", that is the scan
+ type is the same as, or is a superset of this scan definition.
+ The exact test is: All tokens in "this" must be present in "scanTypeFilter".
+
+
+ The type of the scan which needs to be checked
+
+
+ Mass tolerance used to match MS/MS precursors
+
+
+ true if the supplied scan has passed a filter against this scan definition
+
+
+
+
+ Test for a matching token.
+ Test that the token from "the tokens in this" is contained within "scan type to check"
+
+
+ The scan type to check (for being a superset of "this").
+
+
+ The token to look for, in "scan type to check"
+
+
+ The tokens of the scan being tested.
+
+
+ The precursor mass tolerance.
+
+
+ True if there is a match
+
+
+ thrown if the token is not valid
+
+
+
+
+ Match precursors.
+
+
+ The scan type filter.
+
+
+ The precursor mass tolerance.
+
+
+ True if precursors match.
+
+
+
+
+ Get comparison tolerance.
+
+
+ The precursor mass tolerance.
+
+
+ The precursor.
+
+
+ The other precursor.
+
+
+ The comparison tolerance.
+
+
+
+
+ match the ranges.
+
+
+ The filter.
+
+
+ The tolerance.
+
+
+ True if ranges match.
+
+
+
+
+ Compares the current object with another object of the same type.
+
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared.
+ The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+ An object to compare with this object.
+
+
+
+
+ Compares the current Ranges with another object's Ranges.
+
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared.
+ The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+ An object to compare with this object.
+
+
+
+
+ Compares the current object's Precursors with another object's Precursors.
+
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+ An object to compare with this object.
+
+
+
+
+ The scan event builder.
+ This class permits a scan event to be built, by adding
+ MS/MS reactions, mass ranges etc.
+ It can be used as a helper to log MS data into a raw file.
+ This builder does not support parsing from a filter string,
+ or conversion to filter string format.
+ The "ToString" method provides basic .Net object formatting only.
+ The builder may be constructed as default or from IScanEvent or IScanFilter.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Copies data from the supplied event.
+
+
+
+
+ Initializes a new instance of the class.
+ Note that this constructor makes a best case mapping between filter and event
+ Some items specific to filter (such as "MassPrecision") cannot be preserved.
+ Event only features (such as "IsCustom") are initialized to defaults.
+ applications using this feature should test use cases.
+
+
+ Copies data from the supplied filter.
+
+
+
+
+ copy base interface items.
+
+
+ The other.
+
+
+
+
+ Initializes a new instance of the class.
+ Most properties are initialized to "Any" (feature not used).
+ Numeric values have defaults (0), apart from ScanTypeIndex
+ which is set to "-1" for undefined.
+
+
+
+
+ Gets or sets the accurate mass setting.
+
+
+
+
+ Gets or sets Compensation Voltage Option setting.
+ Composition voltage is exclusive with source fragmentation,
+ so only one may be active.
+
+
+
+
+ Gets or sets Compensation Voltage type setting.
+ Composition voltage is exclusive with source fragmentation,
+ so only one may be active.
+ When set to SingleValue a value must be added using AddSourceFragmentationInfo.
+ When set to Ramp two values must be added using AddSourceFragmentationInfo.
+ When set to SIM, there must be one value added per (scanned) mass range.
+
+ See for possible values
+
+
+
+ Gets or sets the corona scan setting.
+
+
+
+
+ Gets or sets the dependent scan setting.
+ A scan is "dependent" if the scanning method is based
+ on analysis of data from a previous scan.
+
+
+
+
+ Gets or sets the detector scan setting.
+
+ See for possible values
+
+
+
+ Gets or sets the detector value.
+
+ Floating point detector value
+
+
+
+ Gets or sets the electron capture dissociation setting.
+
+
+
+
+ Gets or sets the electron capture dissociation value.
+
+ Floating point electron capture dissociation value
+
+
+
+ Gets or sets the electron transfer dissociation setting.
+
+
+
+
+ Gets or sets the electron transfer dissociation value.
+
+ Floating point electron transfer dissociation value
+
+
+
+ Gets or sets the enhanced scan setting.
+
+
+
+
+ Gets or sets the field free region setting.
+
+ See for possible values
+
+
+
+ Gets or sets the higher energy CID setting.
+
+
+
+
+ Gets or sets the higher energy CID value.
+
+ Floating point higher energy CID value
+
+
+
+ Gets or sets the ionization mode scan setting.
+
+ See for possible values
+
+
+
+ Gets or sets a value indicating whether this is a custom event.
+ A custom event implies that any scan derived from this event could be different.
+ The scan type must be inspected to determine the scanning mode, and not the event.
+
+
+
+
+ Gets a value indicating whether this event is valid.
+
+
+
+
+ Gets the number expected SID values.
+
+
+ The number of values
+
+
+
+
+ Gets the number expected CV values.
+
+
+ The number of values
+
+
+
+
+ Gets or sets the lock scan setting.
+
+
+
+
+ Gets or sets the mass analyzer scan setting.
+
+ See for possible values
+
+
+
+ Gets the mass calibrator count.
+
+
+
+
+ Gets the number of (precursor) masses
+
+ The size of mass array
+
+
+
+ Gets the number of mass ranges for final scan
+
+ The size of mass range array
+
+
+
+ Gets or sets the scan MS/MS power setting.
+
+ See for possible values
+
+
+
+ Gets or sets the Multi notch (Synchronous Precursor Selection) type
+
+
+
+
+ Gets or sets the multi-photon dissociation setting.
+
+
+
+
+ Gets or sets the multi-photon dissociation value.
+
+ Floating point multi-photon dissociation value
+
+
+
+ Gets or sets the Multiplex type
+
+
+
+
+ Gets or sets MultiStateActivation type setting.
+
+
+
+
+ Gets or sets the event Name.
+
+
+
+
+ Gets or sets the parameter a.
+
+
+
+
+ Gets or sets the parameter b.
+
+
+
+
+ Gets or sets the parameter f.
+
+
+
+
+ Gets or sets the parameter r.
+
+
+
+
+ Gets or sets the parameter v.
+
+
+
+
+ Gets or sets the photo ionization setting.
+
+
+
+
+ Gets or sets the polarity of the scan.
+
+ See for possible values
+
+
+
+ Gets or sets the pulsed dissociation setting.
+
+
+
+
+ Gets or sets the pulsed dissociation value.
+
+ Floating point pulsed dissociation value
+
+
+
+ Gets or sets the scan data format (profile or centroid).
+
+
+
+
+ Gets or sets the scan type setting.
+
+ See for possible values
+
+
+
+ Gets or sets encoded form of segment and scan event number.
+
+ HIWORD == segment, LOWORD == scan type
+
+
+
+ Gets or sets the sector scan setting. Applies to 2 sector (Magnetic, electrostatic) Mass spectrometers, or hybrids.
+
+ See for possible values
+
+
+
+ Gets or sets source fragmentation scan setting.
+
+
+
+
+ Gets the total amount of source fragmentation information.
+ This is all data for SID and CV, and is internally needed to
+ support IScanEvent.
+ To separately count the number of SID vales and CV values, use
+ SourceFragmentationValueCount and CompensationVoltageValueCount
+
+ The size of source fragmentation info array
+
+
+
+ Gets the number of Source Fragmentation values.
+
+ The size of source fragmentation values array
+
+
+
+ Gets the number of Compensation Voltage Fragmentation values.
+
+ The size of Compensation Voltage values array
+
+
+
+ Gets the source fragmentation mass range count.
+
+
+
+
+ Gets or sets the source fragmentation type.
+ source fragmentation is exclusive with Composition voltage,
+ so only one may be active.
+ When set to SingleValue a value must be added using AddSourceFragmentationInfo.
+ When set to Ramp two values must be added using AddSourceFragmentationInfo.
+ When set to SIM, there must be one value added per (scanned) mass range.
+
+ See for possible values
+
+
+
+ Gets or sets supplemental activation type setting.
+
+
+
+
+ Gets or sets the turbo scan setting.
+
+
+
+
+ Gets or sets the ultra scan setting.
+
+
+
+
+ Gets or sets the wide band scan setting.
+
+
+
+
+ add a mass calibrator.
+
+
+ The calibrator to add.
+
+
+
+
+ Adds a set of mass calibrators.
+
+
+ The calibrators to add.
+
+
+
+
+ Adds a mass range.
+
+
+ The mass range.
+
+
+
+
+ Adds a set of mass ranges.
+
+
+ The mass ranges to add.
+
+
+
+
+ Adds an MS stage.
+ For example: for an MS3 scan, 2 MS stages should be added,
+ with the 2 required precursor masses.
+ Each stage may have one or more reactions.
+ Neutral Loss, Neutral Gain and Parent have 1 stage.
+ For multiplex mode, each multiplexed precursor should be added as
+ a separate stage.
+
+
+ The stage.
+
+
+
+
+ Gets an MS stage.
+ For example: for an MS3 scan, there will be 2 MS stages
+ with the 2 required precursor masses.
+ Each stage may have one or more reactions.
+ Neutral Loss, Neutral Gain and Parent have 1 stage.
+
+
+ The index.
+
+
+ The stage at the given index
+
+
+
+
+ Gets the MS stage count.
+
+
+
+
+ Add a source fragmentation value.
+ This is for "source fragmentation (sid)
+ and is only used when "SourceFragmentation" has
+ been enabled. Add one value for "Single value" mode or two values
+ for "Ramp" mode of the enabled feature.
+ For SIM mode, add one value per target mass range.
+
+
+ The value.
+
+
+
+
+ Add a compensation voltage value. This is for "compensation voltage (cv)"
+ and used only when "CompensationVoltage" has
+ been enabled. Add one value for "Single value" mode or two values
+ for "Ramp" mode of the enabled feature.
+ For SIM mode, add one value per target mass range.
+
+
+ The value.
+
+
+
+
+ Adds a source fragmentation mass range.
+
+
+ The mass range to add.
+
+
+
+
+ Clears the mass calibrators list.
+
+
+
+
+ clear the list of mass ranges.
+
+
+
+
+ Resets the list of MS/MS stages.
+ This may be needed if an event is cloned from another event,
+ but the new object needs different MS/MS stages.
+
+
+
+
+ Clears the source fragmentation values.
+
+
+
+
+ Clears the Compensation Voltage values.
+
+
+
+
+ Clears the source fragmentation mass ranges list.
+
+
+
+
+ Retrieves activation type at 0-based index.
+
+
+ Use to get the count of activations.
+
+
+ Index of activation to be retrieved
+
+
+ activation of MS step;
+ See for possible values
+
+
+
+
+ Retrieves precursor(collision) energy value for MS step at 0-based index.
+
+
+ Use to get the count of energies.
+
+
+ Index of precursor(collision) energy to be retrieved
+
+
+ precursor(collision) energy of MS step
+
+
+
+
+ Retrieves precursor(collision) energy validation flag at 0-based index.
+
+
+ Use to get the count of precursor(collision) energy validations.
+
+
+ Index of precursor(collision) energy validation to be retrieved
+
+
+ precursor(collision) energy validation of MS step;
+ See for possible values
+
+
+
+
+ Gets the first precursor mass.
+ This is only valid data where "GetPrecursorRangeValidity" returns true for the same index.
+
+
+ The index.
+
+
+ The first mass
+
+
+
+
+ Retrieves multiple activations flag at 0-based index of masses.
+
+
+ Use to get the count of masses.
+
+
+ Index of flag to be retrieved
+
+
+ true if mass at given index has multiple activations; false otherwise
+
+
+
+
+ Gets the isolation width.
+
+
+ The index.
+
+
+ The isolation width
+
+
+
+
+ Gets the isolation width offset.
+
+
+ The index.
+
+
+ The isolation width offset
+
+
+
+
+ Gets the last precursor mass.
+ This is only valid data where "GetPrecursorRangeValidity" returns true for the same index.
+
+
+ The index.
+
+
+ The last mass
+
+
+
+
+ Retrieves mass value for MS step at 0-based index.
+
+
+ Use to get the count of mass values.
+
+
+ Index of mass value to be retrieved
+
+
+ Mass value of MS step
+
+ Will be thrown when index >= MassCount
+
+
+
+ Gets the mass calibrator, at a given index.
+
+
+ The index, which should be from 0 to MassCalibratorCount -1
+
+
+ The mass calibrator.
+
+ Thrown when requesting calibrator above count
+
+
+
+ Retrieves mass range for final scan at 0-based index.
+
+
+ Use to get the count of mass ranges.
+
+
+ Index of mass range to be retrieved
+
+
+ Mass range for final scan at 0-based index
+
+ Will be thrown when index >= MassRangeCount
+
+
+
+ Determine if a precursor range is valid.
+
+
+ The index.
+
+
+ true if valid
+
+
+
+
+ Gets the reaction data for the mass at 0 based index.
+ Descries how a particular MS/MS precursor mass is fragmented.
+ Equivalent to calling GetMass, GetEnergy, GetPrecursorRangeValidity, GetFirstPrecursorMass
+ GetLastPrecursorMass, GetIsolationWidth, GetIsolationWidthOffset, GetEnergyValid
+ GetActivation, GetIsMultipleActivation.
+ Depending on the implementation of the interface, this call may be more efficient
+ than calling several of the methods listed.
+
+ index of reaction
+ reaction details
+
+
+
+ Retrieves a source fragmentation value at 0-based index.
+
+
+ Index of source fragmentation value to be retrieved
+
+
+ Source Fragmentation value at 0-based index
+
+ Will be thrown when index >= SourceFragmentationValueCount
+
+
+
+ Retrieves a compensation voltage value at 0-based index.
+
+
+ Index of compensation voltage value to be retrieved
+
+
+ Compensation Voltage value at 0-based index
+
+ Will be thrown when index >= CompensationVoltageValueCount
+
+
+
+ Retrieves a source fragmentation info value at 0-based index.
+
+
+ Use to get the count of source
+ fragmentation info values.
+
+
+ Index of source fragmentation info to be retrieved
+
+
+ Source Fragmentation info value at 0-based index
+
+ Will be thrown when index >= SourceFragmentationInfoCount
+
+
+
+ Get the source fragmentation mass range, at a given index.
+
+
+ The index.
+
+
+ The mass range.
+
+
+
+
+ copy mass calibrators from another event.
+
+
+ The other event.
+
+
+
+
+ copy MS/MS stages from another event.
+
+
+ The event from which data is copied from.
+
+
+
+
+ Adds a set of MS stages.
+
+
+ The stages.
+
+
+
+
+ copy scanned mass ranges from another event.
+
+
+ The other event.
+
+
+
+
+ copy source fragmentation info from another event.
+
+
+ The other event.
+
+
+
+
+ copy source fragmentation mass ranges from another event.
+
+
+ The other event.
+
+
+
+
+ copy various tables from another event.
+
+
+ The other event.
+
+
+
+
+ copy various tables from another event base.
+
+
+ The other event.
+
+
+
+
+ This class adds extended features to the Scan Event interface.
+ It acts as a "helper class" rather than "extension methods"
+ so that it can hold certain state information.
+ A common use case is:
+ Scan event information is read from a raw file.
+ Multiple uses are made of this
+ (for example, testing if this scan should participate in 1000s chromatograms).
+ This class can organize information from the scan event,
+ such that "filter comparisons" or other work with events and filters
+ are more efficient. There is a very small overhead in constructing this object,
+ which still keeps the original interface reference in its construction factory.
+ The class is designed for thread safe testing.
+ TestScanAgainstFilter or TestScanAgainstNames may be called on multiple threads.
+
+
+
+
+ The match tolerance for comparing two energy values
+
+
+
+
+ The instrument mass resolution (used in determining if mass ranges match up or not)
+
+
+
+
+ Gets the scan event which was used to construct this object.
+ If the object was created from IScanFilter, this will be null
+
+
+
+
+ Test if two tri-states are different.
+
+
+ The state 1.
+
+
+ The state 2.
+
+
+ True if "filter failed to match"
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The scan event.
+
+ Event code from scan index, -1 (default) if not known
+
+
+
+ Thread safe initialize
+
+
+
+
+ Gets or sets the reactions.
+
+
+
+
+ create reactions table
+
+
+
+
+ The scan event helper factory creates a ScanEventHelper from a scanEvent interface.
+
+
+ The scan event.
+
+ event code (form scan index). -1 for "not known"
+
+ The .
+
+
+
+
+ This scan event helper factory creates a ScanEventHelper from an IScanFilter interface.
+ This constructor permits an application to test if a scan filter contains another filter.
+ The contructed object from this method is considered a "scan" and another scan filter can be tested against it,
+ using "TestScan". Example: Crreate this from "+ d". You can test that "+" or "d" filters match this
+ (return true from TestScanAgainstFilter).
+
+
+ The scan filter.
+
+
+ The .
+
+
+
+
+ Test if activation is set for any reaction.
+
+
+ The activation type.
+
+
+ The .
+
+
+
+
+ Test scan against component or compound names.
+
+
+ The names.
+
+
+ True if the scan should be included
+
+
+
+
+ Test that this scan (event) passes the supplied scan filter.
+
+
+ The filter Helper.
+
+
+ The .
+
+
+
+
+ test a scan against a filter.
+
+
+ The filter helper.
+
+
+ true, if the scan passes the filter
+
+ Thrown on invalid filter rule
+
+
+
+
+ Test electron capture dissociation.
+
+
+ The filter.
+
+
+ The .
+
+
+
+
+ Test multi photon dissociation.
+
+
+ The filter.
+
+
+ The .
+
+
+
+
+ Test against compensation voltage.
+
+
+ The filter.
+
+
+ The .
+
+
+
+
+ Test against source fragmentation.
+
+
+ The filter.
+
+
+ The .
+
+
+
+
+ Test scan against meta filter.
+
+
+ The filter.
+
+
+ The .
+
+
+
+
+ Check the parent masses.
+
+
+ The filter.
+
+
+ The filter helper.
+
+
+ The .
+
+
+
+
+ Get the compensation voltage value.
+
+
+ The index.
+
+ The number of source fragmentation values,
+ (which are before CV values in the table)
+
+ The .
+
+
+
+
+ Test of the multiplex precursor conditions match.
+
+
+ The scan filter.
+
+
+ The filter helper.
+
+
+ True if matched
+
+
+
+
+ Get the number of compensation voltage values.
+
+
+ The .
+
+
+
+
+ Test if the precursor conditions match.
+
+
+ The scan filter.
+
+ The filter helper (optimized filter data)
+
+ The precursor mass.
+
+
+ The .
+
+
+
+
+ This class constructs a table of "segments and events".
+ Because this implements IScanEvents this class
+ can then be used to record the "method scan events" into a raw file.
+ The information can be organized as a set of segments,
+ with a set of events per segment.
+ The segments were designed to represent "time slices of a chromatogram"
+ though no time bounds are required by this object.
+ Many instruments just create a flat table (1 segment with all the events).
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+ Copy from another sets of events
+
+
+ The other events (to copy).
+
+
+
+
+ Add a segment.
+
+
+ The events for this segment.
+
+
+
+
+ Gets the number segments.
+
+
+
+
+ Gets the number of events in a specific segment (0 based)
+
+ The segment number
+ The number of events in this segment
+
+
+
+ Get an event, indexed by the segment and event numbers (zero based).
+
+
+ The segment.
+
+
+ The event number.
+
+
+ The event.
+
+
+
+
+ Get an event, using indexed event number (zero based).
+ This gets events from all segments in order,
+ use "ScanEvents" to get the total count of events.
+
+
+ The event Number.
+
+
+ The event.
+
+
+
+
+ Gets the total number of scan events, in all segments
+
+
+
+
+ The scan filter helper.
+ Analyses a filter to save time on filter to scan comparisons.
+ This is done by making a list of rules to apply.
+ Uses properties, which can be inlined for high performance.
+ Does not implement any interfaces, to avoid slowdown of virtual calls.
+ (properties may be use billions of times for filter against scan comparisons).
+ Used for high performance (parallel) chromatogram generation.
+
+
+
+
+ The no meta filter.
+
+
+
+
+ The instrument mass resolution (used in determining if mass ranges match up or not)
+
+
+
+
+ Gets the filter.
+
+
+
+
+ Gets the rules, which have been found in the supplied filter.
+ For example, a filter text of "ms !d" includes 2 rules
+ 1: The MS order must be one.
+ 2: The scan must not be dependent
+
+
+
+
+ Gets the MS order.
+
+
+
+
+ Gets a value indicating whether "multiplex" is in the "On" state
+
+
+
+
+ Gets a value indicating whether the MS order is any value other than "MS".
+
+
+
+
+ Gets the mass resolution.
+
+
+
+
+ Gets the multi activation corrected mass count.
+
+
+
+
+ Gets a value indicating whether the filter has multiple reactions.
+
+
+
+
+ Gets a value indicating whether the filter's "dependent" flag is in the "on" tristate.
+
+
+
+
+ Gets a value indicating whether the filter has any masses.
+
+
+
+
+ Gets a value indicating whether this object can keep
+ track of "already tested" scan events.
+ To enable it: Call InitializeAvailableEvents,
+ with the result of "IRawDataPlus.ScanEvents"
+
+
+
+
+ Determines if an event was tested, and the test results.
+
+
+
+
+ This has never been tested
+
+
+
+
+ This event has been tested, but failed
+
+
+
+
+ Event tested, and passed the filter
+
+
+
+
+ Sets the table of "known scan events"
+ This can be used to optimize filtering
+
+ Planned scan events. This interface may be obtained from IRawDataPlus (ScanEvents property)
+
+
+
+ Initializes a new instance of the class.
+
+
+ The filter.
+
+ In this mode a tolerance matching for precursors is "accurate" (based on the precision value),
+ except for data dependent scans.
+ For all "non accurate" precursor selections, and for all data dependent scans a default (wide) tolerance is used.
+ number of decimal places for masses in filter
+
+
+
+ Gets a value indicating whether the filter resolution was set to "Accurate precursor value".
+ Else it will be "DefaultFilterMassResolution"
+
+
+
+
+ Gets the precursor tolerance (half of MassResolution)
+
+
+
+
+ Record the match result for a scan type segment/event)
+
+
+ Result for this segment and event number
+
+
+ Segment number for this scan event
+
+
+ Event number for this scan event
+
+
+
+
+ Determine if this scan type has already been tested, and find the result
+
+ Segment number for this scan event
+ Event number for this scan event
+ state of the scan type test
+
+
+
+ This class holds information needed to select a scan, using either a filer or a compound name.
+ Static methods are available to construct common versions.
+
+
+
+
+ Gets or sets a value indicating whether the "scan filter" will be used as a selection mechanism.
+ ScanFilter must never be null when this returns true.
+
+
+
+
+ Gets or sets the scan filter.
+ If UseFilter is false, or this is null, it is not used as a selection mechanism.
+
+
+
+
+ Gets or sets the name.
+ This is the component or compound name list to filter against.
+ If this is null or empty, it is not used as a selection mechanism.
+
+
+
+
+ Create a selector which selects by filter string, based on a specific data source
+
+
+ The filter.
+
+
+ The .
+
+
+
+
+ Create a selector which selects by filter string, based on a specific compound name
+
+
+ The compound name.
+
+
+ The .
+
+
+
+
+ Create a selector which selects all scans (no filtering)
+
+
+ The .
+
+
+
+
+ Summary information about a scan.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The source to copy the values from.
+
+ If set, make a "deep copy" which will evaluate any lazy items and ensure no internal source references
+
+ source is null.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the indication of data format used by this scan.
+ See also SpectrumPacketType for decoding to an enum.
+
+
+
+
+ Gets the packet format used in this scan. (read only).
+ Value can be set using the "PacketType" property.
+
+
+
+
+ Gets or sets the highest mass in scan
+
+
+
+
+ Gets or sets the lowest mass in scan
+
+
+
+
+ Gets or sets the longest wavelength in PDA scan
+
+
+
+
+ Gets or sets the shortest wavelength in PDA scan
+
+
+
+
+ Gets or sets the intensity of highest peak in scan
+
+
+
+
+ Gets or sets the mass of largest peak in scan
+
+
+
+
+ Gets or sets the total Ion Current for scan
+
+
+
+
+ Gets or sets the time at start of scan (minutes)
+
+
+
+
+ Gets or sets the Number of point in scan
+
+
+
+
+ Gets or sets the number of
+ channels acquired in this scan, if this is UV or analog data,
+
+
+
+
+ Gets or sets the number of the scan
+
+
+
+
+ Gets or sets the event (scan type) number within segment
+
+
+
+
+ Gets or sets the time segment number for this event
+
+
+
+
+ Gets or sets a value indicating whether this scan contains centroid data (else profile)
+
+
+
+
+ Gets or sets the frequency.
+
+
+
+
+ Gets or sets a value indicating whether is uniform time.
+
+
+
+
+ Gets or sets the absorbance unit scale.
+
+
+
+
+ Gets or sets the wave length step.
+
+
+
+
+ Gets or sets a lazy mechanism returning a string defining the scan type.
+
+
+
+
+ Gets or sets a String defining the scan type, for filtering
+
+
+
+
+ Gets or sets the cycle number.
+
+ Cycle number used to associate events within a scan event cycle.
+ For example, on the first cycle of scan events, all the events
+ would set this to '1'. On the second cycle, all the events would
+ set this to '2'. This field must be set by devices if supporting
+ compound names for filtering. However, it may be set in all
+ acquisitions to help processing algorithms.
+
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Copy all fields
+
+
+ Copy into this object
+
+ If set, make a "deep copy" which will evaluate any lazy items and ensure no internal source references
+
+
+
+ Produce a deep copy of an object.
+ Must not contain any references into the original.
+
+
+ A deep clone of all objects in this
+
+
+
+
+ Defines a scan with mass range segments.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor; sets the size of data arrays to 0.
+
+
+
+
+ Create a scan from simple X,Y data. This method creates a scan with one segment.
+ For efficiency, the references to the mass and intensity data are maintained within the
+ constructed object. If this is not desired, clone the mass and intensity
+ arrays on calling this constructor.
+ Masses are assumed to be in ascending order.
+
+ Mass data for the scan
+ Intensity data for the scan
+ A scan with one segment
+ masses is null.
+ intensities is null.
+ Intensities must have same length as masses
+
+
+
+ Sum all masses within the ranges
+
+ List of ranges to sum
+ If the ranges have equal mass values,
+ then tolerance is subtracted from low and added to high to search for matching masses
+ Sum of intensities in all ranges
+
+
+
+ Sum all masses within the ranges
+
+ List of ranges to sum
+ If the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses
+ Sum of intensities in all ranges
+
+
+
+ Return the largest intensity (base value) in the ranges supplies
+
+ Ranges of positions
+ The largest intensity in all ranges
+ If the ranges have equal mass values,
+ then tolerance is subtracted from low and added to high to search for matching masses
+ Sum of intensities in all ranges
+
+
+
+ Return the largest intensity (base value) in the ranges supplied
+
+ Ranges of positions (masses, wavelengths)
+ If the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses
+ Largest intensity in all ranges
+
+
+
+ Get the largest value in a range
+
+
+ The fixed range.
+
+
+ The base value so far.
+
+
+ The largest of, the passed in base value and the base value in the range.
+
+
+
+
+ Test if this is a valid object (all streams are not null. All data has same length)
+
+
+ True if valid.
+
+
+
+
+ Test if this is a valid object (all streams are not null. All data has same length)
+
+ is thrown if this instance does not contain valid data.
+
+
+
+ Gets the Mass ranges for each scan segment
+
+
+
+
+ Gets or sets the Mass ranges for each scan segment
+
+
+
+
+ Gets or sets The number of segments
+
+
+
+
+ Gets or sets the number of data points in each segment
+
+
+
+
+ Gets SegmentLengths.
+
+
+
+
+ Gets or sets the positions (mass or wavelength) for each point in the scan
+
+
+
+
+ Gets or sets the Intensity (or absorbance) values for each point in the scan
+
+
+
+
+ Gets or sets flags, such as "saturated" for each peak.
+
+
+
+
+ Gets or sets the The size of the position and intensity arrays.
+ The number of peaks in the scan (total for all segments)
+
+
+
+
+ Gets or sets the he number of this scan.
+
+
+
+
+ Sum all intensities of peaks within the ranges
+
+
+ The sum so far.
+
+
+ The fixed Range.
+
+
+ Sum of intensities in all ranges
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Make a deep clone of this object.
+
+ An object containing all data in this, and no shared references
+
+
+
+ Find the index of the first packet in a segment
+
+ segment number (starting from 0)
+ the index of the first packet in a segment
+
+
+
+ Change the defined length of the scan (for internal use only)
+
+ new scan size
+
+
+
+ Convert to simple scan.
+ This permits calling code to free up references to unused parts of the scan data.
+
+
+ The .
+
+
+
+
+ Return only data within the supplied ranges.
+ This internal method can assume that the ranges are in mass order, and do not overlap.
+
+ ranges of data to include
+ if set, then this scan is profile data.
+ Zeros are added to terminate sliced profiles
+ If this is set:
+ There must be a valid centroid stream.
+ Profile points near a centroid must be included, even if outside of the range.
+
+ Centroid data, which may be used to extend profiles so that
+ points which contribute to the centroid are shown
+ A new scan, with data in the desired ranges only
+
+
+
+ Sequence File Writer Extension Methods
+
+
+
+
+ Retrieves the user label at given 0-based label index.
+
+ The sequence file access interface object.
+ Index of user label to be retrieved
+ String containing the user label at given index
+
+
+
+ Provides a means of opening sequences.
+
+
+
+
+ Creates the sequence file reader.
+
+ Sequence file reader factory object
+
+
+
+ Read a sequence.
+ The file contents are returned. The file is not kept open.
+
+ Name of file to read
+ Access to the contents of the file.
+
+
+
+ This static factory class provides methods to create and open existing sequence file.
+
+
+
+
+ Creates the sequence file writer.
+
+ Name of the file.
+ True open an existing sequence file with read/write privilege; false to create a new unique sequence file
+ Sequence file writer object
+
+
+
+ Creates the UV type of device factory.
+
+ UV type of device factory object
+
+
+
+ Checks the file exists.
+
+ Name of the in-acquisition raw file.
+ Device writer can't attach the raw file that doesn't exist.
+
+
+
+ A simple mass and intensity scan.
+ Represents a scan as two simple array objects
+ This format only creates two objects,
+ and uses much less memory that "array of class with mass and intensity".
+
+
+
+
+ Gets or sets the masses.
+
+
+
+
+ Gets or sets the intensities.
+
+
+
+
+ Basic implementation of a simple scan header, with scan number and time.
+
+
+
+
+ Gets or sets the retention time.
+
+
+
+
+ Gets or sets the scan number.
+
+
+
+
+ A collection of scans, designed to slide forwards through a raw file.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The spectrum reader.
+
+ Optional: Reader for batch of scans.
+ If not supplied, spectrumReader is used.
+ Table of scan number and RT of scans in raw file
+
+
+
+ return data within scan range.
+
+
+ The start scan.
+
+
+ The end scan.
+
+
+ A ref copy of the scans in range.
+
+
+
+
+ Load all the scans in a range.
+
+
+ The start scan index.
+
+
+ The end scan index.
+
+
+
+
+ A simple scan with header.
+
+
+
+
+ Gets or sets the scan.
+
+
+
+
+ Gets or sets the header.
+
+
+
+
+ Settings for smoothing algorithm, useful for chromatograms etc.
+
+
+
+
+ Initializes a new instance of the class.
+ default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ Gets or sets the number of points for smoothing the chromatogram
+
+
+
+
+ Gets or sets the number of times to repeat smoothing
+
+
+
+
+ Gets or sets the envelope shape used by smoothing algorithm
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ class to represent spectrum data
+
+
+
+
+ Gets or sets Intensity of spectral peak
+
+
+
+
+ Gets or sets Mass of spectral peak
+
+
+
+
+ Test that two spec points are equal
+
+ first point to compare
+ second point to compare
+ true if they have the same contents
+
+
+
+ Test that two spec points are not equal
+
+ first point to compare
+ second point to compare
+ true if they do not have the same contents
+
+
+
+ Test two points for equality
+
+
+ point to compare
+
+
+ true if they are equal
+
+
+
+
+ Object.GetHashCode
+
+ Object.GetHashCode
+
+
+
+ Stores the Status log for an instrument
+
+
+
+
+ Gets or sets the header information for the status log
+
+
+
+
+ Gets or sets the array of values for the status logs for the current instrument
+
+
+
+
+ Stores one record of status log values
+
+
+
+
+ Gets or sets the RetentionTime for this log entry
+
+
+
+
+ Gets or sets the array of status log values
+
+
+
+
+ Results of running system suitability tests
+
+
+
+
+ Gets or sets the resolution of the peak (from other peaks)
+
+
+
+
+ Gets or sets a value indicating whether the resolution test passed
+
+
+
+
+ Gets or sets a value indicating whether the symmetry test passed
+
+
+
+
+ Gets or sets a value indicating whether the peak width test passed
+
+
+
+
+ Gets or sets a value indicating whether the peak tailing test passed
+
+
+
+
+ Gets or sets a value indicating whether the column overload test passed
+
+
+
+
+ Gets or sets a value indicating whether the signal to noise test passed
+
+
+
+
+ Gets or sets a value indicating whether the saturation test passed
+
+
+
+
+ Gets or sets a value indicating whether the concave peak test passed
+
+
+
+
+ Gets or sets a value indicating whether the baseline clipping test passed
+
+
+
+
+ Gets or sets a value indicating whether the following values have been calculated:
+ PassedResolutionChecks, MeasuredResolution
+
+
+
+
+ Gets or sets a value indicating whether the following values have been calculated:
+ PassedSymmetryChecks
+
+
+
+
+ Gets or sets a value indicating whether the following values have been calculated:
+ PassedPeakWidth, PassedTailing, PassedColumnOverload, PassedNoise, PassedSaturated,
+ PassedConcave, PassedBaselineClipped
+
+
+
+
+ Gets a value which determines if the ResolutionCheck was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value which determines if the SymmetryCheck was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value which determines if the PeakWidth test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value which determines if the Tailing test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value which determines if the ColumnOverload test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value which determines if the Noise test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value which determines if the Saturated test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value which determines if the Concave test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value which determines if the BaselineClipped test was performed, and the results of the test, when run.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Copy constructor
+
+
+ The access.
+
+
+
+
+ Return tri-state test status, based on if a test has been run, and the test results
+
+
+ true if a test has been run
+
+
+ The results of the test (if run) ignored otherwise
+
+
+ A status of not tested, when the test is not run, or the pass/fail result when the test has been run
+
+
+
+
+ Make a copy of the system suitability results
+
+
+ The .
+
+
+
+
+ Parameters for the system suitability algorithm
+
+
+
+
+ Gets or sets a value indicating whether resolution checks will be performed
+
+
+
+
+ Gets or sets a threshold value which determines if a peak's resolution or ok or not.
+ The default value is 90%.
+ Resolution is defined as the ratio:
+ 100 × V/P
+ where:
+ V = depth of the Valley: the difference in intensity from the chromatogram at the apex of the target peak
+ to the lowest point in the valley between the target peak and a neighboring peak
+ P = Peak height: the height of the target peak, above the peak's baseline
+
+
+
+
+ Gets or sets a value indicating whether peak symmetry checks are to be performed.
+ Symmetry is determined at a specified peak height
+ and is a measure of how even-sided a peak is
+ about a perpendicular dropped from its apex.
+
+
+
+
+ Gets or sets the Peak Height at which symmetry is measured.
+ The default value is 50%. You can enter any value within the range 0% to 100%.
+
+
+
+
+ Gets or sets the Symmetry Threshold
+ The SOP defined Symmetry Threshold is > 70% at 50% peak height.
+ This represents a realistic practical tolerance for capillary GC data.
+ You can enter any value within the range 0% to 100%.
+ The default value is 80% at 50% peak height.
+ The algorithm determines symmetry at the SymmetryPeakHeight
+ For the purposes of the test, a peak is considered symmetrical if:
+ (Lesser of L and R) × 100 / (Greater of L and R) > Symmetry Threshold %
+ where:
+ L = the distance from the left side of the peak to
+ the perpendicular dropped from the peak apex
+ R = the distance from the right side of the peak to
+ the perpendicular dropped from the peak apex
+ Measurements of L and R are taken from the raw file without smoothing.
+
+
+
+
+ Gets or sets a value indicating whether peak classification checks are to be run
+
+
+
+
+ Gets or sets the Peak Height at which suitability tests the width of target peaks.
+ You can enter any value within the range 0% to 100%. The default value is 50%.
+
+
+
+
+ Gets or sets the minimum peak width, at the specified peak height, for the peak width suitability test.
+ The default value is 1.8. You can set any value in the range 0 to 30 seconds.
+
+
+
+
+ Gets or sets the maximum peak width, at the specified peak height, for the peak width suitability test.
+ The default value is 3.6. You can set any value in the range 0 to 30 seconds.
+
+
+
+
+ Gets or sets the Peak Height at which the algorithm measures the tailing of target peaks.
+ The default SOP value is 10%. You can enter any value within the range 0% to 100%.
+
+
+
+
+ Gets or sets the failure threshold for the tailing suitability test.
+ The default SOP defined failure threshold is %lt 2 at 10% peak height. The valid range is 1 to 50.
+ Tailing is calculated at the value defined in .
+ For the purposes of the test, a peak is considered to be excessively tailed if:
+
+ R / L > Failure Threshold %
+ where:
+ L = the distance from the left side of the peak to the perpendicular dropped from the peak apex
+ R = the distance from the right side of the peak to the perpendicular dropped from the peak apex
+ Measurements of L and R are taken from the raw file without smoothing.
+
+
+
+
+ Gets or sets the Peak Height at which the algorithm measures column overloading.
+ The default SOP value is 50%. You can enter any value within the range 0% to 100%.
+
+
+
+
+ Gets or sets the failure threshold value for the column overload suitability test.
+ The default SOP defined threshold is 1.5 at 50% peak height. The valid range is 1 to 20.
+ A peak is considered to be overloaded if:
+
+ L / R > Failure Threshold %
+ where:
+ L = the distance from the left side of the peak to the perpendicular dropped from the peak apex
+ R = the distance from the right side of the peak to the perpendicular dropped from the peak apex
+ Measurements of L and R are taken from the raw file without smoothing.
+
+
+
+
+ Gets or sets the Number of Peak Widths for Noise Detection testing parameter for
+ the baseline clipping system suitability test.
+ The default value is 1.0 and the permitted range is 0.1 to 10.
+ A peak is considered to be baseline clipped if there is no signal
+ (zero intensity) on either side of the peak within the specified
+ number of peak widths. The range is truncated to the quantitation window
+ if the specified number of peak widths extends beyond the window’s edge.
+
+
+
+
+ Gets or sets the threshold for system suitability testing
+ of the signal-to-noise ratio. The default value is 20 and the
+ permitted range is 1 to 500. The algorithm calculates the signal-to-noise ratio
+ within the quantitation window using only baseline signal.
+ Any extraneous, minor, detected peaks are excluded from the calculation.
+
+
+
+
+ Initializes a new instance of the class.
+ default constructor
+
+
+
+
+ Initializes a new instance of the class.
+ Construct instance from interface, by cloning all settings
+
+
+ Interface to clone
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+ 2
+
+
+
+ Class to create accessors for raw a raw file, for multiple threads.
+
+
+
+
+ Initializes a new instance of the class.
+ To use this: Construct an interface "IRawDataPlus".
+ Construct this object from the IRawDataPlus.
+ Call to make a separate object for each thread to use.
+ After all threads are completed,
+ and the raw file is no longer needed, dispose of the original IRawDataPlus.
+
+
+ The file.
+
+
+
+
+ Initializes a new instance of the class.
+ To use this: Construct an interface "IRawDataPlus".
+ Construct this object from the IRawDataPlus.
+ Call to make a separate object for each thread to use.
+ After all threads are completed,
+ and the raw file is no longer needed, dispose of the original IRawDataPlus.
+
+
+ The file.
+
+
+
+
+ Create an accessor for one thread to use. Call this method once for each thread you plan to create.
+
+
+ An interface to read data, which should be used by a single thread.
+
+
+
+
+ Select instrument.
+ This private method keeps track of the selected instrument within the raw data.
+ When a thread is using a different instrument than the last thread's call,
+ then the IO library selected instrument is changed.
+ If all threads use one instrument (such as MS), then this will
+ not result in multiple calls to the IO library.
+
+
+ The instrument type.
+
+
+ The instrument index.
+
+
+
+
+ Include reference and exception data.
+ Remembers the state of this from previous calls, and
+ only sets this to the IO library when changed from the last call.
+
+
+ The include reference and exception data.
+
+
+
+
+ Request the object to keep a cache of the listed item.
+ Setting the caching to "zero" disables further caching.
+
+
+ Item to cache
+
+
+ Limit of number of items to cache
+
+
+ (optional, default false) if set True, all values returned from the cache are unique (cloned) references.
+ By default, the cache just keeps references to the objects
+
+
+
+
+ Clear items in the cache
+
+
+ item type to clear
+
+
+
+
+ Count the number currently in the cache
+
+
+ Item type to count
+
+
+ The number of items in this cache
+
+
+
+
+ The raw file thread accessor.
+ This class is a private thread safe wrapper.
+ It works by using the "parent" object as a lock object for all threads.
+ In addition, the parent manages all state of the underlying wrapped interface.
+ This object also wraps enumerators and iterators fully, to protect against detector changes
+ from other threads.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The thread safe raw file access.
+
+
+
+
+ Capture that the parent object's selected device
+
+
+
+
+ Ensure that the parent object has the expected device selected
+
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+ 2
+
+
+
+ Get a scan number from a retention time
+
+
+ Retention time (minutes)
+
+
+ Scan number in the data stream for this time
+
+
+
+
+ Gets the current instrument's run header
+
+
+
+
+ Gets the number of instrument methods in this file.
+
+
+
+
+ Gets the name of the computer, used to create this file.
+
+
+
+
+ Gets additional (binary) data from a scan.
+ The format of this data is custom (per instrument) and can be decoded into
+ objects by a specific decoder for the detector type.
+
+ Scan whose data is needed
+
+
+
+
+
+
+ Get the scan statistics for a scan.
+
+
+ scan number
+
+
+ Statistics for scan
+
+
+
+
+ Gets the segmented scan from scan number. It will also fill object, if any supplied.
+
+
+ The scan number.
+
+
+ statistics for the scan
+
+
+ The segmented scan
+
+
+
+
+ Test if a scan is centroid format
+
+
+ Number of the scan
+
+
+ True if the scan is centroid format
+
+
+
+
+ Gets the filter strings for this file.
+
+ A string for each auto filter from the raw file
+
+
+
+ Gets an instrument method.
+
+
+ The index.
+
+
+ A text version of the method
+
+
+
+
+ Gets the definition of the selected instrument.
+
+ data about the selected instrument, for example the instrument name
+
+
+
+ Get a string representing the scan type (for filtering).
+ For more complete tests on filters, the returned string
+ can be converted to a ScanDefinition,
+ by using the static constructor ScanDefinition.FromString(string scanType).
+ If the RT is known, and not the scan number, use ScanNumberFromRetentionTime
+ to convert the time to a scan number.
+ Example:
+ ScanDefinition definition=ScanDefinition.FromString(GetScanType(ScanNumberFromRetentionTime(time));
+
+
+ Scan number whose type is needed
+
+
+ Type of scan, in string format.
+ To compare individual filter fields, the ScanDefinition class can be used.
+
+ ScanDefinition
+
+
+
+ Get the retention time (minutes) from a scan number
+
+
+ Scan number
+
+
+ Retention time (start time) of scan
+
+
+
+
+ Get the centroids saved with a profile scan
+
+
+ Scan number
+
+
+ determines if peaks flagged as ref should be returned
+
+
+ centroid stream for specified .
+
+
+
+
+ Gets the status log for retention time.
+
+
+ The retention time.
+
+
+ object containing status log information.
+
+
+
+
+ returns the number of entries n the current instrument's status log
+
+
+ The .
+
+
+
+
+ Returns the header information for the current instrument's status log
+
+
+ The headers (list of prefixes for the strings).
+
+
+
+
+ Returns the Status log values for the current instrument
+
+
+ Index into table of status logs
+
+
+ true if they should be formatted (recommended)
+
+
+ The status log values.
+
+
+
+
+ Gets the tune data.
+
+
+ tune data index
+
+
+ object containing tune data for specified .
+
+
+
+
+ return the number of tune data entries
+
+
+ The .
+
+
+
+
+ Return the header information for the current instrument's tune data
+
+
+ The headers/>.
+
+
+
+
+ return tune data values for the specified index
+
+
+ index into tune tables
+
+
+ true if formatting should be done
+
+
+ The tune data>.
+
+
+
+
+ Gets the path to original data.
+
+
+
+
+ Gets the name of acquired file (excluding path).
+
+
+
+
+ Choose the data stream from the data source.
+
+
+ Type of instrument
+
+
+ Stream number
+
+
+
+
+ Gets the instrument as last set by a call to .
+ If this has never been set, returns null.
+
+
+
+
+ Gets the date when this data was created.
+
+
+
+
+ Gets the name of person creating data.
+
+
+
+
+ Gets various details about the sample (such as comments).
+
+
+
+
+ Gets the number of instruments (data streams) in this file.
+
+
+
+
+ Gets a value indicating whether the last file operation caused an error.
+
+
+
+
+ Gets a value indicating whether the file is being acquired (not complete).
+
+
+
+
+ get the number of instruments (data streams) of a certain classification.
+ For example: the number of UV devices which logged data into this file.
+
+
+ The device type to count
+
+
+ The number of devices of this type
+
+
+
+
+ Create a chromatogram from the data stream
+
+
+ Definition of how the chromatogram is read
+
+
+ First scan to read from. -1 for "all data"
+
+
+ Last scan to read from. -1 for "all data"
+
+
+ Chromatogram points
+
+
+
+
+ Create a chromatogram from the data stream
+
+
+ Definition of how the chromatogram is read
+
+
+ First scan to read from. -1 for "all data"
+
+
+ Last scan to read from. -1 for "all data"
+
+
+ For mass range or base peak chromatograms,
+ if the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses
+
+
+ Chromatogram points
+
+
+
+
+ The the device type for an instrument data stream
+
+
+ The data stream
+
+
+ The device at type the index
+
+
+
+
+ Gets names of all instruments stored in the raw file's copy of the instrument method file.
+
+
+ The instrument names.
+
+
+
+
+ Gets a value indicating whether the data file was successfully opened
+
+
+
+
+ Gets or sets a value indicating whether reference and exception peaks should be returned (by default they are not)
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+
+ The .
+
+
+
+
+ Gets the trailer extra header information. This is common across all scan numbers
+
+
+ The headers.
+
+
+
+
+ Gets the Trailer Extra values for the specified scan number.
+ If = true, then the values will be formatted as per the header settings
+
+
+ scan whose trailer data is needed
+
+
+ true if the data should be formatted
+
+
+ The strings representing trailer data>.
+
+
+
+
+ returns the (unformatted) Trailer Extra value for a specific field in the specified scan number.
+ The object type depends on the field type, as returned by
+
+ Numeric values (where the header for this filed returns "True" for IsNumeric
+ can always be cast up to double.
+ The integer numeric types SHORT and USHORT are returned as short and ushort.
+ The integer numeric types LONG and ULONG are returned as int and uint.
+ All logical values (Yes/No, True/false, On/Off) are returned as "bool",
+ where "true" implies "yes", "true" or "on".
+ CHAR and UCHAR types are returned as "byte".
+ String types WCHAR_STRING and CHAR_STRING types are returned as "string".
+
+ scan who's data is needed
+ zero based filed number in the record, as per header
+ Value of requested field
+
+
+
+ Returns the (unformatted) Trailer Extra values for all field in the specified scan number.
+ The object types depend on the field types, as returned by
+ GetTrailerExtraHeaderInformation.
+ This offers higher performance, where numeric values are needed,
+ as it avoids translation to and from strings.
+ It is also designed for efficient copy of data from one file to another.
+
+ Numeric values (where the header for this field returns "True" for IsNumeric)
+ can always be cast up to double.
+ The integer numeric types SHORT and USHORT are returned as short and ushort.
+ The integer numeric types LONG and ULONG are returned as int and uint.
+ All logical values (Yes/No, True/false, On/Off) are returned as "bool",
+ where "true" implies "yes", "true" or "on".
+ Char type is returned as "sbyte".
+ Uchar type is returned as "byte".
+ String types WCHAR_STRING and CHAR_STRING types are returned as "string".
+
+
+ scan who's data is needed
+ Values of all fields
+ Thrown if the selected device is not of type MS
+
+
+
+ Returns the (unformatted) Tune Data values for all fields in the specified record number.
+ The object types depend on the field types, as returned by
+ GetTuneDataHeaderInformation.
+ This is designed for efficient copy of data from one file to another.
+
+ Numeric values (where the header for this field returns "True" for IsNumeric)
+ can always be cast up to double.
+ The integer numeric types SHORT and USHORT are returned as short and ushort.
+ The integer numeric types LONG and ULONG are returned as int and uint.
+ All logical values (Yes/No, True/false, On/Off) are returned as "bool",
+ where "true" implies "yes", "true" or "on".
+ Char type is returned as "sbyte".
+ Uchar type is returned as "byte".
+ String types WCHAR_STRING and CHAR_STRING types are returned as "string".
+
+
+ zero bases index into tune records who's data is needed
+ Values of all fields
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the (raw) status log data at a given index in the log.
+ Deigned for efficiency, this method does not convert logs to display string format.
+
+ Index (from 0 to "GetStatusLogEntriesCount() -1")
+ Log data at the given index
+
+
+
+ Gets the (raw) status log data at a given retention time in the log.
+ Designed for efficiency, this method does not convert logs to display string format.
+
+ Retention time/
+ Log data at the given time
+
+
+
+ Get the advanced LT/FT formats data, such as the noise data, baseline data and frequencies
+
+ The scan number.
+
+ Returns an IAdvancedPacketData object which contains noise data, baseline data and frequencies for specified .
+ It might return empty arrays for scans which do not have these data.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the array of headers and values for this scan number. The values are formatted as per the header settings.
+
+
+ The scan for which this information is needed
+
+
+ Extra information about the scan
+
+
+
+
+ Gets the segment event table for the current instrument
+
+ A two dimensional array of events. The first index is segment index (segment number-1).
+ The second is event index (event number -1) within the segment.
+
+
+
+ Request the object to keep a cache of the listed item.
+ Setting the caching to "zero" disables further caching.
+
+
+ Item to cache
+
+
+ Limit of number of items to cache
+
+
+ (optional, default false) if set True, all values returned from the cache are unique (cloned) references.
+ By default, the cache just keeps references to the objects
+
+
+
+
+ Clear items in the cache
+
+
+ item type to clear
+
+
+
+
+ Count the number currently in the cache
+
+
+ Item type to count
+
+
+ The number of items in this cache
+
+
+
+
+ Gets the raw file header.
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets extended the run header details.
+
+
+
+
+ Gets the auto sampler information.
+
+
+
+
+ Calculate the filters for this raw file, and return as an array
+
+ Auto generated list of unique filters
+
+
+
+ Calculate the filters for this raw file within the range of scans supplied, and return as an array.
+
+ First scan to analyze
+ Last scan to analyze
+
+ Auto generated list of unique filters
+
+
+
+
+ Get the filter for a scan number.
+
+
+ The scan number.
+
+
+ The .
+
+
+
+
+ Get a filter interface from a string.
+
+
+ The filter string.
+
+
+ An interface representing the filter fields, converted from the supplied string.
+
+
+
+
+ Get a filter interface from a scan event interface.
+ Permits filtering to be done based on programmed events, such as
+ an item from the "ScanEvents" table,
+ or from constructed data using .
+ This method initializes the filter based on the current raw file
+ (for example: mass precision)
+
+
+ The event data.
+
+
+ An interface representing the filter fields, converted from the supplied event.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Get a filter interface from a string, with a given mass precisions
+
+
+ The filter string.
+
+ Precisions of masses (number of decimal places)
+
+ An interface representing the filter fields, converted from the supplied string.
+
+
+
+
+ Obtain an interface to iterate over a scans which match a specified filter.
+ The iterator is initialized at "scan 0" such that "GetNext" will return the first matching scan in the file.
+ This is a low level version of
+
+ Filter, which all returned scans match.
+ This filter may be created from a string using
+ An iterator which can step back and forth over scans matching a given filter.
+
+
+
+ Get filtered scan enumerator.
+
+ The filter, which all enumerated scans match.
+ This filter may be created from a string using
+
+
+ An enumerator which can be used to "foreach" over all scans in a file, which match a given filter.
+ Note that each "step" through the enumerator will access further data from the file.
+ To get a complete list of matching scans in one call, the "ToArray" extension can be called,
+ but this will result in a delay as all scans in the file are analyzed to return this array.
+ For fine grained iterator control, including "back stepping" use
+
+
+
+
+ Get filtered scan enumerator.
+
+
+ The filter, which all enumerated scans match.
+ This filter may be created from a string using
+
+
+ The start Time.
+
+
+ The End Time.
+
+
+ An enumerator which can be used to "foreach" over all scans in a time range, which match a given filter.
+ Note that each "step" through the enumerator will access further data from the file.
+ To get a complete list of matching scans in one call, the "ToArray" extension can be called,
+ but this will result in a delay as all scans in the time range are analyzed to return this array.
+ For fine grained iterator control, including "back stepping" use
+
+
+
+
+ Gets a value indicating whether this file has an instrument method.
+
+
+
+
+ Export the instrument method to a file.
+
+
+ The method file path.
+
+
+ Force over write. If true, and file already exists, attempt to delete existing file first.
+ If false: UnauthorizedAccessException will occur if there is an existing read only file.
+
+ True if the file was saved. False, if no file was saved, for example,
+ because there is no instrument method saved in this raw file.
+
+
+
+
+ Gets a value indicating whether this file has MS data.
+
+
+
+
+ Gets the scan events.
+
+
+
+
+ Gets the set of user labels
+
+
+
+
+ Gets the scan event details for a scan
+
+
+ The scan number.
+
+
+ The interface, to get detailed information about a scan.
+
+
+
+
+ Gets the scan event as a string for a scam
+
+
+ The scan number.
+
+
+ The event as a string.
+
+
+
+
+ Gets an entry from the instrument error log.
+
+
+ Zero based index.
+ The number of records available is RunHeaderEx.ErrorLogCount
+ An interface to read a specific log entry
+
+
+
+ Gets the labels and index positions of the status log items which may be plotted.
+ That is, the numeric items.
+ Labels names are returned by "Key" and the index into the log is "Value".
+
+
+
+
+ Gets the status log data, from all log entries, based on a specific position in the log.
+ For example: "position" may be selected from one of the key value pairs returned from
+ in order to create a trend plot of a particular value.
+ The interface returned has an array of retention times and strings.
+ If the position was selected by using , then the strings may be converted "ToDouble" to get
+ the set of numeric values to plot.
+
+
+ The position within the list of available status log values.
+
+
+ An interface containing the times and logged values for the selected status log field.
+
+
+
+
+ Get all instrument friendly names from the instrument method.
+
+
+ The instrument friendly names"/>.
+
+
+
+
+ Get scan dependents.
+ Returns a list of scans, for which this scan was the parent.
+
+
+ The scan number.
+
+
+ The filter precision decimals.
+
+
+ Information about how data dependant scanning was performed.
+
+
+
+
+ Gets the unique compound names as arrays of strings.
+
+
+ The Compound Names.
+
+
+
+
+ Gets the unique compound names as arrays of strings by given filter.
+
+
+ The scan Filter.
+
+
+ The compound names"/>.
+
+
+
+
+ Get the scan filters which match a compound name.
+ When implemented against raw files, this may have a performance impact on applications.
+ For files which have a programmed event table, this will be fast,
+ as the information can be taken directly from the events.
+ If there is no event table, then event data is checked for every scan in the file (slower).
+
+
+ The compound name.
+
+
+ The array of matching scan filters (in string format).
+
+
+
+
+ Create a chromatogram from the data stream.
+ Extended version:
+ Parameters include option for component names.
+ Includes base peak data for each scan.
+
+
+ Definition of how the chromatogram is read
+
+
+ First scan to read from. -1 for "all data"
+
+
+ Last scan to read from. -1 for "all data"
+
+
+ For mass range or base peak chromatograms,
+ if the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses.
+ For example: with 5 ppm tolerance, the caller can pass a single mass value (same low and high) for each mass range,
+ and get chromatograms of those masses +/- 5 ppm.
+
+
+ Chromatogram points
+
+
+
+
+ Create a chromatogram from the data stream.
+ Extended version:
+ Parameters include option for component names.
+ Includes base peak data for each scan.
+
+
+ Definition of how the chromatogram is read
+
+
+ First scan to read from. -1 for "all data"
+
+
+ Last scan to read from. -1 for "all data"
+
+
+ Chromatogram points
+
+
+
+
+ Test if a scan passes a filter.
+ If all matching scans in a file are required, consider using or
+
+ the scan number
+ the filter to test
+ True if this scan passes the filter
+
+
+
+ The filtered scan iterator wrapper.
+ must wrap this, to set device correctly each call
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The raw file thread accessor.
+
+
+ The filter.
+
+
+
+
+ Gets the filter which was used to construct this
+
+
+
+
+ Gets the previous scan number, which matches the filter.
+ Returns 0 if there is no open file.
+
+
+
+
+ Gets the next scan number, which matches the filter.
+ Returns 0 if there is no open file.
+
+
+
+
+ Sets the iterator's position.
+ This scan number does not have to match the given filter.
+ This can be used to find next or previous matching scan, from a given scan.
+
+
+
+
+ Gets a value indicating whether there are possible previous scans before the current scan.
+ This does not guarantee that another matching scan exists. It simply tests that the current iterator position
+ is not the first scan in the file.
+
+
+
+
+ Gets a value indicating whether there are possible next scans after the current scan.
+ This does not guarantee that another matching scan exists. It simply tests that the current iterator position
+ is not the last scan in the file.
+
+
+
+
+ This method is similar to GetSegmentedScanFromScanNumber in the IRawData interface.
+ The method returns only the mass and intensity values from
+ the scan data for a scan.
+ Values for flags etc. are not returned, saving data space and improving efficiency.
+ This method never returns "reference and exception peak" data.
+ The method is designed for improved performance in custom XIC generators.
+
+ The scan whose mass intensity data are needed
+ Mass and intensity values from the scan.
+
+
+
+ This method is similar to GetCentroidStream in the IRawData interface.
+ The method returns only the mass and intensity values from
+ the "centroid stream" data for a scan. This is also known as "Label Stream"
+ Values for flags etc. are not returned, saving data space and improving efficiency.
+ This method never returns "reference and exception peak" data.
+ The method is designed for improved performance in custom XIC generators.
+
+ The scan who's mass intensity data are needed
+ Mass and intensity values from the scan "centroid data".
+
+
+
+ When deciding what data should be read from a scan, centroids or regular scan
+ (or if the data is needed at all)
+ scan event data is needed.
+ This method permits events to be read as a block for a range of scans,
+ which may reduce overheads involved in requesting one by one.
+ Potentially, in some data models, the same "event" may apply to several scans
+ so it is permissible for the same reference to appear multiple times.
+
+ The first scan whose event is needed
+ The last scan
+ An array of scan events
+
+
+
+
+
+
+
+
+
+ Gets the (raw) status log data at a given index in the sorted log.
+ The form of the log removes duplicate and out of order times
+ Designed for efficiency, this method does not convert logs to display string format.
+
+ Index (from 0 to "GetStatusLogEntriesCount() -1")
+ Log data at the given index
+
+
+
+ Data structure used internally by scan definition
+
+
+
+
+ Gets or sets the token.
+
+
+
+
+ Gets or sets the token class.
+
+
+
+
+ Compares the current token with another token
+
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings:
+
+
+ Value
+ Meaning
+
+ -
+ Less than zero
+ This object is less than the parameter.
+
+ -
+ Zero
+ This object is equal to .
+
+ -
+ Greater than zero
+ This object is greater than .
+
+
+
+
+ An object to compare with this object.
+
+ TokenClass is out of range.
+
+
+
+ The compare generic.
+
+
+ The other.
+
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings:
+
+
+ Value
+ Meaning
+
+ -
+ -1
+ This object is less than the parameter.
+
+ -
+ Zero
+ This object is equal to .
+
+ -
+ 1
+ This object is greater than .
+
+
+
+
+
+
+
+ Stores the trailer extra values for a scan within an instrument
+
+
+
+
+ Gets or sets the scan Number
+
+
+
+
+ Gets or sets the array of trailer extra values for a scan within an instrument
+
+
+
+
+ Stores the header and tune data record values for an instrument
+
+
+
+
+ Gets or sets the array of headers for Tune data
+
+
+
+
+ Gets or sets the tune data values for an instrument
+
+
+
+
+ Stores one set of tune data values for an instrument
+
+
+
+
+ Gets or sets the index number of the tune record
+
+
+
+
+ Gets or sets the array of tune data values for an instrument
+
+
+
+
+ Encapsulates information about UVInstrument.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Defines the UV instrument data header for UV type devices
+
+
+
+
+ Gets or sets the frequency.
+ The Frequency will be ignored by Analog devices
+
+
+
+
+ Gets or sets a value indicating whether is uniform time.
+ If the Uniform flag is TRUE (time is uniform by frequency ) then there is NO time value. ex. "intensity, time"
+ The IsUniformTime will be ignored by Analog devices
+
+
+
+
+ Gets or sets the number of channels.
+
+
+
+
+ Gets or sets the start time.
+
+
+
+
+ Gets or sets the tic.
+
+
+
+
+ Copies the specified source.
+ Copy all the non static fields of the current object to the new object.
+ Since all the fields are value type, a bit-by-bit copy of the field is performed.
+
+ Create a copy of the same object type
+
+
+
+ The ScanWithSimpleData interface.
+ Defines very basic MS data and intensity, plus the event for the scan.
+
+
+
+
+ Gets the scan event.
+
+
+
+
+ Gets the data.
+
+
+
+
+ ICommonCoreDataObject is an interface that for CommonCoreData objects. It allows for clearing the dirty flags during a save operation.
+ For example, before saving your data object that implements CommonCoreDataObject, cast it to a ICommonCoreDataObject and set
+ IsDirty to false. All data objects that implement the abstract class CommonCoreDataObject implement the ICommonCoreDataObject interface as well.
+
+
+
+
+ Provides a custom deep equality operation when checking for equality.
+
+ The value to compare.
+ True if objects are equal
+
+
+
+ Performs the default settings for the data object. This can be overridden in each data object that implements the interface to perform
+ initialization settings.
+
+
+
+
+ CommonCoreData object is an abstract class. It includes a deep equals feature/>
+
+
+
+
+ Serves as a hash function for a particular type.
+
+
+ A hash code for the current .
+
+
+
+
+ Compares this object with another.
+ Traverse the set of member variables to compare against the object that was passed in.
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ true if the specified is equal to the current ; otherwise, false.
+
+ The parameter is null.
+
+
+
+ Provides a custom deep equality operation when checking for equality.
+
+ The value to compare.
+ True if the items are equal, false if they are not.
+
+
+
+ Compares this object with another.
+ Traverse the set of member variables to compare against the object that was passed in.
+
+ object to compare with
+ if true, compare sub-objects
+ true if equal
+
+
+
+ Performs the default settings for the data object. This can overridden in each data object that implements the interface to perform
+ initialization settings.
+
+
+
+
+ CoreDataElementAttribute is used in the custom deep equals operation. This attribute allows a user to specify whether or not to include a
+ property in the equals operation.
+
+
+
+
+ Gets or sets a value indicating whether this is ignore.
+
+ true if ignore; otherwise, false.
+
+
+
+ Initializes a new instance of the class and sets the Ignore property to false.
+
+
+
+
+ The comparer.
+
+
+ Type of objects compared
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The comparison.
+
+
+
+
+ Compare x and y.
+
+
+ The x.
+
+
+ The y.
+
+
+ The standard comparison result (from IComparer).
+
+
+
+
+ Make a thread safe cache of the "n" most recently used copies of an object.
+ For example: If different parts of an application are likely to read the same data from a file
+ multiple times, this can be used to reduce the file operations.
+
+ Type of item to cache
+
+
+
+
+ Obtain a record from a data source, based on an index
+ Example: Scan from raw file, based on scan number.
+
+
+ Index of object
+
+
+ Object read from data source
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Maximum number of items in the cache. Oldest items are discarded when the cache is full
+
+
+ Delegate to read a new item, when not in the cache.
+
+
+
+
+ The queue item.
+
+
+
+
+ Gets or sets Index.
+
+
+
+
+ Gets or sets Value.
+
+
+
+
+ Get an item from the cache, or from the data reader (if not cached).
+ Automatically caches new items, discarding oldest items.
+
+
+ Record number
+
+
+ item from the cache. May be "null" if this item is not in the cache, and the reader has no value for this index
+
+
+
+
+ Gets the number of cached items
+
+
+
+
+ Gets the maximum number of cached items
+
+
+
+
+ Gets or sets a value indicating whether all items returned from the cache are Deep Cloned.
+ If true: Items found in the cache are deep cloned. New items read are saved in the cache as a deep clone,
+ such that the item returned to the caller is never the same as any reference in the cache.
+ If false: references are saved in and returned from the cache without any clone.
+
+
+
+
+ Empty the cache
+
+
+
+
+ Determine how the calibration curve is weighted
+
+
+
+
+ This allows you to weight all calibration data points equally during the
+ least-squares regression calculation of the calibration curve.
+
+
+
+
+ This allows you to specify a weighting of 1/X for
+ all calibration data points during
+ the least-squares regression calculation of the calibration curve.
+ Calibrants are weighted by the inverse of their quantity.
+
+
+
+
+ This allows you to specify a weighting of 1/X^2 for
+ all calibration data points during the
+ least-squares regression calculation of the calibration curve.
+ Calibrants are weighted by the inverse of the square of their quantity.
+
+
+
+
+ This allows you to specify a weighting of 1/Y for
+ all calibration data points during the least-squares
+ regression calculation of the calibration curve.
+ Calibrants are weighted by the inverse of their response (or response ratio).
+
+
+
+
+ This allows you to specify a weighting of 1/Y^2 for
+ all calibration data points during the least-squares
+ regression calculation of the calibration curve.
+ Calibrants are weighted by the inverse of
+ the square of their response (or response ratio).
+
+
+
+
+ This allows you to specify a weighting of 1/s^2 for all calibration
+ data points during the least-squares regression calculation of the calibration curve.
+ Calibrants at a given level are weighted by the inverse of the standard deviation of
+ their responses (or response ratios). For this weighting factor to be used,
+ there must be two or more replicates at each level.
+ If only one calibrant is available for any level, 1/s^2 weighting cannot be used.
+
+
+
+
+ Treatment of calibration curve origin
+
+
+
+
+ The origin is included (as an extra point) on the calibration curve.
+
+
+
+
+ The origin is not added to the curve
+
+
+
+
+ The curve is forced through the origin
+
+
+
+
+ The Regression algorithm used
+
+
+
+
+ A linear (first order) polynomial least-squares fit of the experimental data using slope and intercept coefficients:
+ Y = mX + B
+ where m is the slope of the curve and B is the intercept point on the Y-axis.
+
+
+
+
+ A linear polynomial least-squares fit of the experimental data of the following mathematical form:
+ log10[Y] = m log10[X] + B
+ where m is the slope of the curve and B is the intercept point on the Y-axis.
+
+
+
+
+ A calibration curve which calculates a quadratic (second order) polynomial
+ least-squares fit of the experimental data using the following mathematical form:
+ Y = AX2 + BX + C
, where A, B, and C are the polynomial coefficients.
+ At least three calibration levels are required for this curve fit type.
+
+
+
+
+ A calibration curve which calculates a quadratic (second order)
+ polynomial least-squares fit of the experimental data using the following mathematical form:
+ log [Y] = A log [X2] + B log [X] + C
+ where A, B, and C are the polynomial coefficients.
+ Note: ignore/force/include origin options are not used with this Regression algorithm type.
+
+
+
+
+ Locally Weighted regression always kicks out replicates at
+ either the lowest or highest level. With points
+ at only three levels, a loess regression is
+ discontinuous at the mid-point between the
+ lowest and highest level.
+
+
+
+
+ A calibration type in which the response factor is calculated
+ for replicates at all calibration levels and then averaged.
+ The amount in a sample can then be calculated by dividing
+ the response by the average response factor.
+
+
+
+
+ A calibration curve in which data at each calibration level are averaged.
+ This averaging results in a single averaged data point at each calibration level.
+ Averaged calibration points are plotted by connecting adjacent points with straight lines.
+ This calibration curve can be used with one or more calibration levels.
+ Calibration supports ignore/force origin options for this calibration curve type.
+
+
+
+
+ A calibration curve in which a cubic polynomial curve is fit between each
+ pair of calibration levels such that the slopes of the separate cubic polynomial
+ curves match at common calibration curve points.
+ Calibration supports ignore/force origin options for this calibration curve type.
+ Note: At least four calibration levels are required for this type of curve fit.
+ If the origin is forced, only three calibration levels are required.
+
+
+
+
+ Defines why the peak detector has determined that a peak has started or ended
+
+
+
+
+ edge intensity intercepted baseline + 05.*noise value.
+
+
+
+
+ edge fits at least one of the three valley criteria.
+
+
+
+
+ reserved for manually entered integration limits.
+
+
+
+
+ edge reached the peak constraint percentage height.
+
+
+
+
+ edge reached the tailing factor RT limit before the STRIPE height.
+
+
+
+
+ Tilt is as in a pinball machine, something bad happened,
+ such as hitting the edge of the survey window.
+
+
+
+
+ Determines how signal to noise is reported
+
+
+
+
+ No noise value has been calculated
+
+
+
+
+ No detected noise
+
+
+
+
+ Use SignalToNoise property to get the value
+
+
+
+
+ Determines how a component peak has been selected from a set of possible peaks
+
+
+
+
+ search was by spectral fit.
+
+
+
+
+ search was by largest peak in the search window.
+
+
+
+
+ search was by nearest retention time.
+
+
+
+
+ search was by spectral purity.
+
+
+
+
+ peak was detected by the generic chromatogram peak detector.
+
+
+
+
+ Peak was reworked from the original (for example manual)
+
+
+
+
+ Determines is the peak is rising, or inverted
+
+
+
+
+ Peak rises, like a mountain
+
+
+
+
+ Peak is inverted (like a valley)
+
+
+
+
+ An algorithm for peak detection.
+
+
+
+
+ The genesis peak detection algorithm.
+
+
+
+
+ The ICIS peak detection algorithm
+
+
+
+
+ The avalon peak detection algorithm
+
+
+
+
+ The parameterless peak detection algorithm
+
+
+
+
+ Represents the results of an optional test.
+
+
+
+
+ Failed Test
+
+
+
+
+ Passed Test
+
+
+
+
+ Not Tested
+
+
+
+
+ This specifies a smoothing envelope shape.
+
+
+
+
+ Smooth with equal weights.
+
+
+
+
+ Smooth with a gaussian weighting envelope.
+
+
+
+
+ The units that you can associate with mass tolerance
+
+
+
+
+ millimass units: a unit of mass equal to 0.001 atomic mass unit, used in physics
+ and chemistry. This unit is also called the millidalton (mDa). The millimass unit
+ is an SI unit, but its proper SI symbol is mu, not the older symbol mmu
+
+
+
+
+ parts-per-million: a concentration, a unit of proportion equal to 10^-6.
+
+
+
+
+ atomic mass units: the unit of mass used by chemists and physicists for measuring
+ the masses of atoms and molecules. Early in the nineteenth century, scientists
+ discovered that each chemical element is composed of atoms, and that each chemical
+ compound is composed of molecules in which atoms are combined in a fixed way. The
+ definition of the unified atomic mass unit as 1/12 the mass of the most common atoms
+ of carbon, known as carbon-12 atoms. (Most elements are mixtures of atoms which have
+ different masses because they contain different numbers of neutrons; these varieties
+ are called isotopes.) Careful experiments have measured the size of this unit; the
+ currently accepted value (1998) is 1.660 538 73 x 10-24 grams. (This number equals 1
+ divided by Avogadro's number; see mole.) In addition, 1 amu equals approximately
+ 931.494 MeV (see electron volt). In biochemistry, the atomic mass unit is called
+ the dalton (Da).
+
+
+
+
+ Mode of handling multiple chromatogram traces (from the same filtered scans)
+
+
+
+
+ There is only one chromatogram
+
+
+
+
+ The two chromatograms are summed
+
+
+
+
+ The second chromatogram is subtracted from the first
+
+
+
+
+ Determines how void time is calculated
+
+
+
+
+ A value is specified
+
+
+
+
+ The time of the first peak in the void chromatogram is used.
+
+
+
+
+ Determines how the ICIS peak detector determines which signals are noise.
+
+
+
+
+ A single pass algorithm to determine the noise level.
+
+
+
+
+ A multiple pass algorithm to determine the noise level.
+ In general, this algorithm is more accurate in analyzing the noise than the INCOS Noise algorithm,
+ but it takes longer.
+
+
+
+
+ Features which can be set per peak, such as "reference compound"
+
+
+
+ No peak flags
+
+
+ Saturation flag (signal over ADC limit)
+
+
+ Fragmentation flag (peak split by centroider)
+
+
+ Merged flag (peaks combined by centroider)
+
+
+ Exception peak flag (part of reference, but not used by calibration)
+
+
+ Reference peak flag (hi-res internal reference compound)
+
+
+ Mathematically modified packet
+
+
+ High resolution SIM lock mass
+
+
+
+ Determines how much of the the chromatogram is used.
+ Data outside of the calculated window is ignored
+
+
+
+
+ Do not restrict the chromatogram
+
+
+
+
+ The chromatogram processed is restricted by the baseline and noise window
+
+
+
+
+ Static class used to convert enumeration values to custom strings.
+ This class is necessary because there is no mechanism to override the ToString() method
+ for enumerations.
+
+
+ To get the customized string for an enumeration value, a program must call the static method
+ EnumFormat.ToString(value) and not value.ToString().
+
+
+
+
+ Gets the display text for an enumeration value.
+
+
+ A string is searched for in three places, in this order:
+ A custom string specified by SetCustomString().
+ A string resource in the resource file (enum namespace).Enumerations named
+ (type name).(enum name).
+ From the DisplayTextAttribute for the enumeration value.
+ If no value is found, the standard string representation of the enumeration is returned.
+
+ The enumeration value for which to obtain the text string.
+ The string for the enumeration value.
+
+
+
+ Sets a custom string for an enumeration value.
+ This will override any string set with a DisplayTextAttribute.
+
+ The enumeration value for which to set the custom text string.
+ The custom text string for this enumeration value.
+
+
+
+ Extension methods.
+ Includes extensions to several types and interfaces defined in this DLL,
+ plus some extensions to common .Net types.
+
+
+
+
+ Determines whether [the specified source] [is null or empty] .
+
+ Type parameter
+
+
+ The source.
+
+
+ if [the specified source] [is null or empty]; otherwise, .
+
+
+
+
+ Test if a value is within range
+
+
+ The range.
+
+
+ The value.
+
+
+ True if the value is within or equal to the range limits (closed range).
+
+
+
+
+ find the first data value which is equal to or after start
+ (for example, first value within a tolerance range).
+ Similar to Array.Binary search, but faster
+ as does not need to call comparer functions
+
+
+ Array of increasing data (for example masses in a scan)
+
+
+ Position to look for (for example start of X axis range)
+
+
+ The first value after start, or -1 if there are no points after start
+
+
+
+
+ Create the ion chromatogram value from a scan data
+ which is the sum of the intensities of all masses between given limits.
+ These limits are typically calculated (elsewhere) based on a known mass +/- tolerance.
+
+
+ The scan data.
+
+
+ The low mass limit.
+
+
+ The high mass limit.
+
+
+ The summed intensities.
+
+
+
+
+ Create the ion chromatogram value from a centroid stream,
+ which is the largest of the positive intensities of all masses between given limits.
+ These limits are typically calculated (elsewhere) based on a known mass +/- tolerance.
+ If there are no peaks in range, or all data in range has negative intensities, zero is returned.
+
+
+ The centroids.
+
+
+ The low mass limit.
+
+
+ The high mass limit.
+
+
+ The largest positive peak intensity within limits, or zero if there are no positive values within limits.
+
+
+
+
+ Create the ion chromatogram value from a scan,
+ which is mass of the largest of the positive intensities of all masses between given limits.
+ These limits are typically calculated (elsewhere) based on a known mass +/- tolerance.
+ If there are no peaks in range, or all data in range has negative intensities, zero is returned.
+
+
+ The centroids.
+
+
+ The low mass limit.
+
+
+ The high mass limit.
+
+
+ The mass of the peak with the largest positive peak intensity within limits,
+ or zero if there are no positive values within limits.
+
+
+
+
+ Create the ion chromatogram value from a scan,
+ which is mass of the largest of the positive intensities of all masses between given limits.
+ These limits are typically calculated (elsewhere) based on a known mass +/- tolerance.
+ If there are no peaks in range, or all data in range has negative intensities, zero is returned.
+
+
+ The centroids.
+
+
+ The low mass limit.
+
+
+ The high mass limit.
+
+
+ The mass of the peak with the largest positive peak intensity within limits,
+ or zero if there are no positive values within limits.
+
+
+
+
+ Create the ion chromatogram value from a scan,
+ which is mass of the largest of the positive intensities of all masses between given limits.
+ These limits are typically calculated (elsewhere) based on a known mass +/- tolerance.
+ If there are no peaks in range, or all data in range has negative intensities, zero is returned.
+
+
+ The centroids.
+
+
+ The mass of the peak with the largest positive peak intensity within limits,
+ or zero if there are no positive values within limits.
+
+
+
+
+ Create the ion chromatogram value from a scan,
+ which is mass of the largest of the positive intensities of all masses between given limits.
+ These limits are typically calculated (elsewhere) based on a known mass +/- tolerance.
+ If there are no peaks in range, or all data in range has negative intensities, zero is returned.
+
+
+ The centroids.
+
+
+ The mass of the peak with the largest positive peak intensity within limits,
+ or zero if there are no positive values within limits.
+
+
+
+
+ Perform binary search on IList
+
+
+ The list.
+
+
+ The value.
+
+
+ The comparer.
+
+
+ Type of items in list
+
+
+ The index of the found item, or compliment of the next item after the supplied value.
+
+
+ Thrown if arguments are null
+
+
+
+
+ Test if a raw file has MS data.
+
+
+ The raw data.
+
+
+ True if the file has MS data
+
+
+
+
+ Test if a raw file has MS data, and select the MS detector, if available.
+
+
+ The raw data.
+
+
+ True if the MS data has been selected.
+ False if the file does not have MS data.
+
+
+
+
+ Get a filtered scan enumerator, to obtain the collection of scans matching given filter rules.
+ Gets scans within the given time range.
+
+
+ The raw data.
+
+
+ The filter.
+
+
+ The start Time.
+
+
+ The end Time.
+
+
+ The collection of scans
+
+
+
+
+ Calculate the filters for this raw file for scans within the time range supplied.
+
+ the raw data
+ start of time window
+ end of time window
+
+ Auto generated list of unique filters
+
+
+
+
+ Calculate the compound names for this raw file for scans within the time range supplied.
+
+ the raw data
+ start of time window
+ end of time window
+
+ Array of compound names within the supplied time range
+
+
+
+
+ Get the scans included in the time range
+
+ raw file
+ start time of range
+ end time of range
+ first scan in range
+ last scan in range
+ True if scans numbers are returned
+
+
+
+ Get a filtered scan enumerator, to obtain the collection of scans matching given filter rules.
+
+
+ The raw data.
+
+
+ The filter.
+
+
+ The collection of scans
+
+
+
+
+ Get a scan enumerator, to obtain the collection of scans matching a given compound.
+
+
+ The raw data.
+
+
+ The filter.
+
+
+ The collection of scans
+
+
+
+
+ Test is a scan is of a given compound
+
+ raw file
+ scan number
+ compound name
+ true if this is a scan of the compound
+
+
+
+ Get a scan enumerator, to obtain the collection of scans matching a given compound, within a given time range
+
+
+ The raw data.
+
+
+ The compound name.
+
+
+ The start Time.
+
+
+ The end Time.
+ ///
+ The collection of scans within the supplied time range, which have this compound name
+
+
+
+
+ Test if a scan passes a filter.
+ This extension is provided for improved efficiency
+ where the same filter string needs to be used to test multiple scans,
+ without repeating the parsing.
+ Parsing can be done using: GetFilterFromString(string filter),
+ with the IRawDataPlus interface.
+ Also consider using
+ when processing all scans in a file.
+
+
+ The raw data.
+
+ the scan number
+ the filter to test
+
+ True if this scan passes the filter
+
+
+
+
+ Test if a scan passes a filter.
+ This extension is provided for improved efficiency
+ where the same filter string needs to be used to test multiple scans,
+ without repeating the parsing. Consider using one of the overloads of BuildFilterHelper()
+ Parsing can be done using: GetFilterFromString(string filter),
+ with the IRawDataPlus interface.
+ Also consider using
+ when processing all scans in a file.
+
+
+ The raw data.
+
+ the scan number
+ the filter to test
+
+ True if this scan passes the filter
+
+
+
+
+ Constructs an object which has an analysis of the selections being made by
+ a scan filter. Improves efficiency when validating many scans against a filter.
+ Filter precision is automatically set, based on the file.
+
+
+ The raw data.
+
+ the filter to analyze
+
+ Helper, to efficiently validate scans.
+
+
+
+
+ Constructs an object which has an analysis of the selections being made by
+ a scan filter. Improves efficiency when validating many scans against a filter.
+
+
+ The raw data.
+
+ the filter to analyze
+ Precision of filter
+
+ Helper, to efficiently validate scans.
+
+
+
+
+ Constructs an object which has an analysis of the selections being made by
+ a scan filter. Improves efficiency when validating many scans against a filter.
+ Filter precision is automatically set from the raw file.
+
+
+ The raw data.
+
+ the filter to analyze
+
+ Helper, to efficiently validate scans.
+
+
+
+
+ Constructs an object which has an analysis of the selections being made by
+ a scan filter. Improves efficiency when validating many scans against a filter.
+
+
+ The raw data.
+
+ the filter to analyze
+ Filter Precision
+
+ Helper, to efficiently validate scans.
+
+
+
+
+ Format ionization mode, based on the scan filter string format.
+
+
+ The raw data.
+
+
+ The mode to format.
+
+
+ The .
+
+
+
+
+ Format activation type, based on the scan filter string format.
+
+
+ The raw data.
+
+
+ The mode to format.
+
+
+ The .
+
+
+
+
+ Format mass analyzer, based on the scan filter string format.
+
+
+ The raw data.
+
+
+ The analyzer to format.
+
+
+ The .
+
+
+
+
+ Get the mass tolerance and precision values from a raw file
+
+ Raw file
+ The default tolerance and filter precision
+
+
+
+ Enumerate over a range of scans
+
+ File to read from
+ start of scan range
+ final scan in scan range
+ An enumerator for a collection of scans
+
+
+
+ Enumerate over a set of scans
+
+ File to read from
+ Numbers for the scans
+ An enumerator for a collection of scans
+
+
+
+ Gets the average of scans between the given times, which match a filter string.
+
+ File to read from
+
+ start time
+
+
+ end time
+
+
+ filter string
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+
+ the averaged scan. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Gets the average of scans between the given times, which match a compound name.
+
+ File to read from
+
+ start time
+
+
+ end time
+
+
+ compound name
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+
+ the averaged scan. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Gets the average of scans between the given scan numbers, which match a compound name.
+
+ File to read from
+
+ start scan number
+
+
+ end scan number
+
+
+ compound name
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+
+ the averaged scan. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Gets the average of scans between the given scan numbers, which match a filter string.
+
+
+ File to read from
+
+
+ start scan
+
+
+ end scan
+
+
+ filter string
+
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+
+ The average Options (for FT format data).
+
+
+ the averaged scan. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Create a scan averager.
+
+
+ The data.
+
+
+ The average options.
+
+
+ The .
+
+
+
+
+ Gets the average of scans between the given times, which match the supplied filter rules.
+
+ File to read from
+
+ start time
+
+
+ end time
+
+
+ filter rules
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+
+ the averaged scan. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Gets the average of scans between the given scan numbers, which match the supplied filter rules.
+
+ File to read from
+
+ start scan
+
+
+ end scan
+
+
+ filter rules
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+
+ the averaged scan. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Calculates the average spectra based upon the list supplied.
+ The application should filter the data before making this code, to ensure that
+ the scans are of equivalent format. The result, when the list contains scans of
+ different formats (such as linear trap MS centroid data added to orbitrap MS/MS profile data) is undefined.
+ If the first scan in the list contains "FT Profile",
+ then the FT data profile is averaged for each
+ scan in the list. The combined profile is then centroided.
+ If the first scan is profile data, but not orbitrap data:
+ All scans are summed, starting from the final scan in this list, moving back to the first scan in
+ the list, and the average is then computed.
+ For simple centroid data formats: The scan stats "TIC" value is used to find the "most abundant scan".
+ This scan is then used as the "first scan of the average".
+ Scans are then added to this average, taking scans alternatively before and after
+ the apex, merging data within tolerance.
+
+ File to read from
+
+ list of scans to average
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+ Merge segments, even if mass ranges are not similar.
+ Only applies to data with 1 mass segment
+
+ The average of the listed scans. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Calculates the averaged and subtracted spectra based upon the lists supplied.
+ The application should filter the data before making this code, to ensure that
+ the scans in both lists are of equivalent format. The result, when the lists contains scans of
+ different formats (such as linear trap MS centroid data added to orbitrap MS/MS profile data) is undefined.
+ If the first scan in the list contains "FT Profile",
+ then the FT data profile is averaged for each
+ scan in the list. The combined profile is then centroided.
+ If the first scan is profile data, but not orbitrap data:
+ All scans are summed, starting from the final scan in this list, moving back to the first scan in
+ the list, and the average is then computed.
+ For simple centroid data formats: The scan stats "TIC" value is used to find the "most abundant scan".
+ This scan is then used as the "first scan of the average".
+ Scans are then added to this average, taking scans alternatively before and after
+ the apex, merging data within tolerance.
+
+ File to read from
+
+ foreground scans: list of scans to average
+
+ background scans: list of scans which are averaged, and then subtracted from the averaged foreground scans
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+
+ The average of the listed scans. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Calculates the averaged and subtracted spectra based upon the lists supplied.
+ If the first scan in the list contains "FT Profile",
+ then the FT data profile is averaged for each
+ scan in the list. The combined profile is then centroided.
+ If the first scan is profile data, but not orbitrap data:
+ All scans are summed, starting from the final scan in this list, moving back to the first scan in
+ the list, and the average is then computed.
+ For simple centroid data formats: The scan stats "TIC" value is used to find the "most abundant scan".
+ This scan is then used as the "first scan of the average".
+ Scans are then added to this average, taking scans alternatively before and after
+ the apex, merging data within tolerance.
+
+ File to read from
+
+ time range to average.
+
+
+ time ranges to subtract. The sets of scans matching the filter in each of these time ranges
+ are joined to define the background.
+
+
+ Filter to apply for averaging
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+
+ The average of the listed scans. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Calculates the averaged and subtracted spectra based upon the lists supplied.
+ If the first scan in the list contains "FT Profile",
+ then the FT data profile is averaged for each
+ scan in the list. The combined profile is then centroided.
+ If the first scan is profile data, but not orbitrap data:
+ All scans are summed, starting from the final scan in this list, moving back to the first scan in
+ the list, and the average is then computed.
+ For simple centroid data formats: The scan stats "TIC" value is used to find the "most abundant scan".
+ This scan is then used as the "first scan of the average".
+ Scans are then added to this average, taking scans alternatively before and after
+ the apex, merging data within tolerance.
+
+ File to read from
+
+ time range to average.
+
+
+ time ranges to subtract. The sets of scans matching the filter in each of these time ranges
+ are joined to define the background.
+
+
+ Filter to apply for averaging
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+
+ The average of the listed scans. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Calculates the averaged and subtracted spectra based upon the lists supplied,
+ which include the named compound.
+ If the first scan in the list contains "FT Profile",
+ then the FT data profile is averaged for each
+ scan in the list. The combined profile is then centroided.
+ If the first scan is profile data, but not orbitrap data:
+ All scans are summed, starting from the final scan in this list, moving back to the first scan in
+ the list, and the average is then computed.
+ For simple centroid data formats: The scan stats "TIC" value is used to find the "most abundant scan".
+ This scan is then used as the "first scan of the average".
+ Scans are then added to this average, taking scans alternatively before and after
+ the apex, merging data within tolerance.
+
+ File to read from
+
+ time range to average.
+
+
+ time ranges to subtract. The sets of scans matching the filter in each of these time ranges
+ are joined to define the background.
+
+
+ Compound to select scans for averaging
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+
+ The average of the listed scans. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Get the list of scans which conatin a given copound, in the range
+ "nearest scan time to range.Low" to "nearest scan time to range.High"
+
+ Raw file
+ Compound name to match against scan event
+ Retention Time range
+
+
+
+
+ Creates a list of all scans in the given range, which pass a filter string
+
+ The raw file.
+ The filter.
+ The start scan number.
+ The end scan number.
+ List of filtered scan numbers
+
+
+
+ Creates a list of all scans in the given range, which have a component name
+
+ The raw file.
+ The compound.
+ The start scan number.
+ The end scan number.
+ List of filtered scan numbers
+
+
+
+ Creates a list of all scans in the given range, which pass the supplied filter rules.
+
+ The raw file.
+ The filter.
+ The start scan number.
+ The end scan number.
+ List of filtered scan numbers
+
+
+
+ Creates a list of all scans in the given time range, which pass the supplied filter rules.
+
+ The raw file.
+ The filter.
+ The start time.
+ The end time.
+ List of filtered scan numbers
+
+
+
+ Creates a list of all scans in the given time range, which pass the supplied filter rules.
+ This version returds scans from the "nearest scan to start time" to "nearest scan to end time".
+
+ The raw file.
+ The filter.
+ The time range.
+ List of filtered scan numbers
+
+
+
+ Creates a list of all scans in the given time range, which pass the supplied filter rules.
+ This version returds scans from the "first scan >= start time" to "last scan Less or equal to end time".
+
+ The raw file.
+ The filter.
+ The time range.
+ List of filtered scan numbers
+
+
+
+ Creates a list of all scans in the given time range, which pass a filter
+
+ The raw file.
+ The filter.
+ The start time.
+ The end time.
+ List of filtered scan numbers
+
+
+
+ Convert a time range to a the nearest scan range
+
+
+ The raw File.
+
+
+ The time range.
+
+
+ The scan range of the nearest scans to the start and end times
+
+
+
+
+ Convert a time range to am inlcuded scan range,
+ include scans which are within or equal to the time limits supplied.
+
+
+ The raw File.
+
+
+ The time range.
+
+
+ The scan range of the lowest and highest scans in the time range supplied,
+ including scans at the boundary times.
+
+
+
+
+ Creates a list of all scans in the given scan range, which pass a filter
+
+
+ The sample raw file.
+
+
+ The start scan number.
+
+
+ The end scan number.
+
+
+ The (analyzed) filter.
+
+
+ The list of matching scans.
+
+
+
+
+ Creates a list of all scans in the given scan range, which pass a filter
+
+
+ The sample raw file.
+
+
+ The start scan number.
+
+
+ The end scan number.
+
+
+ The (analyzed) filter.
+
+
+ The list of matching scans.
+
+
+
+
+ Calculates the average spectra based upon the list supplied.
+ The application should filter the data before making this code, to ensure that
+ the scans are of equivalent format. The result, when the list contains scans of
+ different formats (such as linear trap MS centroid data added to orbitrap MS/MS profile data) is undefined.
+ If the first scan in the list contains "FT Profile",
+ then the FT data profile is averaged for each
+ scan in the list. The combined profile is then centroided.
+ If the first scan is profile data, but not orbitrap data:
+ All scans are summed, starting from the final scan in this list, moving back to the first scan in
+ the list, and the average is then computed.
+ For simple centroid data formats: The scan stats "TIC" value is used to find the "most abundant scan".
+ This scan is then used as the "first scan of the average".
+ Scans are then added to this average, taking scans alternatively before and after
+ the apex, merging data within tolerance.
+
+ File to read from
+
+ list of ScanStatistics
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average Options (for FT format data).
+
+
+ The average of the listed scans. Use Scan.ScansCombined to find how many scans were averaged.
+
+
+
+
+ Subtracts the background scan from the foreground scan
+
+ File to read from
+ Foreground data (Left of "scan-scan" operation
+ Background data (right of"scan-scan" operation)
+ The result of foreground-background
+
+
+
+ Test if this file has variable trailers.
+ Calling code must select and MS data stream first.
+ If this is true, then the number of items returned in each scan for "trailer extra" can vary.
+
+
+ The raw data.
+
+
+ True, if the trailer extra records are variable sized.
+
+
+
+
+ Test if a set of headers defines "variable sized records".
+
+
+ The headers.
+
+
+ True, if the records controlled by these headers are variable sized.
+
+
+
+
+ Get trailer extra data for scan with validation.
+ Gets the "trailer extra" custom scan data in object form.
+
+ The application should select MS data before calling this.
+ For example, If the string "Ion Time" is found at index 3 in the
+ headers with format "double", and an application needs to read this double value
+ from scan 19, then the application can first test if item[3] is valid in scan 19, by
+ inspecting the returned boolean array (result.Item1[3]).
+ If this array element is "true" then the "Ion Time" (double) value in the returned object array
+ at index 3 may be used. If result.Item1[3] is false, then this value is not available.
+ So: If producing a chart of this value, the retention time of this scan should be
+ omitted from the data series. (Do not record "0" for a missing value).
+ Argument exceptions may be returned by the underlying file, if (for example) the scan number
+ is out of range.
+
+
+ The raw file.
+
+
+ The scan number.
+
+
+ The headers as read by IRawDataPlus.GetTrailerExtraHeaderInformation.
+ When processing multiple scans, it is more efficient for an application
+ to request this data once, and supply it to each call.
+ Instruments may have fixed record sizes. Having read the headers, an application
+ may call this bool hasVariableRecords = headers.HasVariableRecords();
+ and if this returns "false" then there is no need to call this extension,
+ as all values will be valid in all scans.
+
+
+ A tuple, whose first element is an array of valid flags, and second is the exact data
+ returned from GetTrailerExtraValues, for the supplied scan.
+
+
+
+
+ Contains enumerations used for scan filters and scan events.
+
+
+
+
+ Specifies polarity of scan.
+
+
+
+
+ Scan is negative ion
+
+
+
+
+ Scan is positive ion
+
+
+
+
+ Accept any type of scan polarity.
+
+
+
+
+ Specifies data type of scan.
+
+
+
+
+ Centroid format data
+
+
+
+
+ Profile format data
+
+
+
+
+ When filtering: accept any state of this feature
+
+
+
+
+ Specifies how source fragmentation values are interpreted.
+
+
+
+
+ No numeric value: e.g. SID
+
+
+
+
+ A single value: e.g. SID=40
+
+
+
+
+ A ramp: e.g. SID=40-50
+
+
+
+
+ SIM: e.g. SIM [100@40, 200@50]
+
+
+
+
+ Accept any value
+
+
+
+
+ Specifies scan mode in scans.
+
+
+
+
+ A full scan.
+
+
+
+
+ A zoom scan.
+
+
+
+
+ A SIM (selected Ion Monitoring) scan.
+
+
+
+
+ A SRM (Selected Reaction Monitoring) scan.
+
+
+
+
+ A CRM (Continuous Reaction Monitoring) scan.
+
+
+
+
+ any scan.
+
+
+
+
+ A Q1 MS scan (first quad of triple).
+
+
+
+
+ A Q3 MS scan (third quad of triple).
+
+
+
+
+ The feature state.
+ By default: On.
+ This tri-state enum is designed for filtering
+
+
+
+
+ The on state.
+ The feature is used
+
+
+
+
+ The off state. The feature is not used.
+
+
+
+
+ The any state. When filtering, match any state of this feature.
+
+
+
+
+ Specifies scan power in scans.
+
+
+
+ Constant Neutral Gain scan(ICIS Data Only)
+
+
+ Constant Neutral Loss scan(ICIS Data Only)
+
+
+ Parent scan(ICIS Data Only)
+
+
+ Any scan power
+
+
+ basic MS
+
+
+ MS^2 (MS/MS)
+
+
+ order MS^3
+
+
+ order MS^4
+
+
+ order MS^5
+
+
+ order MS^6
+
+
+ order MS^7
+
+
+ order MS^8
+
+
+ order MS^9
+
+
+ order MS^10
+
+
+
+ Specifies ionization mode in scans.
+
+
+
+
+ Mode is electron impact.
+
+
+
+
+ Mode is chemical ionization.
+
+
+
+
+ Mode is fast atom bombardment.
+
+
+
+
+ Mode is electro spray.
+
+
+
+
+ Mode is atmospheric pressure chemical ionization.
+
+
+
+
+ Mode is nano spray.
+
+
+
+
+ Mode is thermo spray.
+
+
+
+
+ Mode is field desorption.
+
+
+
+
+ Mode is matrix assisted laser desorption ionization.
+
+
+
+
+ Mode is glow discharge.
+
+
+
+
+ Mode is any (For filtering only).
+ If reported by an instrument: Mode was not recorded by instrument.
+
+
+
+
+ Paper spray ionization.
+
+
+
+
+ Card nanospray ionization.
+
+
+
+
+ The extension ionization mode 1.
+
+
+
+
+ The extension ionization mode 2.
+
+
+
+
+ The extension ionization mode 3.
+
+
+
+
+ The extension ionization mode 4.
+
+
+
+
+ The extension ionization mode 5.
+
+
+
+
+ The extension ionization mode 6.
+
+
+
+
+ The extension ionization mode 7.
+
+
+
+
+ The extension ionization mode 8.
+
+
+
+
+ The extension ionization mode 9.
+
+
+
+
+ The ion mode is beyond known types.
+
+
+
+
+ Specifies inclusion or exclusion of the detector value.
+
+
+
+
+ The detector value valid.
+
+
+
+
+ Any detector value (for filtering).
+
+
+
+
+ The detector value is not valid.
+
+
+
+
+ Specifies precursor(collision) energy validation type.
+
+
+
+
+ Energy value is valid
+
+
+
+
+ Not valid (accept any when filtering)
+
+
+
+
+ Specifies type of mass analyzer in scans.
+
+
+
+
+ Ion trap
+
+
+
+
+ Triple quad
+
+
+
+
+ Single quad
+
+
+
+
+ Time of flight
+
+
+
+
+ Fourier Transform
+
+
+
+
+ Magnetic sector
+
+
+
+
+ Match any type
+
+
+
+
+ Specifies type of sector scan.
+
+
+
+
+ Magnetic sector scan
+
+
+
+
+ Electrostatic sector scan
+
+
+
+
+ Match any sector scan
+
+
+
+
+ Specifies type of field free region in scans.
+
+
+
+
+ First Field Free Region
+
+
+
+
+ Second Field Free Region
+
+
+
+
+ Accept any Field Free Region
+
+
+
+
+ Specifies compensation voltage type.
+
+
+
+
+ No numeric value: e.g. SID
+
+
+
+
+ A single value: e.g. SID=40
+
+
+
+
+ A ramp: e.g. SID=40-50
+
+
+
+
+ SIM: e.g. SIM [100@40, 200@50]
+
+
+
+
+ Accept any value
+
+
+
+
+ The activation types are used to link a specific precursor mass with an activation type.
+ There are 26 possible mode values, including some reserved values.
+
+
+
+
+ Collision induced dissociation
+
+
+
+
+ Multi-photon dissociation.
+
+
+
+
+ Electron-capture dissociation (ECD) is a method of fragmenting gas phase ions
+ for tandem mass spectrometric analysis (structural elucidation).
+
+
+
+
+ Pulsed-Q Dissociation (PQD) is a proprietary fragmentation technique that eliminates the low mass cut-off
+ for Thermo Scientific™ linear ion trap mass spectrometers,
+ facilitating the use of isobaric mass tags for quantitation of proteins.
+
+
+
+
+ Electron transfer dissociation (ETD).
+ ETD induces fragmentation of cations (e.g. peptides or proteins) by transferring electrons to them.
+
+
+
+
+ Higher-energy collisional dissociation.
+
+
+
+
+ Match any activation type
+
+
+
+
+ SA activation
+
+
+
+
+ Proton transfer reaction
+
+
+
+
+ Negative electron transfer dissociation
+
+
+
+
+ Negative Proton-transfer-reaction
+
+
+
+
+ Ultra Violet Photo Dissociation
+
+
+
+
+ Mode a (reserved) .
+
+
+
+
+ Mode b (reserved) .
+
+
+
+
+ Mode c (reserved) .
+
+
+
+
+ Mode d (reserved) .
+
+
+
+
+ Mode e (reserved) .
+
+
+
+
+ Mode a (reserved) .
+
+
+
+
+ Mode g (reserved) .
+
+
+
+
+ Mode h (reserved) .
+
+
+
+
+ Mode i (reserved) .
+
+
+
+
+ Mode J (reserved) .
+
+
+
+
+ Mode K (defined as NegativeProtonTransferReaction).
+
+
+
+
+ Mode L (reserved).
+
+
+
+
+ Mode M (reserved).
+
+
+
+
+ Mode N (reserved).
+
+
+
+
+ Mode O (reserved).
+
+
+
+
+ Mode P (reserved).
+
+
+
+
+ Mode Q (reserved).
+
+
+
+
+ Mode R (reserved).
+
+
+
+
+ Mode S (reserved).
+
+
+
+
+ Mode T (reserved).
+
+
+
+
+ Mode U (reserved).
+
+
+
+
+ Mode V (reserved).
+
+
+
+
+ Mode W (reserved).
+
+
+
+
+ Mode X (reserved).
+
+
+
+
+ Mode Y (reserved).
+
+
+
+
+ Mode Z (reserved).
+
+
+
+
+ end of list
+
+
+
+
+ Determines how accurate mass calibration was done.
+
+
+
+
+ Calibration is internal (calibration compound mixed with injected data).
+
+
+
+
+ Calibration is external (calibration compound used on a previous injection).
+
+
+
+
+ No recorded accurate mass calibration.
+
+
+
+
+ Access to basic data about a replicate
+ As defined in Xcalibur PMD
+
+
+
+
+ Gets the amount of target compound in calibration or QC standard.
+
+
+
+
+ Gets the Ratio of target peak height to ISTD peak height in result file.
+
+
+
+
+ Gets the Ratio of target peak area to ISTD peak area in result file.
+
+
+
+
+ Gets a value indicating whether to exclude this data point from calibration curve.
+
+
+
+
+ Gets the raw file name for the replicate
+
+
+
+
+ A replicate is a measurement of a single calibration peak in 1 file.
+ This interfaces defines required features of a replicate for the regression code.
+ A calibration system needs to implement at least this information
+ (typically from a calibration table and peak integration results).
+ The real class "Replicate" implements this.
+
+
+
+
+ Gets the amount of target compound in calibration or QC standard.
+
+
+
+
+ Gets the response of this sample, for example: Ratio of target peak area to ISTD peak area
+
+
+
+
+ Gets or sets a value indicating whether this data point should be excluded from the calibration curve.
+
+
+
+
+ Gets the key name associated with this replicate (for example a file name)
+
+
+
+
+ Gets the second key name associated with this replicate (for example a compound name)
+
+
+
+
+ Implementation of ICloneable.Clone method.
+ Creates deep copy of this instance.
+
+
+ An exact copy of the current Replicate.
+
+
+
+
+ Interface to pass replicate information to curve fitting methods
+
+
+
+
+ Gets the replicates of this calibration level
+
+
+
+
+ Gets the number of replicates for this level
+
+
+
+
+ Gets or sets the amount of calibration compound (usually a concentration) for this level
+
+
+
+
+ array access operator to return Replicate array element.
+
+ Index into the array
+ The requested replicate
+
+
+
+ Count all included/excluded replicates.
+
+ The included and excluded counts are incremented by the number of included
+ and excluded points. These counters are not set to zero,
+ allowing this method to be called repeatedly, for example to count
+ replicates for all levels.
+
+
+ (updated) included counter
+ (updated) excluded counter
+
+
+
+ Read only access to a calibration level.
+
+
+
+
+ Gets the name for this calibration level
+
+
+
+
+ Gets the amount of calibration compound (usually a concentration) for this level
+
+
+
+
+ interface to read QC level settings
+
+
+
+
+ Gets the QC test standard: 100 * (yobserved-ypredicted)/ypreditced
+
+
+
+
+ Import format for Xcalibur PMD
+
+
+
+
+ Gets replicate data, as saved in a PMD file
+
+
+
+
+ Interface to read replicate information
+
+
+
+
+ Gets the replicates of this calibration level
+
+
+
+
+ Gets the number of replicates for this level
+
+
+
+
+ Gets an array access operator to return Replicate array element.
+
+ Index into the array
+ The requested replicate
+
+
+
+ This interface represents replicate information after preforming calibration calculations
+ and determining statistics. These statistics are may be used to annotate calibration curves.
+
+
+
+
+ Gets or sets the calculated % RSD for a replicate table
+
+
+
+
+ Gets or sets the calculated % RSD for a replicate table
+
+
+
+
+ Gets the average value of the response factor
+
+
+
+
+ Statistics calculated from a replicate table
+
+
+
+
+ Gets the calculated % RSD for a replicate table
+
+
+
+
+ Gets the calculated % CV for a replicate table
+
+
+
+
+ Gets the average retention time of all peaks added to the replicate table
+
+
+
+
+ Gets the average response factor (or average response for ISTD)
+
+
+
+
+ Gets a value indicating whether the calibration or QC level was "found"
+
+
+
+
+ This interface represents replicate information after preforming calibration calculations
+ and determining statistics. These statistics are may be used to annotate calibration curves.
+
+
+
+
+ Read only access to Results of running system suitability tests
+
+
+
+
+ Gets the resolution of the peak (from other peaks)
+
+
+
+
+ Gets a value indicating whether the resolution test passed
+
+
+
+
+ Gets a value indicating whether the symmetry test passed
+
+
+
+
+ Gets a value indicating whether the peak width test passed
+
+
+
+
+ Gets a value indicating whether the peak tailing test passed
+
+
+
+
+ Gets a value indicating whether the column overload test passed
+
+
+
+
+ Gets a value indicating whether the signal to noise test passed
+
+
+
+
+ Gets a value indicating whether the saturation test passed
+
+
+
+
+ Gets a value indicating whether the concave peak test passed
+
+
+
+
+ Gets a value indicating whether the baseline clipping test passed
+
+
+
+
+ Gets a value indicating whether the following values have been calculated:
+ PassedResolutionChecks, MeasuredResolution
+
+
+
+
+ Gets a value indicating whether the following values have been calculated:
+ PassedSymmetryChecks
+
+
+
+
+ Gets a value indicating whether the following values have been calculated:
+ PassedPeakWidth, PassedTailing, PassedColumnOverload, PassedNoise, PassedSaturated,
+ PassedConcave, PassedBaselineClipped
+
+
+
+
+ Gets a value indicating whether the ResolutionCheck was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the SymmetryCheck was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the PeakWidth test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the Tailing test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the ColumnOverload test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the Noise test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the Saturated test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the Concave test was performed, and the results of the test, when run.
+
+
+
+
+ Gets a value indicating whether the BaselineClipped test was performed, and the results of the test, when run.
+
+
+
+
+ This interfaces encapsulates access to the results of an ion ratio test for one ion.
+
+
+
+
+ Gets a value indicating whether the co-elution test has passed for this ion
+
+
+
+
+ Gets the results of the co-elution test
+ targetCompoundPeak.Apex.RetentionTime - ion.Apex.RetentionTime;
+
+
+
+
+ Gets the measured ion ratio, as a percentage
+ (qualifierIonResponse * 100) / targetCoumpoundResponce
+
+
+
+
+ Gets a window in absolute % used to bound this test
+
+
+
+
+ Gets a value indicating whether the ratio test passed for this ion
+
+
+
+
+ Gets the mass which was tested
+
+
+
+
+ Gets the peak which was found in the IRC chromatogram
+
+
+
+
+ Read only access to mass options
+
+
+
+
+ Gets the tolerance value.
+
+ The tolerance.
+
+
+
+ Gets the units of precision.
+
+ The precision.
+
+
+
+ Gets the tolerance units.
+
+ The tolerance units.
+
+
+
+ Gets the tolerance string of the current m_toleranceUnits setting.
+
+ The tolerance string.
+
+
+
+ Get the tolerance window around a specific mass
+
+
+ Mass about which window is needed
+
+
+ The distance (in amu) from the mass which is within tolerance.
+ For example: myWindow=GetToleranceAtMass(myMass);
+ accept data between "myMass-myWindow" and "myMass+myWindow"
+
+
+
+
+ Read only access to chromatogram trace settings
+
+
+
+
+ Gets the type of trace to construct
+
+ see for more details
+
+
+
+ Gets a value indicating whether reference and exception peaks are included.
+ in this chromatogram trace
+
+
+
+
+ Gets the filter used in searching scans during trace build
+
+
+
+
+ Gets the delay in minutes.
+
+ Floating point delay in minutes
+
+
+
+ Gets the fragment mass for neutral fragment filters.
+
+ Floating point fragment mass for neutral fragment filters
+
+
+
+ Gets the mass ranges.
+
+
+ If is MassRange then mass range values are used to build trace.
+
+ Array of mass ranges
+
+
+
+ Gets the number of mass ranges.
+
+
+ If is MassRange then mass range values are used to build trace.
+
+ Numeric count of mass ranges
+
+
+
+ Gets a range value at 0-based index.
+
+
+ Use to find out the count of mass ranges.
+
+
+ If is MassRange then mass range values are used to build trace.
+
+
+ Index at which to retrieve the range
+
+
+ value at give index
+
+
+
+
+ Gets the Compound Names.
+
+
+
+
+ Read only access to peak chromatogram settings
+
+
+
+
+ Gets the scan filter.
+ This determines which scans are included in the chromatogram.
+
+
+
+
+ Gets the chromatogram settings.
+ This defines how data for a chromatogram point is constructed from a scan.
+
+
+
+
+ Gets the chromatogram settings
+ When there is a trace operator set,
+ This defines how data for a chromatogram point is constructed from a scan for the chromatogram
+ to be added or subtracted.
+
+
+
+
+ Gets the device type.
+ This defines which data stream within the raw file is used.
+
+
+
+
+ Gets the instrument index (starting from 1).
+ For example: "3" for the third UV detector.
+
+
+
+
+ Gets the trace operator.
+ If the operator is not "None" then a second chromatogram can be added to or subtracted from the first.
+
+
+
+
+ Readonly access to a peak
+
+
+
+
+ Gets a list of peaks that have been merged
+
+
+
+
+ Gets a value which determines how signal to noise has been calculated.
+ When the returns .Value, a numeric value can
+ be obtained from .
+
+
+
+
+ Gets the Signal To Noise ratio.
+ If is .Value, then this property returns the signal to noise ratio.
+ Otherwise this should not be used. Use .ToString() instead.
+
+
+
+
+ Gets the position, height, baseline at left limit
+
+
+
+
+ Gets the position, height, baseline at peak apex
+
+
+
+
+ Gets the position, height, baseline at right limit
+
+
+
+
+ Gets the integrated peak area
+
+
+
+
+ Gets the mass of the base peak from the apex scan.
+
+
+
+
+ Gets the mass to charge ratio of peak.
+
+
+
+
+ Gets the expected RT after making any RT adjustments.
+
+
+
+
+ Gets the noise measured in detected peak (for signal to noise calculation)
+
+
+
+
+ Gets a value indicating whether the "Noise" value was calculated by an RMS algorithm.
+
+
+
+
+ Gets the apex of the peak corresponds to a particular signal.
+ This gives the scan number of that signal.
+ If no scan numbers are sent with the peak detection signal, then
+ the scan number = "signal index at apex +1".
+ Note that there is no guarantee that left and right edges will always be exactly on a scan, even
+ though most peak detectors behave that way, so this is not added as a property of
+
+
+
+
+ Gets the name for this peak (for example, analyte name)
+
+
+
+
+ Gets the number of scans integrated
+
+
+
+
+ Gets the left edge type. This describes why the peak started. It is only set by the Genesis Detector.
+
+
+
+
+ Gets the right edge type. This describes why the peak ended. It is only set by the Genesis Detector.
+
+
+
+
+ Gets a value indicating whether the peak is Valid.
+ Peaks are assumed to have valid data, but may be marked invalid by
+ an integrator, if failing certain tests.
+ Invalid peaks should never be returned to a calling application
+ by an integrator algorithm.
+
+
+
+
+ Gets a value indicating whether this is saturated.
+
+ true when integration/mass range has saturation.
+
+
+
+ Gets a value indicating whether valley detection was used when detecting this peak.
+
+
+
+
+ Gets the direction of peak (Positive or Negative)
+
+
+
+
+ Gets the chi-squared error in fitting the peak.
+
+
+
+
+ Gets the calculated width, or 'gamma_r'.
+
+
+
+
+ Gets the calculated intensity, or 'gamma_A'.
+
+
+
+
+ Gets the calculated position, or 'gamma_t0'.
+
+
+
+
+ Gets the calculated 4th parameter for gamma (gamma_M) or EMG functions.
+
+
+
+
+ Gets the peak shape used in the fitting procedure.
+
+
+
+
+ Gets the number of data points used in the fit.
+
+
+
+
+ Gets purity of the peak
+
+
+
+
+ Gets the low time from peak purity calculation
+
+
+
+
+ Gets the high time from peak purity calculation
+
+
+
+
+ Read only access to a located peak
+
+
+
+
+ Gets the peak which best matches the location rules.
+
+
+
+
+ Gets how this peak was found.
+ The find results are only valid when this is set to "Spectrum".
+
+
+
+
+ Gets a value indicating whether RT adjustments could be made to the RT reference.
+ This flag is only meaningful when RT reference adjustments are made based on
+ a reference peak (see the locate class).
+ If a valid reference peak is supplied, then the expected RT can be adjusted based on the reference.
+ If no reference peak is found (a null peak) then the expected RT cannot be adjusted, and this flag will be false.
+
+
+
+
+ Gets the find results. When using spectrum LocateMethod this will contain the best matching peaks and find scores.
+
+
+
+
+ Read only access to smoothing settings
+
+
+
+
+ Gets the number of points for smoothing the chromatogram
+
+
+
+
+ Gets the number of times to repeat smoothing
+
+
+
+
+ Gets the envelope shape used by smoothing algorithm
+
+
+
+
+ Read only access to system suitability settings
+
+
+
+
+ Gets a value indicating whether resolution checks will be performed
+
+
+
+
+ Gets the Resolution Threshold.
+ The threshold value determines if a peak's resolution or ok or not.
+ The default value is 90%.
+ Resolution is defined as the ratio:
+ 100 × V/P
+ where:
+ V = depth of the Valley: the difference in intensity from the chromatogram at the apex of the target peak
+ to the lowest point in the valley between the target peak and a neighboring peak
+ P = Peak height: the height of the target peak, above the peak's baseline
+
+
+
+
+ Gets a value indicating whether peak symmetry checks are to be performed.
+ Symmetry is determined at a specified peak height
+ and is a measure of how even-sided a peak is
+ about a perpendicular dropped from its apex.
+
+
+
+
+ Gets the Peak Height at which symmetry is measured.
+ The default value is 50%. You can enter any value within the range 0% to 100%.
+
+
+
+
+ Gets the Symmetry Threshold.
+ The SOP defined Symmetry Threshold is > 70% at 50% peak height.
+ This represents a realistic practical tolerance for capillary GC data.
+ You can enter any value within the range 0% to 100%.
+ The default value is 80% at 50% peak height.
+ The algorithm determines symmetry at the SymmetryPeakHeight
+ For the purposes of the test, a peak is considered symmetrical if:
+ (Lesser of L and R) × 100 / (Greater of L and R) > Symmetry Threshold %
+ where:
+ L = the distance from the left side of the peak to
+ the perpendicular dropped from the peak apex
+ R = the distance from the right side of the peak to
+ the perpendicular dropped from the peak apex
+ Measurements of L and R are taken from the raw file without smoothing.
+
+
+
+
+ Gets a value indicating whether peak classification checks are to be run
+
+
+
+
+ Gets the Peak Height at which the suitability calculator tests the width of target peaks.
+ You can enter any value within the range 0% to 100%. The default value is 50%.
+
+
+
+
+ Gets the minimum peak width, at the specified peak height, for the peak width suitability test.
+ The default value is 1.8. You can set any value in the range 0 to 30 seconds.
+
+
+
+
+ Gets the maximum peak width, at the specified peak height, for the peak width suitability test.
+ The default value is 3.6. You can set any value in the range 0 to 30 seconds.
+
+
+
+
+ Gets the Peak Height at which the algorithm measures the tailing of target peaks.
+ The default SOP value is 10%. You can enter any value within the range 0% to 100%.
+
+
+
+
+ Gets the failure threshold for the tailing suitability test.
+ The default SOP defined failure threshold is %lt 2 at 10% peak height. The valid range is 1 to 50.
+ Tailing is calculated at the value defined in .
+ For the purposes of the test, a peak is considered to be excessively tailed if:
+
+ R / L > Failure Threshold %
+ where:
+ L = the distance from the left side of the peak to the perpendicular dropped from the peak apex
+ R = the distance from the right side of the peak to the perpendicular dropped from the peak apex
+ Measurements of L and R are taken from the raw file without smoothing.
+
+
+
+
+ Gets the Peak Height at which the algorithm measures column overloading.
+ The default SOP value is 50%. You can enter any value within the range 0% to 100%.
+
+
+
+
+ Gets the failure threshold value for the column overload suitability test.
+ The default SOP defined threshold is 1.5 at 50% peak height. The valid range is 1 to 20.
+ A peak is considered to be overloaded if:
+
+ L / R > Failure Threshold %
+ where:
+ L = the distance from the left side of the peak to the perpendicular dropped from the peak apex
+ R = the distance from the right side of the peak to the perpendicular dropped from the peak apex
+ Measurements of L and R are taken from the raw file without smoothing.
+
+
+
+
+ Gets the Number of Peak Widths for Noise Detection testing parameter for
+ the baseline clipping system suitability test.
+ The default value is 1.0 and the permitted range is 0.1 to 10.
+ A peak is considered to be baseline clipped if there is no signal
+ (zero intensity) on either side of the peak within the specified
+ number of peak widths. The range is truncated to the quantitation window
+ if the specified number of peak widths extends beyond the window’s edge.
+
+
+
+
+ Gets the threshold for system suitability testing
+ of the signal-to-noise ratio. The default value is 20 and the
+ permitted range is 1 to 500. The algorithm calculates the signal-to-noise ratio
+ within the quantitation window using only baseline signal.
+ Any extraneous, minor, detected peaks are excluded from the calculation.
+
+
+
+
+ Read only access to Ion ratio settings
+
+
+
+
+ Gets the time the retention time can vary from the expected retention time for the ion to still be considered confirmed.
+ Units: minutes
+ Bounds: 0.000 - 0.100
+
+
+
+
+ Gets a value indicating whether this Ion Ratio Confirmation is enabled.
+
+ true if enable; otherwise, false.
+
+
+
+ Gets the type of the windows.
+
+ The type of the windows.
+
+
+
+ Gets the qualifier ions.
+
+ The qualifier ions.
+
+
+
+ Method information for an Ion Ratio Test
+
+
+
+
+ Gets the Mass to be tested
+
+
+
+
+ Gets the Expected ratio
+ The ratio of the qualifier ion response to the quan ion response.
+ Range: 0 - 200%
+
+
+
+
+ Gets the Window to determine how accurate the match must be
+ The ratio must be +/- this percentage.
+
+
+
+
+ Read only access to Ion Ration Confirmation masses
+
+
+
+
+ Gets the smoothing data for the ion ratio peak calculation.
+
+ The smoothing points.
+
+
+
+ Gets the integration choice item. This is the only interaction
+ with m_integrationChoice. This class is only a place holder. Other
+ users of this class will fill this data item and use the settings.
+
+ The integration choice item.
+
+
+
+ Read only access to avalon setting
+
+
+
+
+ Count the number of timed (as opposed to initial) events
+
+
+ The number of timed events
+
+
+
+
+ Step past any initial events, and find the first time event
+
+
+ The node for the first timed event
+
+
+
+
+ Find the first event matching a specific event code
+
+
+ The code to search for
+
+
+ (returned) the number of the event in the list
+
+
+ The node containing the first event matching the supplied event code
+
+
+
+
+ Find the first event matching a specific event code and kind
+
+
+ Initial or timed version
+
+
+ The code to search for
+
+
+ (returned) the number of the event in the list
+
+
+ The node containing the first event matching the supplied event code
+
+
+
+
+ Gets the list of time events
+
+
+
+
+ read only access to Genesis Settings
+
+
+
+
+ Gets a value indicating whether to constrain the peak width of a detected peak (remove tailing)
+ width is then restricted by specifying a peak height threshold and a tailing factor.
+
+
+
+
+ Gets the minimum width that a peak is expected to have (seconds)
+ if valley detection is enabled. The property is expressed as a window.
+ With valley detection enabled,
+ any valley points nearer than [expected width]/2
+ to the top of the peak are ignored.
+ If a valley point is found outside the expected peak width,
+ Genesis terminates the peak at that point.
+ Genesis always terminates a peak when the signal reaches the baseline,
+ independent of the value set for the ExpectedPeakWidth.
+
+
+
+
+ Gets the percent of the total peak height (100%) that a signal needs to be above the baseline
+ before integration is turned on or off.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.0 to 100.0%.
+
+
+
+
+ Gets the Signal To Noise Threshold.
+ A peak is considered ended if the following condition is met:
+ height <= (BaseNoise * SignalToNoiseThreshold))
+ Where BaseNoise is the calculated noise on the fitted baseline,
+ and height is the height above baseline.
+
+
+
+
+ Gets the Tailing Factor.
+ This controls how Genesis integrates the tail of a peak.
+ This factor is the maximum ratio of the trailing edge to the leading side of a constrained peak.
+ This applies only when the is true.
+ The valid range is 0.5 through 9.0.
+
+
+
+
+ Gets a value indicating whether Valley Detection is performed. This parameter must be set to true when performing base to base integration
+
+
+
+
+ Gets the Peak Signal To Noise Ratio Cutoff.
+ The peak edge is set to values below this defined S/N.
+ This test assumes an edge of a peak is found when the baseline adjusted height of the edge is less than
+ the ratio of the baseline adjusted apex height and the peak S/N cutoff ratio.
+ If the S/N at the apex is 500 and the peak S/N cutoff value is 200,
+ Genesis defines the right and left edges of the peak when the S/N reaches a value less than 200.
+ Range: 50.0 to 10000.0.
+ Technical equation:if height < (1/PeakSignalToNoiseRatioCutoff)*height(apex) => valley here
+
+
+
+
+ Gets the percentage of the valley bottom
+ that the peak trace can rise above a baseline (before or after the peak).
+ If the trace exceeds RisePercent,
+ Genesis applies valley detection peak integration criteria.
+ This method drops a vertical line from the apex of the valley between unresolved
+ peaks to the baseline.
+ The intersection of the vertical line and the baseline defines the end of the first
+ peak and the beginning of the second peak.
+ This test is applied to both the left and right edges of the peak.
+ The RisePercent criteria is useful for integrating peaks with long tails.
+ Useful range: 0.1 to 50
+
+
+
+
+ Gets the S/N range is 1.0 to 100.0. for valley detection.
+ Technical equation:height(here +/- VALLEY_WIDTH) > ValleyDepth*SNR+height(here) => valley here
+
+
+
+
+ Gets a value indicating whether noise is calculated using RMS.
+ If not set, noise is calculated peak to peak.
+
+
+
+
+ Gets the Baseline Noise Tolerance which controls how the baseline is drawn in the noise data.
+ The higher the baseline noise tolerance value,
+ the higher the baseline is drawn through the noise data.
+ The valid range is 0.0 to 100.0
+
+
+
+
+ Gets the minimum number of scans that Genesis uses to calculate a baseline.
+ A larger number includes more data in determining an averaged baseline.
+ The valid range is 2 to 100.0.
+
+
+
+
+ Gets the Baseline Noise Rejection Factor
+ This factor controls the width of the RMS noise band above and below the peak detection baseline
+ and is applied to the raw RMS noise values to raise the effective RMS noise during peak detection.
+ The left and right peak boundaries are assigned above the noise and, therefore,
+ closer to the peak apex value in minutes.
+ This action effectively raises the peak integration baseline above the RMS noise level.
+ Range: 0.1 to 10.0.
+ Default: 2.0.
+
+
+
+
+ Gets the number of minutes between background scan recalculations.
+ Baseline is refitted each time this interval elapses.
+
+
+
+
+ Gets the Base (minimum) Signal To Noise Ratio.
+ Peaks are rejected if they have a lower signal to noise ratio than this.
+
+
+
+
+ Gets the lowest acceptable percentage of the largest peak.
+ Do not return peaks which are less than this % of the highest peak above baseline.
+
+
+
+
+ Gets a value indicating whether to enable filtering of peaks by relative signal height
+
+
+
+
+ Read only access to ICIS Settings
+
+
+
+
+ Gets the number of scans in the baseline window.
+ Each scan is checked to see if it should be considered a baseline scan.
+ This is determined by looking at a number of scans (BaselineWindow) before
+ and after the a data point. If it is the lowest point in the group it will be
+ marked as a "baseline" point.
+ Range: 1 - 500
+ Default: 40
+
+
+
+
+ Gets a noise level multiplier.
+ This determines the peak edge after the location of the possible peak,
+ allowing the peak to narrow or broaden without affecting the baseline.
+ Range: 1 - 500
+ Default multiplier: 5
+
+
+
+
+ Gets a noise level multiplier (a minimum S/N ratio).
+ This determines the potential peak signal threshold.
+ Range: 1 - 1000
+ Default multiplier: 10
+
+
+
+
+ Gets a value indicating whether to constrain the peak width of a detected peak (remove tailing)
+ width is then restricted by specifying a peak height threshold and a tailing factor.
+
+
+
+
+ Gets the percent of the total peak height (100%) that a signal needs to be above the baseline
+ before integration is turned on or off.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.0 to 100.0%.
+
+
+
+
+ Gets the Tailing Factor.
+ This controls how Genesis integrates the tail of a peak.
+ This factor is the maximum ratio of the trailing edge to the leading side of a constrained peak.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.5 through 9.0.
+
+
+
+
+ Gets the minimum number of scans required in a peak.
+ Range: 0 to 100.
+ Default: 3.
+
+
+
+
+ Gets the minimum separation in scans between the apexes of two potential peaks.
+ This is a criterion to determine if two peaks are resolved.
+ Enter a larger number in a noisy environment when the signal is bouncing around.
+ Range: 1 to 500.
+ Default: 10 scans.
+
+
+
+
+ Gets the number of scans on each side of the peak apex to be allowed.
+ Range: 0 to 100.
+ Default: 0 scans.
+ 0 specifies that all scans from peak-start to peak-end are to be included in the area integration.
+
+
+
+
+ Gets the number of scans past the peak endpoint to use in averaging the intensity.
+ Range: 0 to 100.
+ Default: 5 scans.
+
+
+
+
+ Gets a value indicating whether noise is calculated using an RMS method
+
+
+
+
+ Gets an enum which indicates how the ICIS peak detector determines which signals are noise.
+ The selected points can determine a noise level, or be fed into an RMS calculator,
+ depending on the RMS setting.
+
+
+
+
+ Read only access to integration settings
+
+
+
+
+ Gets Settings for Avalon integrator
+
+
+
+
+ Gets Settings for genesis integrator
+
+
+
+
+ Gets Settings for Icis integrator
+
+
+
+
+ Gets the choice of integrator to use
+
+
+
+
+ Read only access to Peak Purity Settings
+
+
+
+
+ Gets the % of the detected baseline for which we want to compute PeakPurity
+
+
+
+
+ Gets a value indicating whether we want to compute Peak Purity
+
+
+
+
+ Gets a value indicating whether we want to use
+ the enclosed wavelength range, not the total scan
+
+
+
+
+ Gets the high limit of the scan over which to compute
+
+
+
+
+ Gets the low limit of the scan over which to compute
+
+
+
+
+ Gets the max of a scan must be greater than this to be included
+
+
+
+
+ Read only access to Peak Location Settings
+
+
+
+
+ Gets a value indicating whether the retention time should be adjusted based on a reference peak.
+
+
+
+
+ Gets the expected time, as in the method (before any adjustments)
+
+
+
+
+ Gets a value which determine how a single peak is found from the list of
+ returned peaks from integrating the chromatogram.
+ For example: Highest peak in time window.
+
+
+
+
+ Gets the window, centered around the peak, in minutes.
+ The located peak must be within a window of expected +/- width.
+
+
+
+
+ Gets the baseline and noise window.
+ This setting is used to restrict the chromatogram.
+ Only scans within the range "adjusted expected RT" +/- Window are processed.
+ For example: a 1 minute window setting implies 2 minutes of data.
+
+
+
+
+ Gets the settings for finding a peak based on spectral fit
+
+
+
+
+ Gets the signal to noise rejection parameter for peaks
+
+
+
+
+ Read only access to find results
+
+
+
+
+ Gets the scan number for this result
+
+
+
+
+ Gets the scan number predicted for this peak
+
+
+
+
+ Gets the retention time of the peak which has been found
+
+
+
+
+ Gets the score based on both forward and reverse matching factors
+
+
+
+
+ Gets score from forward search
+
+
+
+
+ Gets score from reverse search
+
+
+
+
+ Gets the intensity of the supplied chromatogram at this result
+
+
+
+
+ Gets score from Match algorithm.
+
+
+
+
+ Gets the peak found for this result
+
+
+
+
+ Read only access to
+
+
+
+
+ Gets the forward threshold for find algorithm.
+
+
+
+
+ Gets the match threshold for find algorithm
+
+
+
+
+ Gets the reverse threshold for find algorithm
+
+
+
+
+ Gets the spec points.
+
+ The spec points.
+
+
+
+ Get a copy of the find spectrum
+
+
+ The spectrum to find
+
+
+
+
+ Read only access to instrument data
+
+
+
+
+ Gets or sets the name of the instrument
+
+
+
+
+ Gets or sets the model of the instrument
+
+
+
+
+ Gets or sets the serial number of the instrument
+
+
+
+
+ Gets or sets the software version of the instrument
+
+
+
+
+ Gets or sets the hardware version of the instrument
+
+
+
+
+ Gets or sets the names of the channels, for UV or analog data.
+
+
+
+
+ Gets or sets the units of the Signal, for UV or analog
+
+
+
+
+ Gets or sets the flags.
+ The purpose of this field is to contain flags separated by ';' that
+ denote experiment information, etc. For example, if a file is acquired
+ under instrument control based on an experiment protocol like an ion
+ mapping experiment, an appropriate flag can be set here.
+ Legacy LCQ MS flags:
+ 1. TIM - total ion map
+ 2. NLM - neutral loss map
+ 3. PIM - parent ion map
+ 4. DDZMAP - data dependent zoom map
+
+
+
+
+ Gets or sets the device suggested label of X axis
+
+
+
+
+ Gets or sets the device suggested label of Y axis (name for units of data, such as "°C")
+
+
+
+
+ Gets or sets a value indicating whether any other properties in this interface contain valid data.
+ This is to support legacy files only. Early versions of the raw file did not have "instrument data",
+ Data migration to current formats is automatic in raw file reading tools,
+ leading to a data structure being returned to a caller with "all defaults" and "empty strings"
+ plus the IsValid set to false.
+
+
+
+
+ The filter rule.
+ A scan filter has a list of rules to apply.
+
+
+
+
+ Apply the meta filter.
+
+
+
+
+ Apply the data dependent On filter.
+
+
+
+
+ Apply the data dependent Off filter.
+
+
+
+
+ Apply the supplemental activation filter.
+
+
+
+
+ Apply the multi state activation filter.
+
+
+
+
+ Apply the wideband filter.
+
+
+
+
+ Apply the polarity filter.
+
+
+
+
+ Apply the scan data filter.
+
+
+
+
+ Apply the ionization mode filter.
+
+
+
+
+ Apply the corona filter.
+
+
+
+
+ Apply the lock filter.
+
+
+
+
+ Apply the field free region filter.
+
+
+
+
+ Apply the ultra filter.
+
+
+
+
+ Apply the enhanced filter.
+
+
+
+
+ Apply the parameter a filter.
+
+
+
+
+ Apply the parameter b filter.
+
+
+
+
+ Apply the parameter f filter.
+
+
+
+
+ Apply the multi notch filter.
+
+
+
+
+ Apply the multiple photon dissociation filter.
+
+
+
+
+ Apply the parameter v filter.
+
+
+
+
+ Apply the parameter R filter.
+
+
+
+
+ Apply the electron capture dissociation filter.
+
+
+
+
+ Apply the photo ionization filter.
+
+
+
+
+ Apply the source fragmentation filter.
+
+
+
+
+ Apply the source fragmentation type filter.
+
+
+
+
+ Apply the compensation voltage filter.
+
+
+
+
+ Apply the compensation volt type filter.
+
+
+
+
+ Apply the detector filter.
+
+
+
+
+ Apply the mass analyzer type filter.
+
+
+
+
+ Apply the sector scan filter.
+
+
+
+
+ Apply the turbo scan filter.
+
+
+
+
+ Apply the scan mode filter.
+
+
+
+
+ Apply the multiplex filter.
+
+
+
+
+ Apply The MS order filter.
+
+
+
+
+ Apply the scan type index filter.
+
+
+
+
+ Apply the accurate mass filter.
+
+
+
+
+ For advanced data LT/FT formats only. It currently uses for exporting mass spec data to raw file.
+ This will typically be used from an application.
+
+
+
+
+ Gets the noise data
+
+
+
+
+ Gets the frequencies.
+ The values are for computing mass from frequency during exporting mass spec on compressing.
+
+
+
+
+ Gets the centroid data (label peaks) information. Only FT type packets have label peaks, others no.
+
+
+
+
+ Provides methods to write Analog devices data.
+ Note: The following functions should be called before acquisition begins:
+ 1. Write Instrument Info
+ 2. Write Instrument Expected Run Time
+ 3. Write Status Log Header
+ If caller is not intended to use the status log data, pass a null argument or zero length array.
+ ex. WriteStatusLogHeader(null) or WriteStatusLogHeader(new IHeaderItem[0])
+
+
+
+
+ Writes the Analog instrument data and index into the disk. This is the
+ simplest format of data we write to a raw file.
+
+ The Analog instrument data.
+ Index of the Analog instrument scan (scan header).
+ True if scan data and index are written to disk successfully, False otherwise
+
+
+
+ Defines the instrument data index for analog type devices
+
+
+
+
+ Gets the number of channels.
+
+
+
+
+ The auto sampler tray shape.
+
+
+
+
+ Vials or wells are arranged in a rectangle on the tray
+
+
+
+
+ Vials are arranged in a circle.
+
+
+
+
+ Vials are staggered on odd numbered positions on the tray.
+
+
+
+
+ Vials are staggered on even numbered positions on the tray.
+
+
+
+
+ The layout is unknown.
+
+
+
+
+ The layout information is invalid. No other tray layout data should be displayed.
+
+
+
+
+ The AutoSamplerInformation interface.
+
+
+
+
+ Gets or sets the tray index, -1 for "not recorded"
+
+
+
+
+ Gets or sets the vial index, -1 for "not recorded"
+
+
+
+
+ Gets or sets the number of vials (or wells) per tray.
+ -1 for "not recorded"
+
+
+
+
+ Gets or sets the number of vials (or wells) per tray, across the tray.
+ -1 for "not recorded"
+
+
+
+
+ Gets or sets the number of vials (or wells) per tray, down the tray.
+ -1 for "not recorded"
+
+
+
+
+ Gets or sets the shape.
+ If this property returns "Invalid", no other values in this object
+ contain usable information.
+ Invalid data can occur for older raw file formats, before auto sampler data was added.
+
+
+
+
+ Gets the tray shape as a string
+
+
+
+
+ Gets or sets the tray name.
+
+
+
+
+ Provides methods to write common device information
+ 1. Instrument information
+ 2. Instrument expected run time
+ 3. Status log header
+ 4. Status log
+ 5. Error log
+
+
+
+
+ Writes the instrument comments.
+ These are device run header fields - comment1 and comment2. They are part of the Chromatogram view title (Sample Name and Comment).
+ These fields can be set only once.
+
+ The comment1 for "Sample Name" in Chromatogram view title (max 39 chars).
+ The comment2 for "Comment" in Chromatogram view title (max 63 chars).
+ True if comment1 and comment2 are written to disk successfully, false otherwise.
+
+
+
+ Write the Instrument ID info to the raw data file. The
+ Instrument ID must be written to the raw file before any data can be
+ acquired.
+
+ The instrument identifier.
+ True if instrument id is written to disk successfully, False otherwise
+
+
+
+ Write the expected run time. All scanning devices must do this so
+ that the real-time update can display a sensible Axis.
+ A device of type "Other" has no scans, and so this
+ is optional information in that case.
+
+ The run time.
+ True if expected run time is written to disk successfully, False otherwise
+
+
+
+ Write the Status Log Header (format) info to the raw data file.
+ If caller is not intended to use the status log data, pass a null argument or zero length array.
+ ex. WriteStatusLogHeader(null) or WriteStatusLogHeader(new IHeaderItem[0])
+
+ The log header.
+ True if status log header is written to disk successfully, False otherwise
+
+
+
+ If any Status Log details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the byte array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The retention time.
+ The status data stores in byte array.
+ True if status log entry is written to disk successfully, False otherwise
+
+
+
+ If any Status Log details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the byte array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The retention time.
+ The data stores in object array.
+ True if status log entry is written to disk successfully, False otherwise
+
+
+
+ Write an error log to the raw data file.
+
+ The retention time.
+ The error log.
+ True if error log entry is written to disk successfully, False otherwise
+
+
+
+ Defines the base format for a instrument data index.
+
+
+
+
+ Gets the start time.
+
+
+
+
+ Gets the tic.
+
+
+
+
+ Read only access to calibration curve
+
+
+
+
+ Gets the fitted line
+
+
+
+
+ Gets the included replicates from current sequence data
+
+
+
+
+ Gets the excluded replicates from current sequence data
+
+
+
+
+ Gets the included replicates from previously acquired data
+
+
+
+
+ Gets the excluded replicates from previously acquired data
+
+
+
+
+ Gets the RSquared value from the regression calculation (-1 if not valid)
+
+
+
+
+ Gets the equation text from the regression calculation.
+
+
+
+
+ Gets the percentage coefficient of variance from the first calibration level.
+
+
+
+
+ Gets the percentage relative standard deviation from the first calibration level.
+
+
+
+
+ Gets a value indicating whether the fitted line is empty
+ The curve data needs to be plotted as appropriate for
+ an internal standard: Centered on the set of points,
+
+
+
+
+ Read only access to a calibration curve point
+
+
+
+
+ Gets the amount (x) on calibration curve
+
+
+
+
+ Gets the response (y) for the amount
+
+
+
+
+ Gets the a key to identify this point. For example, a file name.
+
+
+
+
+ Gets the a second key to identify this point. For example, a compound name.
+
+
+
+
+ Read only access to centroid stream
+
+
+
+
+ Gets the scan Number
+
+
+
+
+ Gets the number of centroids
+
+
+
+
+ Gets the coefficients count.
+
+
+
+
+ Gets the calibration Coefficients
+
+
+
+
+ Gets resolution of each peak
+
+
+
+
+ Gets the list of baseline at each peak
+
+
+
+
+ Gets the list of noise level near peak
+
+
+
+
+ Gets the list of charge calculated for peak
+
+
+
+
+ Gets the flags for the peaks (such as reference)
+
+
+
+
+ Get the data as one object per peaks.
+ Note: This may copy data into an array on each call, and should therefore
+ not be called multiple times on the same scan, for performance reasons.
+
+
+ The array of .
+
+
+
+
+ The ChromatogramBatchGenerator interface.
+ Defines a way for an application to request multiple chromatograms.
+
+
+
+
+ Generate chromatograms, returning the in progress tasks,
+ which are processing the chromatograms.
+ This permits async generation of chromatograms.
+ This method returns after all required scan data has been
+ read, and all work to process the chromatograms is queued.
+
+
+ The chromatogram deliveries.
+ These define the chromatogram settings, and a callback which will occur
+ as soon as the data for that chromatogram is ready.
+
+
+ The in progress tasks. Assuming the result is saved as "taskList" Use "Task.WaitAll(taskList)"
+ to wait for processing of these chromatograms to complete.
+
+
+
+
+ Gets or sets a value indicating whether the chromatograms have a strict time range.
+ By default, the retention time range of a chromatogram is considered as a "display range",
+ such that the first value before the range, and the first value after the range is included
+ in the data, permitting a continuous line, if plotted, to the edge of the time window.
+ If this property is true, then only points which are within the supplied RT range are returned.
+
+
+
+
+ Gets or sets the number of consumer threads to make.
+ In other words: The maximum number of chromatograms the caller will
+ be given to process in parallel.
+ Default: Environment.ProcessorCount
+
+
+
+
+ Gets or sets the maximum work backlog, which controls how much
+ work is kept in the pipeline, waiting for consumer threads to become available.
+ Suggested default: 10.
+ Setting a larger value will cause data reading from a raw file to be completed earlier,
+ but at the expense of more memory overheads.
+
+
+
+
+ Gets or sets the scan reader.
+ Given a scan number,
+ Return the spectral data and scan event
+
+
+
+
+ Gets or sets the parallel scan reader.
+ If null, then ScanReader will always be used.
+ Given a scan number,
+ Return the spectral data and scan event
+
+
+
+
+ Gets or sets the available scans.
+
+
+
+
+ Gets or sets a value indicating whether accurate precursor mass testing is done.
+ If not: a tolerance of 0.4 AMU is used.
+ All data dependent tests are done with 0.4 AMU tolerance.
+
+
+
+
+ Gets or sets the precision (decimal places).
+ If set to "-1" (default) then the precision values must be
+ set individually (in the scan selectors)
+
+
+
+
+ Gets or sets the scan events interface, which can be used to optimize filtering, if provided.
+ This interface may be obtained from IRawDataPlus (ScanEvents property).
+
+
+
+
+ Interface to return base peak data with a chromatogram.
+
+
+
+
+ Gets Base Peak masses for each chromatogram
+
+
+
+
+ Defines data read for a set of chromatograms
+ First index = chromatogram number.
+ Second index = data value within chromatogram.
+
+
+
+
+ Gets Times in minutes for each chromatogram
+
+
+
+
+ Gets Scan numbers for data points in each chromatogram
+
+
+
+
+ Gets Intensities for each chromatogram
+
+
+
+
+ Gets The number of chromatograms in this object
+
+
+
+
+ Extended chromatogram data: Includes base peak information.
+ For PDA data: Base value is "Wavelength of max" for a "spectrum max" chromatogram.
+
+
+
+
+ The ChromatogramDelivery interface.
+ This permits a caller to request a chromatogram,
+ and have a method called, when the chromatogram is ready.
+
+
+
+
+ Gets the request. Parameters for the chromatogram.
+
+
+
+
+ The method to call when the chromatogram is generated.
+
+
+ The generated chromatogram.
+
+
+
+
+ Defines how data for a given mass range is included
+ in a chromatogram.
+
+
+
+
+ Gets or sets a value indicating whether all data
+ in the scan is used, or just a mass range.
+
+
+
+
+ Gets or sets the scale.
+ This can be 1 to "add data in a mass range" or
+ -1 to "subtract data a mass range",
+ or any other value to apply scaling to a range.
+
+
+
+
+ Gets or sets the mass range.
+ If an application has a center mass +/ tolerance,
+ then it a setter in a derived object could be used to convert to
+ a range of mass.
+
+
+
+
+ Gets or sets the rule for how a chromatogram point is created from a mass range.
+
+
+
+
+ Find the data for one scan.
+
+
+ The scan, including header and scan event.
+
+
+ The chromatogram point value for this scan.
+
+
+
+
+ The chromatogram point mode.
+ How a chromatogram point is calculated from data in a mass range.
+
+
+
+
+ Sum all intensities in a mass range
+
+
+
+
+ Get the max intensity in a mass range
+
+
+
+
+ Get the mass of the largest intensity value in the mass range
+
+
+
+
+ Neutral fragment:
+ When the low mass value is negative:
+ This scan's Parent mass is added to both low and high, to make a mass range.
+ which will represent "parent - a given neutral fragment".
+ When the low mass value if positive, the mass range is not adjusted, as this has been
+ already calculated as "filter mass - neutral fragment mass".
+ Typically: This can be used with a filter of "MS2", to get
+ a neutral fragment chromatogram, for all MS/MS data which has a given fragment.
+
+
+
+
+ The ChromatogramRequest interface.
+ Defines how chromatogram data is created from a set of scans
+
+
+
+
+ Gets a value indicating whether this point type needs "scan data".
+ This value may not change, but the current compiler does not permit a "read-only" tag.
+ If all request for one file return false, the code can save time by never reading scan data.
+ In any request that returns "false" from this, the ValueForScan should not access the "Data" property of the supplied scan.
+
+
+
+
+ Gets the retention time range.
+ Only scans within this range are included.
+
+
+
+
+ Gets the scan selector, which determines if a scan is in the chromatogram, or not
+
+
+
+
+ Gets the value for scan.
+ This function returns the chromatogram value for a scan.
+ For example: An XIC from the scan data.
+ Can use values from the scan data or index.
+
+
+ The scan.
+
+
+ The chromatogram value of this scan.
+
+
+
+
+ Settings required to read a chromatogram from a data stream
+
+
+
+
+ Gets the detector delay
+
+
+
+
+ Gets A text definition of the scan filter
+
+
+
+
+ Gets the Neutral fragment mass
+
+
+
+
+ Gets a value indicating whether to Include reference peaks in the chromatogram
+
+
+
+
+ Gets the Number of mass ranges
+
+
+
+
+ Gets the Mass ranges
+
+
+
+
+ Gets a value which determines where the chromatogram comes from (TIC, mass range) etc.
+
+
+
+
+ The Chromatogram Settings Extended interface, for platform 3.0 raw files.
+
+
+
+
+ Gets or sets the compound names.
+
+
+
+
+ Read-only access to a chromatogram
+
+
+
+
+ Gets the times.
+
+ The signal times.
+
+
+
+ Gets the intensities.
+
+ The signal intensities.
+
+
+
+ Gets the signal scans.
+
+ The signal scans.
+
+
+
+ Gets the base peak masses.
+
+ The base peak masses.
+
+
+
+ Gets the time at the end of the signal
+
+
+
+
+ Gets the time at the start of the signal
+
+
+
+
+ Gets the number of points in the signal
+
+
+
+
+ Gets a value indicating whether there is any base peak data in this signal
+
+
+
+
+ Test if this is valid data (arrays are same length)
+
+ True if this is valid data
+
+
+
+ This inteface extends the functions of "auto filter".
+ methods are called to construct a list of filters based on internal data
+ of the class which implements this. Inital data is, for example,
+ the results of "auto filter" on a raw file.
+ The list can be searched for "items matching a given filter rule".
+
+
+
+
+ Gets the results of the enhanced auto filter.
+ these results are initailly empty, and et extended
+ as "Add" methods are called.
+
+
+
+
+ Searches for the activation types used.
+ Adds "Activation type" to the list, for MS/MS data (MS2 or above).
+ This can find CID, HCD, ETD, UVPD
+
+
+
+
+ Adds the "empty filter" to the list.
+
+
+
+
+ Adds "ms order filters" to the list
+ this includes ms, ms2 etc up to ms5
+ if any ms/ms is found msn is also added.
+
+ When true (default): if any ms/ms is found msn is also added.
+
+
+
+ Add all unique filter groups (auto filter).
+
+ If this is not empty: The filters must all contan this sub-filter.
+ For example "d" for "only return data dependent"
+
+
+
+ Merge filters which differ only by CV.
+ Because there is no speciic CV value, the merged filters will not show
+ the code CV.
+
+
+
+
+ Gets or sets a value indicating whether compound names shoud be included.
+ This only has an effect if the "Name" property is set for at least one filter.
+ Results which have names are shown in sorted (alpha) order.
+ Any other filters, which do not have a name, are then added after the
+ named items, in the original "auto filter" order.
+ If a name appaers for more than one filter, then an entry is created
+ which only contains a compound name, such that a chromatogram
+ can be created based on all data identified for that compound.
+ Note that this "name only" list is excluded when a "unique filter list" is
+ requested with a specific subset filter.
+
+
+
+
+ Gets or sets a separator which appears between a compound name and a filter.
+
+
+
+
+ The ErrorLogEntry interface.
+
+
+
+
+ Gets the retention time.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Additional data about a scan.
+ This data may include Transients (raw detector data) and other instrument specific data blocks.
+
+
+
+
+ Gets the header for the extended data. The format of this is instrument specific.
+
+
+
+
+ Gets the transient data for this scan, in an instrument specific (unknown) format. This may be very large.
+ Fo performance reasons: Applications should not attempt to access this, unless needed by an algorithm.
+ Note that this is not commonly included in raw files.
+
+
+
+
+ Gets additional data blocks for a scan.
+
+
+
+
+ Defines a block of instrument specific data
+
+
+
+
+ Get the block header, which needs to be decoded as defined by the instrument.
+ This will identify the meaning of the data.
+
+
+
+
+ Gets the data within this block
+
+
+
+
+ Defines a transient segment for a scan
+
+
+
+
+ Gets the transient segment header, which need to be used by instrument specific code.
+ This header is defined as "32 1 bit flags" and not a countable (integer) value.
+
+
+
+
+ Gets the transient data, as defined for the instrument.
+
+
+
+
+ Interface to retrieve error messages, which have been
+ trapped by the underlying file reader.
+
+
+
+
+ Gets a value indicating whether this file has detected an error.
+ If this is false: Other error properties in this interface have no meaning.
+ Applications should not continue with processing data from any file which indicates an error.
+
+
+
+
+ Gets a value indicating whether this file has detected a warning.
+ If this is false: Other warning properties in this interface have no meaning.
+
+
+
+
+ Gets the error code number.
+ Typically this is a windows system error number.
+ The lowest valid windows error is: 0x00030200
+ Errors detected within our files will have codes below 100.
+
+
+
+
+ Gets the error message.
+ For "unknown exceptions" this may include a stack trace.
+
+
+
+
+ Gets the warning message.
+
+
+
+
+ RawFile Classification
+
+
+
+
+ The indeterminate.
+
+
+
+
+ The standard raw.
+
+
+
+
+ The master scan number raw.
+
+
+
+
+ The type of the file.
+
+
+
+
+ The unknown file type
+
+
+
+
+ The experiment method
+
+
+
+
+ The sample list (sequence)
+
+
+
+
+ The processing method
+
+
+
+
+ The raw file
+
+
+
+
+ The tune method
+
+
+
+
+ The results file
+
+
+
+
+ The Quan file
+
+
+
+
+ The calibration file
+
+
+
+
+ The instrument method file
+
+
+
+
+ The XQN file
+
+
+
+
+ The layout file (may be combined with other file type)
+
+
+
+
+ The method editor layout
+
+
+
+
+ The sample list editor layout
+
+
+
+
+ The processing method edit layout
+
+
+
+
+ The Qual Browser layout
+
+
+
+
+ The tune layout
+
+
+
+
+ The results layout
+
+
+
+
+ Information available from Xcalibur file headers..
+
+
+
+
+ Gets or sets the creator Id. The creator Id is the full text user name of the user
+ when the file is created.
+
+
+
+
+ Gets or sets the creator Login name.
+ The creator login name is the user name of the user
+ when the file is created, as entered at the "user name, password" screen in windows.
+
+
+
+
+ Gets or sets the creator Id. The creator Id is the full text user name of the user
+ when the file is created.
+
+
+
+
+ Gets or sets the creator Login name.
+ The creator login name is the user name of the user
+ when the file is created, as entered at the "user name, password" screen in windows.
+
+
+
+
+ Gets or sets the type of the file.
+ If the file is not recognized, the value of the FileType will be set to "Not Supported"
+
+
+
+
+ Gets or sets the file format revision
+ Note: this does not refer to revisions of the content.
+ It defines revisions of the binary files structure.
+
+
+
+
+ Gets or sets the file creation date.
+
+
+
+
+ Gets or sets the modified date.
+ File changed audit information (most recent change)
+
+
+ The modified date.
+
+
+
+
+ Gets or sets the number of times modified.
+
+
+ The number of times the file has been modified.
+
+
+
+
+ Gets or sets the number of times calibrated.
+
+
+ The number of times calibrated.
+
+
+
+
+ Gets or sets the file description.
+ User's narrative description of the file, 512 unicode characters (1024 bytes)
+
+
+ The file description.
+
+
+
+
+ Subset of the IFileHeader interface, it's for restricting
+ changes to the file header object during raw file creation.
+ This will prevent errors, such as changing the FileType to other
+ instead of RawFile and Revision # to 0 instead of 66 (file struct version).
+ This would allow application to change the creator name/id and file
+ description values, instead of the default value.
+ The current default values for:
+ File description = string.Empty
+ WhoCreatedId = Environment.UserName (who is currently logged on to the Wins)
+ WhoCreatedLogon = Environment.UserName
+
+
+
+
+ Gets the creator Id. The creator Id is the full text user name of the user
+ when the file is created.
+
+
+
+
+ Gets the creator Login name.
+ The creator login name is the user name of the user
+ when the file is created, as entered at the "user name, password" screen in windows.
+
+
+
+
+ Gets the file description.
+ User's narrative description of the file, 512 unicode characters (1024 bytes)
+
+
+ The file description.
+
+
+
+
+ The FilteredScanIterator interface.
+
+
+
+
+ Gets the string form of the filter which was used to construct this iterator
+
+
+
+
+ Gets the previous scan number, which matches the filter.
+ Returns 0 if there is no open file.
+ If there are no additional scans matching the filter, returns -1.
+
+
+
+
+ Gets the next scan number, which matches the filter.
+ Returns 0 if there is no open file.
+ If there are no additional scans matching the filter, returns -1.
+
+
+
+
+ Sets the iterator's position.
+ This scan number does not have to match the given filter.
+ This can be used to find next or previous matching scan, from a given scan.
+ Assuming the first scan is 1, a value of 0 will reset the iterator to
+ start of file.
+ A value of "Last scan number +1" can be used to reset to
+ iterate backwards from the end of the file.
+
+
+
+
+ Gets a value indicating whether there are possible previous scans before the current scan.
+ This does not guarantee that another matching scan exists. It simply tests that the current iterator position
+ is not the first scan in the file.
+
+
+
+
+ Gets a value indicating whether there are possible next scans after the current scan.
+ This does not guarantee that another matching scan exists. It simply tests that the current iterator position
+ is not the last scan in the file.
+
+
+
+
+ Defines a combination of plain text and interface defintions of filters.
+
+
+
+
+ Gets a Standard (parsable) text form of the filter. This does not include any compound names.
+
+
+
+
+ Gets the scan filer (as accessable fields)
+
+
+
+
+ Gets a value indicating whether this object only has a compound name,
+ and does not have any filter text or filter interface defined.
+ When this is set: Only the Name property should be used.
+
+
+
+
+ Gets the compound name
+
+
+
+
+ Gets a string which combines the compound name and the filter text.
+
+
+
+
+ Defines the format of a log entry, including label (name of the field), data type, and numeric formatting.
+
+
+
+
+ Gets or sets the data type for the header item.
+ ex. Char, TrueFalse, YesNo, UShort, Long, etc.
+
+
+ The type of the data.
+
+
+
+
+ Gets or sets the header label.
+
+
+ The label.
+
+
+
+
+ Gets or sets the precision, if the data type is float or double,
+ or string length of string fields.
+
+
+ The string length or precision.
+
+
+
+
+ Gets or sets a value indicating whether a number should be displayed in scientific notation.
+
+
+ true if this instance is scientific notation; otherwise, false.
+
+
+
+
+ Interfaces to read an instrument method from a raw file and to export it
+ to a file.
+
+
+
+
+ Export the instrument method to a file.
+ Because of the many potential issues with this, use with care, especially if
+ adding to a customer workflow.
+ Try catch should be used with this method.
+ Not all implementations may support this (some may throw NotImplementedException).
+ .Net exceptions may be thrown, for example if the path is not valid.
+ Not all instrument methods can be exported, depending on raw file version, and how
+ the file was acquired. If the "instrument method file name" is not present in the sample information,
+ then the exported data may not be a complete method file.
+ Not all exported files can be read by an instrument method editor.
+ Instrument method editors may only be able to open methods when the exact same list
+ of instruments is configured.
+ Code using this feature should handle all cases.
+
+
+ The output instrument method file path.
+
+
+ Force over write. If true, and file already exists, attempt to delete existing file first.
+ If false: UnauthorizedAccessException will occur if there is an existing read only file.
+
+ True if the file was saved. False, if no file was saved, for example,
+ because there is no instrument method saved in this raw file.
+
+
+
+ Gets names of all instruments, which have a method stored in the raw file's copy of the instrument method file.
+ These names are "Device internal names" which map to storage names within
+ an instrument method, and other instrument data (such as registry keys).
+ Use "GetAllInstrumentFriendlyNamesFromInstrumentMethod" to get display names for instruments.
+
+
+ The instrument names.
+
+
+
+
+ Gets a value indicating whether the underlying raw file has instrument method.
+
+
+
+
+ Gets the errors.
+
+
+
+
+ Gets a value indicating whether any error occurred at open/read the raw file.
+
+
+
+
+ Interface to read an instrument method (meth) file.
+
+
+
+
+ Gets the file header for the method
+
+
+
+
+ Gets the data for of all devices in this method.
+ Keys are the registered device names.
+ A method contains only the "registered device name"
+ which may not be the same as the "device display name" (product name).
+ Instrument methods do not contain device product names.
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets a value indicating whether the last file operation caused a recorded error.
+ If so, there may be additional information in FileError
+
+
+
+
+
+ Gets a value indicating whether a file was successfully opened.
+ Inspect "FileError" when false
+
+
+
+
+ This interface permits access data for a particular instrument in an instrument method.
+
+
+
+
+ Gets the plain text form of an instrument method
+
+
+
+
+ Gets all streams for this instrument, apart from the "Text" stream.
+ Typically an instrument has a stream called "Data" containing the method in binary or XML.
+ Other streams (private to the instrument) may also be created.
+
+
+
+
+ Provides methods to create/update an instrument method file.
+ Instrument method file contains one or more device methods. Each device creates
+ create its own storage (here's called Device Method) for storing device specific information.
+ ----
+ Existing layout of an instrument method file.
+ Instrument Method File
+ ---
+ --- Device Methods
+ ---
+ SIIXcalibur (IDeviceMethod)
+ Data (Method stream - byte array)
+ Text (string)
+ SimulationMS (IDeviceMethod)
+ Data (Method stream - byte array)
+ Text (string)
+ TNG-Calcium (IDeviceMethod)
+ Data (Method stream - byte array)
+ Text (string)
+ Header (Method stream - byte array)
+ ----
+ Example of creating an instrument method file:
+ 1. Create a new instrument method file with an input file name (The writer will create a "Named" in-memory instrument method file.)
+ writer = InstrumentMethodWriterFactory.CreateInstrumentMethodWriter("NewInstrumentMethodFileName.meth");
+ --
+ writer.UpdateFileHeaderDescription("A new instrument method file.");
+ --
+ -- Calls the "GetDevices" method to get an empty list of devices (a dictionary object).
+ -- Once you receive the list, you can start adding new device method.
+ devices = writer.GetDevices();
+ --
+ -- Create a device method object (IDeviceMethod)
+ newDeviceMethod = DeviceMethodFactory.CreateDeviceMethod();
+ --
+ -- Adds method streams - Text, Data, etc.
+ -- Call the "GetStreamBytes" method to get an empty list of streams (a dictionary object).
+ -- Once you receive the list, you can start adding new method stream.
+ --
+ newStreams = newDeviceMethod.GetStreamBytes();
+ newStreams.Add("Text", stream value in byte array);
+ newStreams["Data"] = stream value in byte array;
+ --
+ -- Here's a shortcut for adding a "Text" stream, use the "MethodText" property.
+ newDeviceMethod.MethodText = "Test string.";
+ --
+ -- adds the newly created device method to the list of devices.
+ devices.Add(name, newDeviceMethod);
+ --
+ -- persists the data to a file. The file name is given during the writer creation.
+ writer.Save();
+
+
+
+
+ Gets a value indicating whether this instrument method file has detected an error.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets the instrument method file name.
+
+
+
+
+ Gets the file header for the instrument method file
+
+
+
+
+ Updates the file header field - "Description".
+
+ The description.
+
+
+
+ Update the instrument method file header with the file header values passed in.
+ Only updates object values in memory, does not write to disk.
+ A default FileHeader is created with every new writer instance.
+ Possible to only update creator and user values.
+
+
+ The file header object with values to use.
+
+
+
+
+ Get the list of device methods which are currently defined in this instrument method.
+ Returns an empty list, if this is a newly created instrument method.
+ ---
+ In order to add/update device method, caller should first call this to get the list of devices.
+ Once you've the list, you can start adding a new device method or editing/removing an existing device method.
+
+ The list of device methods.
+
+
+
+ Saves the instrument methods to the file.
+ If this is an "Unnamed" instrument method writer, caller should use "SaveAs" method with the output
+ file name; otherwise ArgumentNullException will be thrown.
+
+ True if save successfully; otherwise false.
+ name;@The name cannot be empty.
+
+
+
+ Save this instrument methods to a file.
+ It should overwrite the instrument methods file if the file exists; otherwise, a
+ new file should be created.
+
+ File name of the instrument method.
+ True if save successfully; otherwise false.
+ name;@The name cannot be empty.
+
+
+
+ Provides functions to create/update a device method.
+ The device methods are for each configured instrument and stored in instrument method file.
+ Each device method contains two or more streams.
+ One calls "Data", stores a private representation of the method, in a binary or XML format.
+ Second calls "Text, stores an Unicode text description of the method.
+ Other streams may also be created, that are private to the device, i.e. TNG-Calcium has "Header" stream.
+ Format:
+ TNG-Calcium (IDeviceMethod)
+ Data (Method stream - byte array)
+ Text (string)
+ Header (Method stream - byte array)
+
+
+
+
+ Gets or sets the "Text" plain text (unicode) form of an device method.
+ This property provides a shortcut to get/set the "Text" stream.
+ Accessing the property, returns empty string if the "Text" stream does not exist; otherwise, it will retrieve the stream
+ from the StreamBytes list.
+ Updating the property, overwrite the existing content of the "Text stream if it already exists; otherwise, it
+ will add the "Text" stream to the StreamBytes list.
+
+
+
+
+ Gets all stream data names for this device storage.
+ Typically an instrument has a stream called "Data" containing the method in binary or XML
+ and "Text" contains the plain text form of the method.
+ Other streams (private to the instrument) may also be created.
+ ---
+ In order to add/update the stream, caller should first call this to get the list of streams.
+ Once you've the list, you can start adding a new stream or editing/removing an existing method stream.
+ ---
+ If the stream is set to null, during the save operation, it'll save as zero length stream.
+
+ Device stream names
+
+
+
+ Provides methods to write mass spec device data.
+ The "PrepareForRun" method should be called during the prepare for run state, before the data acquisition begins.
+ The rest of the methods will be used for data logging.
+
+
+
+
+ Gets a value indicating whether the PrepareForRun method has been called.
+
+ True if the PrepareForRun method has been called; otherwise, false.
+
+
+
+
+ This method should be called (when creating an acquisition file) during the "Prepare for run" state.
+ It may not be called multiple times for one device. It may not be called after any of the data logging calls have been made.
+ It will perform the following operations:
+ 1. Write instrument information
+ 2. Write run header information
+ 3. Write status log header
+ 4. Write trailer extra header
+ 5. Write tune data header
+ 6. Write run header information - expected run time, comments, mass resolution and precision.
+ 7. Write method scan events.
+
+ The instrument ID.
+ The generic data headers.
+ The run header information.
+ Method scan events
+ True if all the values are written to disk successfully, false otherwise.
+
+
+
+ Write an error log to a raw file.
+
+ The retention time.
+ The error log.
+ True if error log entry is written to disk successfully, False otherwise
+
+
+
+ If any Status Log details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the byte array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The retention time.
+ The status data stores in byte array.
+ True if status log entry is written to disk successfully, False otherwise
+
+
+
+ If any Status Log details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the byte array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The retention time.
+ The data stores in object array.
+ True if status log entry is written to disk successfully, False otherwise
+
+
+
+ If any trailer extra details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the object array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The trailer extra data stores in object array.
+ True if trailer extra data is written to disk successfully, False otherwise
+
+
+
+ If any Trailer Extra details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the byte array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The trailer extra data stores in byte array.
+ True if trailer extra entry is written to disk successfully, False otherwise
+
+
+
+ If any tune details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the object array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The tune data stores in object array.
+ True if tune data is written to disk successfully, False otherwise
+
+
+
+ If any tune data details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the byte array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The tune data stores in byte array.
+ True if tune data entry is written to disk successfully, False otherwise
+
+
+
+ This method is designed for exporting mass spec scanned data to a file (mostly used by the Application).
+ It converts the input scanned data into the compressed packet format and also generates a profile index
+ if needed by the specified packet type.
+ Overall, it writes the mass spec data packets, scan index (scan header) and trailer scan event if it is provided,
+ to a file.
+ This method will branch to the appropriate packet methods to compress the data block before being written to disk.
+
+ The transferring data that are going to be saved to a file.
+ True if mass spec data packets are written to disk successfully; false otherwise.
+
+
+
+ This method is designed for mass spec device data writing.
+ To provide fast data writing, this method writes the mass spec data packets directly to file (without performing
+ any data validation and data compression) by the specified packet type.
+ All data validation and data compression currently are done in the instrument driver.
+
+ The binary block of data to write.
+ Type of the packet.
+ True if mass spec data packets are written to disk successfully, false otherwise.
+
+
+
+ This method is designed for mass spec device data writing.
+ It writes the mass spec scan index (a.k.a scan header) and trailer scan event (if it's available) to the disk.
+
+ Index of the mass spec scan.
+ The trailer scan event [optional].
+ True if scan index and trailer scan event (if it's available) are written to disk successfully, false otherwise.
+
+
+
+ The IMassSpecGenericDataHeaders interface which contains the generic headers definitions that are going to be written to a raw file.
+ If caller is not intended to use any one of these headers, caller should either pass a null argument or zero length array.
+ i.e. TrailerExtraHeaders = null or TrailerExtraHeaders = new IHeaderItem[0]
+
+
+
+
+ Gets the trailer extra headers.
+
+
+ The trailer extra headers.
+
+
+
+
+ Gets the status log headers.
+
+
+ The status log headers.
+
+
+
+
+ Gets the tune headers.
+
+
+ The tune headers.
+
+
+
+
+ Information about the mass spec device data stream.
+
+
+
+
+ Gets or sets the expected run time.
+ The expected run time. All devices MUST do this so that the real-time update can display a sensible Axis.
+
+
+ The expected run time.
+
+
+
+
+ Gets the mass resolution (width of the half peak).
+ Optional field, it has a default value of 0.5.
+
+
+ The mass resolution.
+
+
+
+
+ Gets the first comment about this data stream.
+ Optional field, it has a default value of empty string.
+ The comment is for "Sample Name" in Chromatogram view title (max 39 chars).
+
+
+ The comment1.
+
+
+
+
+ Gets the second comment about this data stream.
+ Optional field, it has a default value of empty string.
+ This comment is for "Comment" in Chromatogram view title (max 63 chars).
+
+
+ The comment2.
+
+
+
+
+ Gets the number of digits of precision suggested for formatting masses.
+ Optional field, it has a default value of 2.
+
+
+ The precision.
+
+
+
+
+ Defines access to data which can be written to an MS instrument, for one scan.
+ This format will typically be used from an application.
+
+
+
+
+ Gets the event data.
+
+
+
+
+ Gets the statistics data.
+
+
+
+
+ Gets the scan data.
+
+
+
+
+ Gets the noise data.
+
+
+ The noise data.
+
+
+
+
+ Gets the centroid data, it's a second stream with profile scan.
+
+
+ The centroid data.
+
+
+
+
+ Gets the frequencies (for LT/FT).
+
+
+ The frequencies.
+
+
+
+
+ Defines noise from FT profile
+
+
+
+
+ Gets or sets the mass
+
+
+
+
+ Gets or sets the noise
+
+
+
+
+ Gets or sets the baseline
+
+
+
+
+ Provides methods to log information from "other" devices.
+ That is: devices which have no scan data, just status (diagnostics) or errors.
+ For example: pump pressure, sampled every second.
+ Note: The following functions should be called before acquisition begins:
+ 1. Write Instrument Info
+ 2. Write Instrument Expected Run Time
+ 3. Write Status Log Header
+ If caller is not intended to use the status log data, pass a null argument or zero length array.
+ ex. WriteStatusLogHeader(null) or WriteStatusLogHeader(new IHeaderItem[0])
+
+
+
+
+ Provides methods to write PDA type devices data.
+ Note: The following functions should be called before acquisition begins:
+ 1. Write Instrument Info
+ 2. Write Instrument Expected Run Time
+ 3. Write Status Log Header
+ If caller is not intended to use the status log data, pass a null argument or zero length array.
+ ex. WriteStatusLogHeader(null) or WriteStatusLogHeader(new IHeaderItem[0])
+
+
+
+
+ Writes both the PDA instrument data and index into the disk. This is the
+ simplest format of data we write to a raw file.
+
+ The PDA instrument data.
+ Index of the PDA instrument scan.
+ True if scan data and index are written to disk successfully, False otherwise
+
+
+
+ Defines the scan header for PDA
+
+
+
+
+ Gets the long wavelength.
+ For UV device only, it will be ignored by Analog devices
+
+
+
+
+ Gets the short wavelength.
+ For UV device only, it will be ignored by Analog devices
+
+
+
+
+ Gets the wave length step.
+
+
+
+
+ Gets the Absorbance Unit's scale.
+
+
+
+
+ Interface to read a processing method (PMD) file.
+
+
+
+
+ Gets the file header for the processing method
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets a value indicating whether the last file operation caused an error
+
+
+
+
+
+ Gets a value indicating whether a file was successfully opened.
+ Inspect "FileError" when false
+
+
+
+
+ Gets some global settings from a PMD
+ These settings apply to all components in the quantitation section.
+ Some settings affect qualitative processing.
+
+
+
+
+ Gets the "Standard report" settings from a processing method
+
+
+
+
+ Gets peak detection settings (Qualitative processing)
+
+
+
+
+ Gets Spectrum Enhancement settings (Qualitative processing)
+
+
+
+
+ Gets options for NIST library search
+
+
+
+
+ Gets constraints for NIST library search
+
+
+
+
+ Gets the list of reports
+
+
+
+
+ Gets the list of programs
+
+
+
+
+ Gets the list of reports
+
+
+
+
+ Gets additional options about the peak display (peak labels etc).
+
+
+
+
+ Gets setting for PDA peak purity
+
+
+
+
+ Gets the list of compounds.
+ This includes all integration, calibration and other settings
+ which are specific to each component.
+
+
+
+
+ Gets the raw file name, which was used to design this method
+
+
+
+
+ Gets or sets the (global) mass tolerance and precision settings for the method.
+ When reading a file "get" will return the values saved in a PMD
+ Set can be used to override values, such that when a filter
+ is presented as text, alternative (detector) mass precision is used.
+
+
+
+
+ Gets the "View type" saved in a PMD file
+
+
+
+
+ Possible ways in which calibration standards are used
+
+
+
+
+ Internal standards (in the same raw file)
+
+
+
+
+ External standards (in a different raw file)
+
+
+
+
+ Determines whether calibration is performed on concentration or amount
+
+
+
+
+ Calibrate using concentration
+
+
+
+
+ Calibrate using amount
+
+
+
+
+ View to show when opening a PMD file.
+ Part of PMD file data, but may not be currently used
+
+
+
+
+ Show method summary
+
+
+
+
+ Show component identification
+
+
+
+
+ Show calibration review
+
+
+
+
+ Show peak detection
+
+
+
+
+ Possible types of chromatography
+
+
+
+
+ Gas Chromatography
+
+
+
+
+ Liquid Chromatography
+
+
+
+
+ Determines reporting unit of concentration
+
+
+
+
+ Report as concentration
+
+
+
+
+ Report as amount
+
+
+
+
+ Determines how void time is calculated.
+
+
+
+
+ A specific time is entered for void time
+
+
+
+
+ First qualitative peak defines void time
+
+
+
+
+ This interface permits reading of the "Options" structure
+ from an Xcalibur processing method.
+
+
+
+
+ Gets a value indicating whether the standards are internal or external.
+
+
+
+
+ Gets a value indicating whether calibration is performed on concentration or amount
+
+
+
+
+ Gets a value determining how void time is calculated.
+
+
+
+
+ Gets a value determining whether amounts or concentrations are reported.
+
+
+
+
+ Gets a value determining how chromatography was performed.
+
+
+
+
+ Gets a value indicating whether outliers (on a cal curve) should be rejected.
+
+
+
+
+ Gets the added time of void volume, where void time is set to "Value"
+
+
+
+
+ Gets the permitted % deviation from an expected standard amount.
+
+
+
+
+ Gets the search window for the expected time of a peak.
+
+
+
+
+ Gets the minimum number of expected scans in a baseline
+ Genesis: MinScansInBaseline
+
+
+
+
+ Gets a scale factor for the noise level in chromatographic peaks.
+
+
+
+
+ Gets the limit on baseline noise
+
+
+
+
+ Gets the background width (scans)
+
+
+
+
+ Gets the baseline noise rejection factor
+
+
+
+
+ Gets a value indicating whether the "alternate Percent RDS calculation" should be performed.
+
+
+
+
+ Gets a value indicating whether there was a "manual change" to calibration levels.
+
+
+
+
+ Gets the low intensity cutoff
+
+
+
+
+ Read the table of dilution levels
+
+ The dilution levels
+
+
+
+ Gets a copy of the dilution target component factors table
+
+ The dilution target component factors table
+
+
+
+ Access to Dilution Level data from PMD file (obsolete? subset of a calibration level)
+
+
+
+
+ Gets Anticipated amount of target compound in calibration of QC standard.
+
+
+
+
+ Gets QC test standard: 100 * (yobserved-ypredicted)/ypreditced
+
+
+
+
+ Gets the level name
+
+
+
+
+ Access to the Dilution Target Component (subset of a calibration level).
+
+
+
+
+ Gets Anticipated amount of target component.
+
+
+
+
+ Gets the target component name.
+
+
+
+
+ Determines how the Chromatogram Analysis report is formatted
+
+
+
+
+ Format by component
+
+
+
+
+ Use default formatting
+
+
+
+
+ This set of flags gives a table of possible "standard" or built in reports.
+ Available choices in the UI, and actual report content depend on the application.
+ Some where probably never offered, or only applied to legacy LCQ data system.
+
+
+
+
+ Gets a value indicating whether the Analysis Unknown report is needed
+
+
+
+
+ Gets a value indicating whether the Component Unknown report is needed
+
+
+
+
+ Gets a value indicating whether the Method Unknown report is needed
+
+
+
+
+ Gets a value indicating whether the Log Unknown report is needed
+
+
+
+
+ Gets a value indicating whether the Analysis Calibration report is needed
+
+
+
+
+ Gets a value indicating whether the Component Calibration report is needed
+
+
+
+
+ Gets a value indicating whether the Method Calibration report is needed
+
+
+
+
+ Gets a value indicating whether the Log Calibration report is needed
+
+
+
+
+ Gets a value indicating whether the Analysis QC report is needed
+
+
+
+
+ Gets a value indicating whether the Component QC report is needed
+
+
+
+
+ Gets a value indicating whether the Method QC report is needed
+
+
+
+
+ Gets a value indicating whether the Log QC report is needed
+
+
+
+
+ Gets a value indicating whether the Analysis Other report is needed
+
+
+
+
+ Gets a value indicating whether the Component Other report is needed
+
+
+
+
+ Gets a value indicating whether the Method Other report is needed
+
+
+
+
+ Gets a value indicating whether the Log Other report is needed
+
+
+
+
+ Gets a value indicating whether the Sample Information report is needed
+
+
+
+
+ Gets a value indicating whether the Run Information report is needed
+
+
+
+
+ Gets a value indicating whether the Chromatogram report is needed
+
+
+
+
+ Gets a value indicating whether the PeakComponent report is needed
+
+
+
+
+ Gets a value indicating whether the Tune report is needed
+
+
+
+
+ Gets a value indicating whether the Experiment report is needed
+
+
+
+
+ Gets a value indicating whether the Processing report is needed
+
+
+
+
+ Gets a value indicating whether the Status report is needed
+
+
+
+
+ Gets a value indicating whether the Error report is needed
+
+
+
+
+ Gets a value indicating whether the Audit report is needed
+
+
+
+
+ Gets a value indicating whether the Open Access report is needed
+
+
+
+
+ Gets a value indicating which of the two types of chromatogram analysis report is needed.
+
+
+
+
+ Gets a value indicating whether the Survey report is needed
+
+
+
+
+ Gets a value indicating whether to include a signature line in reports
+
+
+
+
+ Defines how a percentage is used (for filtering)
+
+
+
+
+ Percentage of the largest peak
+
+
+
+
+ Percentage of the peak identified as a component
+
+
+
+
+ Defines how peak limits are applied
+
+
+
+
+ Base limits on peak area
+
+
+
+
+ Base limits on peak height
+
+
+
+
+ Access to settings which defines a manual noise feature (for peak integration)
+
+
+
+
+ Gets a value indicating whether manual noise should be used
+
+
+
+
+ Gets the manual noise region (time range in minutes)
+
+
+
+
+ Gets the manual noise region (intensity range)
+ These values are not used by Xcalibur
+
+
+
+
+ Defines settings for the maximizing masses algorithm
+
+
+
+
+ Gets the number of masses required to maximize
+
+
+
+
+ Gets the percentage of masses which must maximize
+
+
+
+
+ Gets the box filter width for Mass-Maximizing detection
+
+
+
+
+ Gets the number of scans in the max-masses window
+
+
+
+
+ Gets the minimum peak separation (time) for Mass-Maximizing detection
+
+
+
+
+ Gets the number of scans averaged for a background
+
+
+
+
+ Interface to specify returning
+ a limited number of "most intense" peaks.
+
+
+
+
+ Gets a value indicating whether peak limits are enabled
+
+
+
+
+ Gets a value indicating whether to Select top peak by area or height
+
+
+
+
+ Gets the number of "top peaks" to select
+
+
+
+
+ Gets a value indicating whether "relative peak height threshold" is enabled
+
+
+
+
+ Gets the percent of the largest peak, which is used for filtering
+ peak detection results, when "IsRelativePeakEnabled"
+
+
+
+
+ Gets a the "percent of component peak" (limit)
+ Only valid when PeakPercent is set to PercentOfComponentPeak
+
+
+
+
+ Gets a value indicating how peak percentages are specified
+ (unused in product Xcalibur)
+
+
+
+
+ Settings for genesis integrator (as read from Xcalibur PMD file)
+
+
+
+
+ Gets a value indicating whether a peak's width (the tail) must be constrained.
+ This flag allows you to constrain the peak width of a detected peak (remove tailing)
+ width is then restricted by specifying a peak height threshold and a tailing factor.
+
+
+
+
+ Gets the width of a typical peak in seconds.
+ This controls the minimum width that a peak is expected to have
+ if valley detection is enabled.
+ Integrator converts this to expectedPeakHalfWidth (minutes) by dividing by 120.
+ With valley detection enabled,
+ any valley points nearer than the expectedPeakHalfWidth (which is [expected width]/2)
+ to the top of the peak are ignored.
+ If a valley point is found outside the expected peak width,
+ Genesis terminates the peak at that point.
+ Genesis always terminates a peak when the signal reaches the baseline,
+ independent of the value set for the expectedPeakHalfWidth.
+
+
+
+
+ Gets a constraint on peak height.
+ The percent of the total peak height (100%) that a signal needs to be above the baseline
+ before integration is turned on or off.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.0 to 100.0%.
+
+
+
+
+ Gets the minimum acceptable signal to noise of a peak.
+ Genesis ignores all chromatogram peaks that have signal-to-noise values
+ that are less than the S/N Threshold value
+
+
+
+
+ Gets the peak tailing factor.
+ This controls how Genesis integrates the tail of a peak.
+ This factor is the maximum ratio of the trailing edge to the leading side of a constrained peak.
+ This applies only when the is true.
+ The valid range is 0.5 through 9.0.
+
+
+
+
+ Gets a value indicating whether valley detection is performed.
+ This parameter must be set to true when performing base to base integration
+
+
+
+
+ Gets the multiplier of the valley bottom
+ that the peak trace can rise above a baseline (before or after the peak).
+ If the trace exceeds ValleyThreshold,
+ Genesis applies valley detection peak integration criteria.
+ This method drops a vertical line from the apex of the valley between unresolved
+ peaks to the baseline.
+ The intersection of the vertical line and the baseline defines the end of the first
+ peak and the beginning of the second peak.
+ This test is applied to both the left and right edges of the peak.
+ The ValleyThreshold criteria is useful for integrating peaks with long tails.
+ Useful range: 1.001 to 1.5
+ Note: Appears on product UI converted from factor to percentage as "Rise percentage".
+ For example: 1.1 = 10%
+ Code tests similar to the following:
+ if ((currentSignal-baseline) > ((valleyBottom-baseline) * ValleyThreshold))
+ {
+ side of peak has bottomed out, and risen above minimum
+ }
+
+
+
+
+
+ Gets or the S/N range is 1.0 to 100.0. for valley detection.
+ Technical equation:height(here +/- VALLEY_WIDTH) > ValleyDepth*SNR+height(here) => valley here
+
+
+
+
+ Gets a value indicating whether to enable RMS noise calculation.
+ If not set, noise is calculated peak to peak.
+ It is set by default.
+
+
+
+
+ Gets a noise limit, where the code stops attempting to find a better baseline.
+ controls how the baseline is drawn in the noise data.
+ The higher the baseline noise tolerance value,
+ the higher the baseline is drawn through the noise data.
+ The valid range is 0.0 to 1.0.
+
+
+
+
+ Gets the minimum number of scans that Genesis uses to calculate a baseline.
+ A larger number includes more data in determining an averaged baseline.
+ The valid range is 2 to 100.
+
+
+
+
+ Gets a factor which controls the width of the RMS noise band above and below the peak detection baseline
+ and is applied to the raw RMS noise values to raise the effective RMS noise during peak detection.
+ The left and right peak boundaries are assigned above the noise and, therefore,
+ closer to the peak apex value in minutes.
+ This action effectively raises the peak integration baseline above the RMS noise level.
+ Range: 0.1 to 10.0.
+ Default: 2.0.
+
+
+
+
+ Gets the number of minutes between background scan recalculations.
+ Baseline is refitted each time this interval elapses.
+
+
+
+
+ Gets a limit for the "baseline signal to noise ratio".
+ A peak is considered ended if the following condition is met:
+ height <= (BaseNoise * BaseSignalToNoiseRatio))
+ Where BaseNoise is the calculated noise on the fitted baseline,
+ and height is the height above baseline.
+
+
+
+
+ Gets the minimum acceptable percentage of the largest peak.
+ Do not return peaks which have a height less than this % of the highest peak above baseline.
+
+
+
+
+ Gets a value indicating whether filtering of peaks is by relative signal height
+
+
+
+
+ Gets the Peak Signal ToNoise Ratio Cutoff.
+ The peak edge is set to values below this defined S/N.
+ This test assumes an edge of a peak is found when the baseline adjusted height of the edge is less than
+ the ratio of the baseline adjusted apex height and the peak S/N cutoff ratio.
+ If the S/N at the apex is 500 and the peak S/N cutoff value is 200,
+ Genesis defines the right and left edges of the peak when the S/N reaches a value less than 200.
+ Range: 50.0 to 10000.0.
+ Technical equation:if height < (1/PeakSignalToNoiseRatioCutoff)*height(apex) => valley here
+
+
+
+
+ Defines a reader for importing the peak detection settings from a PMD file.
+ In UI, This may be separately displayed in tabs as chromatogram settings, and settings
+ for various integrators.
+
+
+
+
+ Gets the settings for the ICIS integrator
+
+
+
+
+ Gets the settings for the Genesis integrator
+ Note: This property is under review.
+ May return an alternative interface
+
+
+
+
+ Gets the settings for creating a chromatogram
+
+
+
+
+ Gets the manual noise range settings
+
+
+
+
+ Gets settings for the maximizing masses algorithm
+ Note: This algorithm is not used by product "Xcalibur"
+
+
+
+
+ Gets settings to limit (filter) the list of returned peaks
+ after integration
+
+
+
+
+ Gets a value indicating whether peak detection is enabled.
+ Note: This property is not used in product "Xcalibur"
+
+
+
+
+ Gets the number of smoothing points, for background analysis
+ This setting is common to all integrators
+
+
+
+
+ Gets the width of display window for the peak (in seconds)
+ This is for presentation only
+
+
+
+
+ Gets the time range, over which qualitative processing is done.
+ Only peaks detected within this range are processed further
+ (for example, library searched)
+
+
+
+
+ Gets the Algorithm to use (Genesis, ICIS etc.)
+
+
+
+
+ Gets Number of decimals used in defining mass values
+
+
+
+
+ Gets tolerance used for mass
+
+
+
+
+ Gets units of mass tolerance
+
+
+
+
+ Gets the component name
+
+
+
+
+ Gets the scan filter, as an interface.
+ This same data is available in string form
+ in the ChromatogramSettings property
+
+
+
+
+ Gets the (avalon) integrator events
+
+
+
+
+ Defines how spectrum enhancement is done
+
+
+
+
+ Refine the spectrum
+
+
+
+
+ Combine spectra
+
+
+
+
+ Threshold the data
+
+
+
+
+ Determines how spectra are subtracted
+
+
+
+
+ Subtract at a peak
+
+
+
+
+ Subtract: not at a peak
+
+
+
+
+ Read access to parameters for spectrum enhancements
+
+
+
+
+ Gets a value indicating whether the refine (combine) section enabled
+
+
+
+
+ Gets a value indicating we using refine, combine or threshold
+
+
+
+
+ Gets the refine window size
+
+
+
+
+ Gets he refine noise threshold
+
+
+
+
+ Gets the combine take points across peak top
+
+
+
+
+ Gets the combine background scaling factor
+
+
+
+
+ Gets the Region 1 method: at peak or use previous
+
+
+
+
+ Gets the start point before the peak top
+
+
+
+
+ Gets the previous points in background
+
+
+
+
+ Gets Region 2 method: at peak or use next
+
+
+
+
+ Gets Points after peak top
+
+
+
+
+ Gets the nNext point in background
+
+
+
+
+ Gets the cut off threshold
+
+
+
+
+ Defines how NIST search is done
+ Refer to NIST documentation for details.
+
+
+
+
+ Perform NIST identity search
+
+
+
+
+ Perform NIST similarity search
+
+
+
+
+ NIST search identity mode
+ Refer to NIST documentation for details.
+
+
+
+
+ Normal identity search mode
+
+
+
+
+ Quick identity search mode
+
+
+
+
+ Penalize identity search mode
+
+
+
+
+ NISY search similarity mode.
+ Refer to NIST documentation for details.
+
+
+
+
+ Simple similarity mode
+
+
+
+
+ Hybrid similarity mode
+
+
+
+
+ Neutral Loss similarity mode
+
+
+
+
+ Interface to access NIST library search options
+
+
+
+
+ Gets the similarity setting for NIST search
+
+
+
+
+ Gets the identity mode for NIST search
+
+
+
+
+ Gets the type of NIST search
+
+
+
+
+ Gets the molecular weight
+
+
+
+
+ Gets a value indicating whether search with Molecular Weight is enabled
+
+
+
+
+ Gets a value indicating whether reverse search is enabled
+
+
+
+
+ Gets a value indicating whether to append to the user library
+
+
+
+
+ Gets the search molecular weight
+
+
+
+
+ Gets the maximum number of reported search hits
+
+
+
+
+ Gets the match factor
+
+
+
+
+ Gets the reverse match factor
+
+
+
+
+ Gets the Probability Percent (match limit)
+
+
+
+
+ Gets the name of the user library (for append operation)
+
+
+
+
+ Gets the list of libraries to search
+
+
+
+
+ Gets a value indicating whether mass defect should be applied
+
+
+
+
+ Gets the mass defect for the low mass
+
+
+
+
+ Gets the mass defect for the High mass
+
+
+
+
+ Gets the mass at which "DefectAtMass1" applies
+
+
+
+
+ Gets the mass at which "DefectAtMass2" applies
+
+
+
+
+ Method of element constraint
+
+
+
+
+ All elements
+
+
+
+
+ Some elements
+
+
+
+
+ Gets the method of ion constraints
+
+
+
+
+ Absolute ion constraint
+
+
+
+
+ Relative ion constraint
+
+
+
+
+ Interface to read NIST library search constraints
+
+
+
+
+ Gets a value indicating whether molecular weight constraint is enabled
+
+
+
+
+ Gets the minimum molecular weight
+
+
+
+
+ Gets the maximum molecular weight
+
+
+
+
+ Gets a value indicating whether name fragment constraint is enabled
+
+
+
+
+ Gets the name fragment constraint
+
+
+
+
+ Gets a value indicating whether DB constraint is enabled
+
+
+
+
+ Gets a value indicating whether Fine constraint is enabled
+
+
+
+
+ Gets a value indicating whether EPA (Environmental Protection Agency) constraint is applied
+
+
+
+
+ Gets a value indicating whether NIH (National Institute of Health) constraint is applied
+
+
+
+
+ Gets a value indicating whether TSCA (Toxic Substances Control Act) constraint is applied
+
+
+
+
+ Gets a value indicating whether USP (United States Pharmacopoeia) constraint is applied
+
+
+
+
+ Gets a value indicating whether EINECS (European Inventory of Existing Commercial Chemical Substances) constraint is applied
+
+
+
+
+ Gets a value indicating whether RTECS (Registry of Toxic Effects of Chemical Substances) constraint is applied
+
+
+
+
+ Gets a value indicating whether HODOC (Handbook of Data on Organic Compounds) constraint is applied
+
+
+
+
+ Gets a value indicating whether IR constraint is applied
+
+
+
+
+ Gets a value indicating whether Elements constraint is applied
+
+
+
+
+ Gets the Element constraint
+
+
+
+
+ Gets the element constraint method (used when ElementsEnabled)
+
+
+
+
+ Gets a value indicating whether Ion Constraints are enabled
+
+
+
+
+ Gets the method of Ion Constraints (used when IonConstraintsEnabled)
+
+
+
+
+ Gets the Ion Constraints (see NIST documentation for details)
+
+
+
+
+ Gets the individual element constraints (limits on specific elements)
+
+
+
+
+ Determines how an element limit is applied
+
+
+
+
+ Element count must be greater than a specified value
+
+
+
+
+ Element count must be less than a specified value
+
+
+
+
+ Element count must equal the supplied value
+
+
+
+
+ Interface to read an ion constraint.
+ See NIST documentation for details.
+
+
+
+
+ Gets the method of ion constraint
+
+
+
+
+ Gets the mass to charge ratio of the constraint
+
+
+
+
+ Gets the from value of the constraint
+
+
+
+
+ Gets the To value of the constraint
+
+
+
+
+ A method of ion constraint, for NIST library search
+
+
+
+
+ Default value
+
+
+
+
+ Normal ion constraint
+
+
+
+
+ Constrain by loss of ion
+
+
+
+
+ Constrain by rank
+
+
+
+
+ Constrain by max mass
+
+
+
+
+ Interface to read individual constraints
+ See NIST documentation for details
+
+
+
+
+ Gets the condition on this element (greater, less or equal to value)
+
+
+
+
+ Gets the comparison value for this element constraint.
+ Used in a a test as per "ElementCondition"
+
+
+
+
+ Gets the element to constrain
+
+
+
+
+ Defines the output of an Xcalibur report
+
+
+
+
+ No report output
+
+
+
+
+ Report creates txt
+
+
+
+
+ Report creates word doc
+
+
+
+
+ Report creates HTML
+
+
+
+
+ Report creates PDF file
+
+
+
+
+ Report creates Rtf file
+
+
+
+
+ Report creates XLS file (spreadsheet)
+
+
+
+
+ Determines what data types are enabled for a report
+
+
+
+
+ Gets a value indicating whether report is enabled for standards
+
+
+
+
+ Gets a value indicating whether report is enabled for QCs
+
+
+
+
+ Gets a value indicating whether report is enabled for Unknowns
+
+
+
+
+ Gets a value indicating whether report is enabled for Other sample types
+
+
+
+
+ Interface to read Xcalibur report settings
+
+
+
+
+ Gets a value indicating whether report is enabled
+
+
+
+
+ Gets the file save format of the report
+
+
+
+
+ Gets the name of the report
+
+
+
+
+ Interface to read Xcalibur sample report settings
+ }
+
+
+
+ Defines what happens to a program in a PMD file
+
+
+
+
+ The program is run (exe)
+
+
+
+
+ The program is run as an excel macro
+
+
+
+
+ No action
+
+
+
+
+ Data is exported, using the specified export type
+
+
+
+
+ Specifies a data export format
+
+
+
+
+ Export a spreadsheet file (XLS)
+
+
+
+
+ Export as text
+
+
+
+
+ Export comma separated values (CSV)
+
+
+
+
+ Interface to read Xcalibur program settings
+
+
+
+
+ Gets a value indicating whether report is enabled
+
+
+
+
+ Gets the name of the program
+
+
+
+
+ Gets parameters to the program
+
+
+
+
+ Gets the action of this program (such as run exe, or export)
+
+
+
+
+ Gets a value indicating whether to synchronize this action.
+ If false, other programs may be run in parallel with this.
+
+
+
+
+ Gets the file save format of the export
+
+
+
+
+ Additional display options (for Xcalibur PMD file)
+
+
+
+
+ Gets a value which extends (display) width so that peak is shown "not at edge"
+
+
+
+
+ Gets a value indicating whether to label peaks with RT
+
+
+
+
+ Gets a value indicating whether to label peaks with scan number
+
+
+
+
+ Gets a value indicating whether to label peaks with area
+
+
+
+
+ Gets a value indicating whether to label peaks with base peak
+
+
+
+
+ Gets a value indicating whether to label peaks with height
+
+
+
+
+ Gets a value indicating whether to label peaks with internal standard response
+
+
+
+
+ Gets a value indicating whether to label peaks with signal to noise
+
+
+
+
+ Gets a value indicating whether to label peaks with saturation
+
+
+
+
+ Gets a value indicating whether to rotate peak label text
+
+
+
+
+ Gets a value indicating whether to draw a box around peak labels
+
+
+
+
+ Read only access to Calibration And Quantification Threshold Limits
+
+
+
+
+ Gets the carry over limit threshold.
+
+ The carry over limit threshold.
+
+
+
+ Gets the detection limit threshold.
+
+ The detection limit threshold.
+
+
+
+ Gets the linearity limit threshold.
+
+ The linearity limit threshold.
+
+
+
+ Gets the quantitation limit threshold.
+
+ The quantitation limit threshold.
+
+
+
+ Gets the R squared threshold.
+
+ The R squared threshold.
+
+
+
+ Gets the limit of reporting
+ A value should only be reported if it is >= the limit of reporting.
+ This value is used to calculate the ReportingLimitPassed flag.
+
+
+
+
+ Read only access to Detection Threshold Limits
+
+
+
+
+ Gets the Area limit threshold.
+
+ The Area limit threshold.
+
+
+
+ Gets the height limit threshold.
+
+ The height limit threshold.
+
+
+
+ Interface to read component data, as imported from an
+ Xcalibur PMD file
+
+
+
+
+ Gets the settings for a manual noise region
+
+
+
+
+ Gets settings for the ICIS peak integrator
+
+
+
+
+ Gets settings for the genesis peak integrator
+
+
+
+
+ Gets settings for peak location (expected retention time)
+
+
+
+
+ Gets settings for the spectral find algorithm.
+
+
+
+
+ Gets settings for creating the component chromatogram
+
+
+
+
+ Gets the filter for this component as an interface.
+ Note that a filter is also a property of IPeakChromatogramSettingsAccess,
+ available a string, formatted to the mass precision of the component.
+
+
+
+
+ Gets component calibration settings (including level tables)
+
+
+
+
+ Gets settings for the system suitability algorithm
+
+
+
+
+ Gets settings for the PDA peak purity algorithm
+
+
+
+
+ Gets the (avalon) integrator events
+
+
+
+
+ Gets the settings for Ion Ration Confirmation
+
+
+
+
+ Gets mass tolerance for this component
+
+
+
+
+ Gets the name of this component
+
+
+
+
+ Gets (custom) keys about this component
+ This is treated as a comment field.
+ Not used for any "built-in" calculations
+ but may be used to annotate reports etc.
+
+
+
+
+ Gets a value indicating whether this is used as a RT Reference for another component.
+
+
+
+
+ Gets the retention time reference component.
+ Adjust the retention time, using this component as a reference
+
+
+
+
+ Gets the number of points to be averaged in peak detection and integration.
+
+
+
+
+ Gets the suggested view width for displaying the chromatogram (minutes)
+
+
+
+
+ Gets a value which determines which peak detector to use with the component
+
+
+
+
+ Gets "Fit Threshold" defined as
+ Min fit threshold (0-1.0) for detection by spectral fit.
+ This value is believed to be not currently used in Xcalibur code (may be for an older fit algorithm)?
+ Returned for completeness only.
+
+
+
+
+ Gets the calibration and quantification data.
+
+
+
+
+ Gets the detection threshold limits.
+
+
+
+
+ How relative response is measured
+
+
+
+
+ Use the ratio of height of peaks to find responses
+
+
+
+
+ Use the ratio of peak areas to find responses
+
+
+
+
+ Determines if this component is a standard or a target
+
+
+
+
+ A compound which is being quantitated
+
+
+
+
+ An internal standard reference, to calculate area or height ratios (responses).
+
+
+
+
+ Read only access to CalibrationSettings
+
+
+
+
+ Gets the target compound settings.
+
+ The target compound settings.
+
+
+
+ Gets the internal standard settings.
+
+ The internal standard settings.
+
+
+
+ Gets a value which determines if this component is a target compound or an internal standard
+
+
+
+
+ Read only access to CalibrationTargetCompoundSettings
+
+
+
+
+ Gets the table of calibration levels
+
+
+
+
+ Gets the table of QC levels
+
+
+
+
+ Gets the calibration curve fitting method
+
+
+
+
+ Gets the weighting for calibration curve
+
+
+
+
+ Gets the calibration curve origin mode
+
+
+
+
+ Gets a value which determines how the response should be measured (using either peak height or peak area).
+
+
+
+
+ Gets the Unit for calibration
+
+
+
+
+ Gets the name of the internal standard for this component
+
+
+
+
+ Gets the isotopic contribution of the internal standard to the target compound
+
+
+
+
+ Gets the isotopic contribution of the target compound to the internal standard
+
+
+
+
+ Read only access to CalibrationInternalStandardSettings
+
+
+
+
+ Gets the amount of internal standard. Not used in any calculation yet.
+
+
+
+
+ Gets the units for the internal standard
+
+
+
+
+ Defines how ion ratio tests are performed
+ (as found in Xcalibur PMD files)
+
+
+
+
+ Use a weighted average test
+
+
+
+
+ Use a simple average test
+
+
+
+
+ Use a standard
+
+
+
+
+ Manual test settings
+
+
+
+
+ Defines ion ratio window, as found in Xcalibur PMD files
+
+
+
+
+ Test relative to target percent
+
+
+
+
+ Absolute window around target percent
+
+
+
+
+ Defines ion ratio settings, as imported from Xcalibur PMD file
+
+
+
+
+ Gets a value indicating whether IRC tests are enabled
+
+
+
+
+ Gets the "standard" used
+
+
+
+
+ Gets the Ion Ratio method
+
+
+
+
+ Gets the ion ratio window type
+
+
+
+
+ Gets the qualifier ion coelution limits (minutes)
+
+
+
+
+ Gets the table of masses for ion ratio testing
+
+
+
+
+ Read only access to a range
+
+
+
+
+ Gets the Low end of range
+
+
+
+
+ Gets the high end of the range
+
+
+
+
+ Specific items which can be cached
+
+
+
+
+ Cache CentroidStream objects
+
+
+
+
+ Cache ScanStatistics objects
+
+
+
+
+ Cache ScanType objects
+
+
+
+
+ Cache SegmentedScan objects
+
+
+
+
+ Caching feature which can be supported by objects implementing IRawData
+
+
+
+
+ Request the object to keep a cache of the listed item.
+ Setting the caching to "zero" disables further caching.
+
+
+ Item to cache
+
+
+ Limit of number of items to cache
+
+
+ (optional, default false) if set True, all values returned from the cache are unique (cloned) references.
+ By default, the cache just keeps references to the objects
+
+
+
+
+ Clear items in the cache
+
+
+ item type to clear
+
+
+
+
+ Count the number currently in the cache
+
+
+ Item type to count
+
+
+ The number of items in this cache
+
+
+
+
+ Interface to supply data from a raw data stream.
+ This is intended to permit the data to be read from any file format.
+
+
+
+
+ Get the nearest scan number to a retention time
+
+
+ Retention time (minutes)
+
+
+ Scan number in the selected instrument which is closest to this time.
+ If there are no scans, -1 is returned.
+
+
+
+
+ Gets the current instrument's run header.
+ The run header records information related to all data acquired by
+ this instrument (such as the highest scan number "LastSpectrum")
+
+
+
+
+ Gets the number of instruments which have saved method data, within the
+ instrument method embedded in this file.
+
+
+
+
+ Get the scan statistics for a scan.
+ For example: The retention time of the scan.
+
+
+ scan number
+
+
+ Statistics for scan
+
+
+
+
+ Gets scan data for the given scan number. It will also fill object, if any supplied.
+ For most detector types, this is the only data for the scan, and contains either
+ profile or centroid information (depending on the type of scan performed).
+ For Orbitrap data (FT packet formats), this returns the first set of data for the scan (typically profile).
+ The second set of data (centroids) are available from the GetCentroidStream method.
+ The "Segmented" format is used for SIM and SRM modes, where there may be multiple
+ mass ranges (segments) of a scan.
+ Full scan data has only one segment.
+
+
+ The scan number.
+
+
+ statistics for the scan
+
+
+ The segmented scan
+
+ Thrown if no device has been selected
+
+
+
+ Test if a scan is centroid format
+
+
+ Number of the scan
+
+
+ True if the scan is centroid format
+
+ Thrown if no device has been selected
+
+
+
+ Gets the filter strings for this file.
+ This analyses all scans types in the file.
+ It may take some time, especially with data dependent files.
+ Filters are grouped, within tolerance (as defined by the MS detector).
+
+ A string for each auto filter from the raw file
+ Thrown if this is called without first selecting an MS detector
+
+
+
+ Gets a text form of an instrument method, for a specific instrument.
+
+
+ The index into the count of available instruments.
+ The property "InstrumentMethodsCount",
+ determines the valid range of "index" for this call.
+
+
+ A text version of the method. Some instruments do not log this data.
+ Always test "string.IsNullOrEmpty" on the returned value.
+
+
+
+
+ Gets the definition of the selected instrument.
+
+ data about the selected instrument, for example the instrument name
+
+
+
+ Get a string representing the scan type (for filtering).
+ For more complete tests on filters, consider using the IScanFilter interface.
+ If reading data using IRawDataPlus, you may use
+ A filter string (possibly entered from the UI) may be parsed using
+ If the RT is known, and not the scan number, use ScanNumberFromRetentionTime
+ to convert the time to a scan number.
+
+
+ Scan number whose type is needed
+
+
+ Type of scan, in string format.
+ To compare individual filter fields, the ScanDefinition class can be used.
+
+
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Get the retention time (minutes) from a scan number
+
+
+ Scan number
+
+
+ Retention time (start time) of scan
+
+ Thrown if no device has been selected
+
+
+
+ Get the centroids saved with a profile scan.
+ This is only valid for data types which support
+ multiple sets of data per scan (such as Orbitrap data).
+ This method does not "Centroid profile data".
+
+
+ Scan number
+
+
+ determines if peaks flagged as ref should be returned
+
+
+ centroid stream for specified .
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the status log nearest to a retention time.
+
+
+ The retention time.
+
+
+ object containing status log information.
+
+ Thrown if no device has been selected
+
+
+
+ returns the number of entries in the current instrument's status log
+
+
+ The number of available status log entries.
+
+
+
+
+ Returns the header information for the current instrument's status log.
+ This defines the format of the log entries.
+
+
+ The headers (list of prefixes for the strings).
+
+ Thrown if no device has been selected
+
+
+
+ Returns the Status log values for the current instrument,
+ for the given status record.
+ This is most likely for diagnostics or archiving.
+ Applications which need logged data near a scan should use “GetStatusLogForRetentionTime”.
+ Note that this does not return the “labels” for the fields.
+
+ Index into table of status logs
+ true if they should be formatted as per the
+ data definition for this field (recommended for display).
+ Unformatted values may be returned with default precision (for float or double)
+ Which may be better for graphing or archiving
+
+ The status log values.
+
+ Thrown if no device has been selected
+
+
+
+ Gets a text form of the instrument tuning method, at a given index.
+ The number of available tune methods can be obtained from GetTuneDataCount.
+
+
+ tune data index
+
+
+ object containing tune data for specified .
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Return the number of tune data entries.
+ Each entry describes MS tuning conditions, used to acquire this file.
+
+
+ The number of tune methods saved in the raw file>.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Return the header information for the current instrument's tune data.
+ This defines the fields used for a record which defines how the instrument was tuned.
+ This method only applies to MS detectors. These items can be paired with the "TuneDataValues"
+ to correctly display each tune record in the file.
+
+
+ The headers/>.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Return tune data values for the specified index.
+ This method only applies to MS detectors.
+ This contains only the data values, and not the headers.
+
+
+ index into tune tables
+
+
+ true if formatting should be done.
+ Normally you would set “ifFormatted” to true,
+ to format based on the precision defined in the header.
+ Setting this to false uses default number formatting.
+ This may be better for diagnostic charting,
+ as numbers may have higher precision than the default format.
+
+
+ The tune data
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the path to original data.
+ A raw file may have been moved or translated to other formats.
+ This property always returns the path (folder) where the file was created (acquired)
+
+
+
+
+ Gets the name of acquired file (excluding path).
+
+
+
+
+ Choose the data stream from the data source.
+ This must be called before reading data from a detector (such as chromatograms or scans).
+ You may call to determine if there is at
+ least one instrument of the required device type.
+
+
+ Type of instrument
+
+
+ Stream number (1 based)
+
+
+
+
+ Gets the instrument as last set by a call to .
+ If this has never been set, returns null.
+
+
+
+
+ Gets the date when this data was created.
+
+
+
+
+ Gets the name of person creating data.
+
+
+
+
+ Gets various details about the sample (such as comments).
+
+
+
+
+ Gets the number of instruments (data streams) in this file.
+ For example, a file with an MS detector and a 4 channel UV may have an instrument
+ count of 2. To find out how many instruments there are of a particular category
+ call with the desired instrument type.
+ Instrument count related methods could, for example, be used to format
+ a list of instruments available to select in the UI of an application.
+ To start reading data from a particular instrument, call .
+
+
+
+
+
+ Gets a value indicating whether the last file operation caused an error.
+
+
+
+
+ Gets a value indicating whether the file is being acquired (not complete).
+
+
+
+
+ Get the number of instruments (data streams) of a certain classification.
+ For example: the number of UV devices which logged data into this file.
+
+
+ The device type to count
+
+
+ The number of devices of this type
+
+
+
+
+ Create a chromatogram from the data stream
+
+
+ Definition of how the chromatogram is read
+
+
+ First scan to read from. -1 for "all data"
+
+
+ Last scan to read from. -1 for "all data"
+
+
+ Chromatogram points
+
+
+ Thrown if the selected device is of a type that does not support chromatogram generation
+
+ Thrown if filters are sent (for MS chromatograms) which cannot be parsed
+
+
+
+ Create a chromatogram from the data stream
+
+
+ Definition of how the chromatogram is read
+
+
+ First scan to read from. -1 for "all data"
+
+
+ Last scan to read from. -1 for "all data"
+
+
+ For mass range or base peak chromatograms,
+ if the ranges have equal low and high mass values (within 1.0E-6),
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses.
+ if this is set to "null" then the tolerance is defaulted to +/- 0.5.
+
+
+ Chromatogram points
+
+
+ Thrown if the selected device is of a type that does not support chromatogram generation
+
+ Thrown if filters are sent (for MS chromatograms) which cannot be parsed
+
+
+
+ Gets the device type for an instrument data stream
+
+
+ The data stream
+
+
+ The device at type the index
+
+
+
+
+ Gets names of all instruments, which have a method stored in the raw file's copy of the instrument method file.
+ These names are "Device internal names" which map to storage names within
+ an instrument method, and other instrument data (such as registry keys).
+ Use "GetAllInstrumentFriendlyNamesFromInstrumentMethod" (in IRawDataPlus) to get display names
+ for instruments.
+
+
+ The instrument names.
+
+
+
+
+ Gets a value indicating whether the data file was successfully opened.
+
+
+
+
+ Gets or sets a value indicating whether reference and exception peaks
+ should be returned (by default they are not).
+ Reference and exception peaks are internal mass calibration data within a scan.
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful when the raw file is InAcquisition when opened,
+ or on the last refresh call. After acquisition is completed
+ further calls have no effect.
+
+ For example, the value of "LastSpectrum" in the Run Header of a detector may be 60 after a refresh call.
+ Even after new scans become acquired, this value will remain at 60, from the application's view of the data,
+ until RefreshViewOfFile is called again. If GetRunHeader is called again, the number of scans may now be
+ a larger value, such as 100
+
+
+ true, if refresh was OK.
+
+
+
+
+ Gets the trailer extra header information. This is common across all scan numbers.
+ This defines the format of additional data logged by an MS detector, at each scan.
+ For example, a particular detector may wish to record "analyzer 3 temperature" at each scan,
+ for diagnostic purposes. Since this is not a defined field in "ScanHeader" it would be created
+ as a custom "trailer" field for a given instrument. The field definitions occur only once,
+ and apply to all trailer extra records in the file. In the example given,
+ only the numeric value of "analyzer 3 temperature" would be logged with each scan,
+ without repeating the label.
+
+
+ The headers defining the "trailer extra" record format.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the Trailer Extra values for the specified scan number.
+ If = true, then the values will be formatted as per the header settings.
+
+
+ scan whose trailer data is needed
+
+
+ true if the data should be formatted
+
+
+ The strings representing trailer data.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the array of headers and values for this scan number.
+ The values are formatted as per the header settings.
+
+
+ The scan for which this information is needed
+
+
+ Extra information about the scan
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the segment event table for the current instrument.
+ This table indicates planned scan types for the MS detector.
+ It is usually created from an instrument method, by the detector.
+ With data dependent or custom scan types, this will not be a complete
+ list of scan types used within the file.
+ If this object implements the derived IRawDataPlus interface, then
+ This same data can be obtained in object format (instead of string) with the IRawDataPlus
+ property "ScanEvents"
+
+ A two dimensional array of events. The first index is segment index (segment number-1).
+ The second is event index (event number -1) within the segment.
+ Thrown if the selected device is not of type MS
+
+
+
+ The RawDataPlus interface. Provides access to raw data.
+ This extends IRawData, adding new features which were introduced at "Platform 3.0"
+ plus access to some additional content from earlier raw file versions.
+ This is a disposable interface, as an implementation may hold an active file,
+ database or other protocol connection.
+ Many interfaces returned from implementations of this interface may rely
+ on an active file, database or protocol connection.
+ Do not dispose of this object until interfaces (especially enumerators)
+ returned from it are no longer in use.
+ All value type returns from this interface are safe against the underlying file being closed.
+
+
+
+
+ Gets the raw file header.
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets extended the run header details.
+ All properties of the returned interface which end in "Count" may return -1
+ if that counter is not valid for the selected device type. For example: TuneDataCount when called on Device.Other
+
+ Thrown if no device has been selected
+
+
+
+ Gets the auto sampler (tray) information.
+
+
+
+
+ Calculate the filters for this raw file, and return as an array.
+
+ Auto generated list of unique filters
+ Thrown if the selected device is not of type MS
+
+
+
+ Calculate the filters for this raw file within the range of scans supplied, and return as an array.
+
+ First scan to analyze
+ Last scan to analyze
+
+ Auto generated list of unique filters
+
+
+
+
+ Get the filter (scanning method) for a scan number.
+ This returns the scanning method in the form of a filter rule set, so
+ that it can be used to select similar scans (for example in a chromatogram).
+ This method is only defined for MS detectors.
+ Calling for other detectors or with no selected detector is a coding
+ error which may result in a null return or exceptions, depending on the implementation.
+
+
+ The scan number.
+
+
+ The .
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Get a filter interface from a string. Parses the supplied string to a set of filtering rules.
+
+
+ The filter string.
+
+
+ An interface representing the filter fields, converted from the supplied string.
+ If the string is not a valid format, this may return null.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Get a filter interface from a scan event interface.
+ Permits filtering to be done based on programmed events, such as
+ an item from the "ScanEvents" table,
+ or from constructed data using .
+ This method initializes the filter based on the current raw file
+ (for example: mass precision)
+
+
+ The event data.
+
+
+ An interface representing the filter fields, converted from the supplied event.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Get a filter interface from a string, with a given mass precision.
+ Parses the supplied string.
+
+
+ The filter string.
+
+ Precisions of masses (number of decimal places)
+
+ An interface representing the filter fields, converted from the supplied string.
+ If the string is not a valid format, this may return null.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Obtain an interface to iterate over a scans which match a specified filter.
+ The iterator is initialized at "scan 0" such that "GetNext" will return the first matching scan in the file.
+ This is a low level version of
+
+ Filter, which all returned scans match.
+ This filter may be created from a string using
+ An iterator which can step back and forth over scans matching a given filter.
+ Thrown if the selected device is not of type MS
+
+
+
+ Get a filtered scan enumerator, to obtain the collection of scans matching given filter rules.
+
+ The filter, which all enumerated scans match.
+ This filter may be created from a string using
+
+
+ An enumerator which can be used to "foreach" over all scans in a file, which match a given filter.
+ Note that each "step" through the enumerator will access further data from the file.
+ To get a complete list of matching scans in one call, the "ToArray" extension can be called,
+ but this will result in a delay as all scans in the file are analyzed to return this array.
+ For fine grained iterator control, including "back stepping" use
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Get a filtered scan enumerator, to obtain the collection of scans matching given filter rules,
+ over a given time range.
+
+
+ The filter, which all enumerated scans must match.
+ This filter may be created from a string using
+
+
+ The start Time.
+
+
+ The End Time.
+
+
+ An enumerator which can be used to "foreach" over all scans in a time range, which match a given filter.
+ Note that each "step" through the enumerator will access further data from the file.
+ To get a complete list of matching scans in one call, the "ToArray" extension can be called,
+ but this will result in a delay as all scans in the time range are analyzed to return this array.
+ For fine grained iterator control, including "back stepping" use
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets a value indicating whether this file has an instrument method.
+
+
+
+
+ Gets a value indicating whether this file has MS data.
+
+
+
+
+ Gets the scan events.
+ This is the set of events which have been programmed in advance of
+ collecting data (based on the MS method).
+ This does not analyze any scan data.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the set of user labels. These are labels for "user columns" in the sample information.
+
+
+
+
+ Gets the scan event details for a scan. Determines how this scan was programmed.
+
+
+ The scan number.
+
+
+ The interface, to get detailed information about a scan.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the scan event as a string for a scan.
+
+
+ The scan number.
+
+
+ The event as a string.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets an entry from the instrument error log.
+
+
+ Zero based index.
+ The number of records available is RunHeaderEx.ErrorLogCount
+ An interface to read a specific log entry
+ Thrown if no device has been selected
+
+
+
+ Gets the labels and index positions of the status log items which may be plotted.
+ That is, the numeric items.
+ Index is a zero based index into the log record (the array returned by GetStatusLogHeaderInformation)
+ Labels names are returned by "Key" and the index into the log record is "Value".
+
+ Thrown if no device has been selected
+
+
+
+ Gets the status log data, from all log entries, based on a specific position in the log record.
+ For example: "position" may be selected from one of the key value pairs returned from
+ in order to create a trend plot of a particular value.
+ The interface returned has an array of retention times and strings.
+ If the position was selected by using , then the strings may be converted "ToDouble" to get
+ the set of numeric values to plot.
+
+
+ The position within the list of available status log values.
+
+
+ An interface containing the times and logged values for the selected status log field.
+
+ Thrown if no device has been selected
+
+
+
+ Get all instrument friendly names from the instrument method.
+ These are the "display names" for the instruments.
+
+
+ The instrument friendly names.
+
+
+
+
+ Export the instrument method to a file.
+ Because of the many potential issues with this, use with care, especially if
+ adding to a customer workflow.
+ Try catch should be used with this method.
+ Not all implementations may support this (some may throw NotImplementedException).
+ .Net exceptions may be thrown, for example if the path is not valid.
+ Not all instrument methods can be exported, depending on raw file version, and how
+ the file was acquired. If the "instrument method file name" is not present in the sample information,
+ then the exported data may not be a complete method file.
+ Not all exported files can be read by an instrument method editor.
+ Instrument method editors may only be able to open methods when the exact same list
+ of instruments is configured.
+ Code using this feature should handle all cases.
+
+
+ The method file path.
+
+
+ Force over write. If true, and file already exists, attempt to delete existing file first.
+ If false: UnauthorizedAccessException will occur if there is an existing read only file.
+
+ True if the file was saved. False, if no file was saved, for example,
+ because there is no instrument method saved in this raw file.
+
+
+
+
+ Get scan dependents.
+ Returns a list of scans, for which this scan was the parent.
+
+
+ The scan number.
+
+
+ The filter precision decimals.
+
+
+ Information about how data dependent scanning was performed.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the unique compound names as arrays of strings.
+
+
+ The Compound Names.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the unique compound names within the range of scans supplied, and return as an array.
+
+ First scan to analyze
+ Last scan to analyze
+
+ The Compound Names.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the unique compound names as arrays of strings by given filter.
+
+
+ The scan Filter.
+
+
+ The compound names.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Get the scan filters which match a compound name.
+ When implemented against raw files, this may have a performance impact on applications.
+ For files which have a programmed event table, this will be fast,
+ as the information can be taken directly from the events.
+ If there is no event table, then event data is checked for every scan in the file (slower).
+
+
+ The compound name.
+
+
+ The array of matching scan filters (in string format).
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Get the scan filters which match each compound name.
+ When implemented against raw files, this may have a performance impact on applications.
+ For files which have a programmed event table, this will be fast,
+ as the information can be taken directly from the events.
+ If there is no event table, then event data is checked for every scan in the file (slower).
+
+ The compound names.
+
+ The arrays of matching scan filters (in string format) for each compound.
+
+
+
+
+ Create a chromatogram from the data stream.
+ Extended version:
+ Parameters include option for component names.
+ Includes base peak data for each scan.
+
+
+ Definition of how the chromatogram is read
+
+
+ First scan to read from. -1 for "all data"
+
+
+ Last scan to read from. -1 for "all data"
+
+
+ For mass range or base peak chromatograms,
+ if the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses.
+ For example: with 5 ppm tolerance, the caller can pass a single mass value (same low and high) for each mass range,
+ and get chromatograms of those masses +/- 5 ppm.
+
+
+ Chromatogram points
+
+
+ Thrown if the selected device is of a type that does not support chromatogram generation
+
+ Thrown if filters are sent (for MS chromatograms) which cannot be parsed
+
+
+
+ Create a chromatogram from the data stream.
+ Extended version:
+ Parameters include option for component names.
+ Includes base peak data for each scan.
+
+
+ Definition of how the chromatogram is read
+
+
+ First scan to read from. -1 for "all data"
+
+
+ Last scan to read from. -1 for "all data"
+
+
+ Chromatogram points
+
+
+ Thrown if the selected device is of a type that does not support chromatogram generation
+
+ Thrown if filters are sent (for MS chromatograms) which cannot be parsed
+
+
+
+ Test if a scan passes a filter.
+ If the set of "all matching scans in a file" is required, consider using or
+
+ the scan number
+ the filter to test
+ True if this scan passes the filter
+ Thrown if the selected device is not of type MS
+
+
+
+ Returns the (unformatted) Trailer Extra value for a specific field in the specified scan number.
+ The object type depends on the field type, as returned by
+ GetTrailerExtraHeaderInformation.
+ This offers higher performance, where numeric values are needed,
+ as it avoids translation to and from strings.
+
+ Numeric values (where the header for this field returns "True" for IsNumeric)
+ can always be cast up to double.
+ The integer numeric types SHORT and USHORT are returned as short and ushort.
+ The integer numeric types LONG and ULONG are returned as int and uint.
+ All logical values (Yes/No, True/false, On/Off) are returned as "bool",
+ where "true" implies "yes", "true" or "on".
+ Char type is returned as "sbyte".
+ Uchar type is returned as "byte".
+ String types WCHAR_STRING and CHAR_STRING types are returned as "string".
+
+
+ scan who's data is needed
+ zero based field number in the record, as per header
+ Value of requested field
+ Thrown if the selected device is not of type MS
+
+
+
+ Returns the (unformatted) Trailer Extra values for all field in the specified scan number.
+ The object types depend on the field types, as returned by
+ GetTrailerExtraHeaderInformation.
+ Uses for this include efficient copy of data from one file to another, as
+ it eliminates translation of numeric data to and from strings.
+
+ Numeric values (where the header for this field returns "True" for IsNumeric)
+ can always be cast up to double.
+ The integer numeric types SHORT and USHORT are returned as short and ushort.
+ The integer numeric types LONG and ULONG are returned as int and uint.
+ All logical values (Yes/No, True/false, On/Off) are returned as "bool",
+ where "true" implies "yes", "true" or "on".
+ Char type is returned as "sbyte".
+ Uchar type is returned as "byte".
+ String types WCHAR_STRING and CHAR_STRING types are returned as "string".
+
+
+ scan who's data is needed
+ Values of all fields
+ Thrown if the selected device is not of type MS
+
+
+
+ Returns the (unformatted) Tune Data values for all fields in the specified record number.
+ The object types depend on the field types, as returned by
+ GetTuneDataHeaderInformation.
+ Uses for this include efficient copy of data from one file to another, as
+ it eliminates translation of numeric data to and from strings.
+
+ Numeric values (where the header for this field returns "True" for IsNumeric)
+ can always be cast up to double.
+ The integer numeric types SHORT and USHORT are returned as short and ushort.
+ The integer numeric types LONG and ULONG are returned as int and uint.
+ All logical values (Yes/No, True/false, On/Off) are returned as "bool",
+ where "true" implies "yes", "true" or "on".
+ Char type is returned as "sbyte".
+ Uchar type is returned as "byte".
+ String types WCHAR_STRING and CHAR_STRING types are returned as "string".
+
+
+ zero based index into tune records who's data is needed
+ Values of all fields
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the (raw) status log data at a given index in the log.
+ Deigned for efficiency, this method does not convert logs to display string format.
+
+ Index (from 0 to "RunHeaderEx.StatusLogCount -1 ))
+ Log data at the given index
+ Thrown if no device has been selected
+
+
+
+ Gets the (raw) status log data at a given retention time in the log.
+ Designed for efficiency, this method does not convert logs to display string format.
+
+ Retention time/
+ Log data at the given time
+ Thrown if no device has been selected
+
+
+
+ Get the advanced LT/FT formats data, such as the noise data, baseline data, label peaks and frequencies
+ Common uses include:
+ An application exporting mass spectra to a new raw file.
+ Special calculations on scans (including averaging, recalibration etc.)
+
+ The scan number.
+
+ Returns an IAdvancedPacketData object which contains noise data, baseline data, label peaks and frequencies for specified .
+ It might return empty arrays for scans which do not have these data.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the name of the computer, used to create this file.
+
+
+
+
+ Interface to define low level access to a status log entry.
+ This interface is intended for operations which need efficient access to
+ the data, without intermediate string formatting.
+
+
+
+
+ Gets the time stamp of this log entry.
+
+
+
+
+ Gets the values for this log entry.
+ Returns the (unformatted) Status Log Data values for
+ all fields in the log.
+ The object types depend on the field types, as returned by
+ GetStatusLogHeaderInformation.
+ These values are in the same order as the headers.
+ Uses for this include efficient copy of data from one file to another, as
+ it eliminates translation of numeric data to and from strings.
+
+ Numeric values (where the header for this field returns "True" for IsNumeric)
+ can always be cast up to double.
+ The integer numeric types SHORT and USHORT are returned as short and ushort.
+ The integer numeric types LONG and ULONG are returned as int and uint.
+ All logical values (Yes/No, True/false, On/Off) are returned as "bool",
+ where "true" implies "yes", "true" or "on".
+ Char type is returned as "sbyte".
+ Uchar type is returned as "byte".
+ String types WCHAR_STRING and CHAR_STRING types are returned as "string".
+
+
+
+
+
+ Defines an object which can create accessors for multiple threads to access the same raw data.
+
+
+
+
+ This interface method creates a thread safe access to raw data, for use by a single thread.
+ Each time a new thread (async call etc.) is made for accessing raw data, this method must be used to
+ create a private object for that thread to use.
+ This interface does not require that the application performs any locking.
+ In some implementations this may have internal locking (such as when based on a real time file, which is continually changing in size),
+ and in some implementations it may be lockless.
+
+ An interface which can be used by a thread to access raw data
+
+
+
+ Defines managed access to raw data, for multiple threads.
+ An object implementing this interface "owns" the underlying raw data, and will close any associated file
+ when disposed. All created thread accessors must no longer be in used, when this object is disposed.
+
+
+
+
+ Defines additional raw data access methods, including diagnostic data in FT format scans.
+
+
+
+
+ Gets additional (binary) data from a scan.
+ The format of this data is custom (per instrument) and can be decoded into
+ objects by a specific decoder for the detector type.
+
+
+ Scan whose data is needed
+
+
+
+ Gets additional data from a scan, formatted as a series of data blocks.
+ The format of this data is custom (per instrument) and can be decoded into
+ objects by a specific decoder for the detector type.
+ If the data is not in a detectable "data block" format, then this data is returned as "Not valid".
+ Data of a format not known to this interface may be retrieved by using
+
+ Scan whose data is needed
+
+
+
+ Gets the (raw) status log data at a given index in the sorted log.
+ This form of the log removes duplicate and out of order times
+ Designed for efficiency, this method does not convert logs to display string format.
+
+ Index (from 0 to "GetStatusLogEntriesCount() -1")
+ Log data at the given index
+
+
+
+ The IRawDataExtended interface. Provides access to raw data.
+ This extends IRawDataPlus, adding "IRawDataExtensions".
+ This is a disposable interface, as an implementation may hold an active file,
+ database or other protocol connection.
+ Many interfaces returned from implementations of this interface may rely
+ on an active file, database or protocol connection.
+ Do not dispose of this object until interfaces (especially enumerators)
+ returned from it are no longer in use.
+ All value type returns from this interface are safe against the underlying file being closed.
+
+
+
+
+ The Raw File Writer interface.
+ Used for writing raw files to disk.
+ Upon creating an instance of IRawFileWriter, the raw file name is provided and checked for existence.
+ If that file name already exists, the new instance creates a raw file name appended with a unique date time stamp.
+ Many methods return true on success, and false on fail.
+ The IFileError interface can be used to get error information.
+ HasError is set on that interface for a non recoverable error, and the ErrorMessage is set
+ to one or more lines of error data.
+ If there is an error, the WarningMessage contains a multiple line diagnostic log.
+ This may contain information and warning lines.
+ HasWarning is set if at least one line of the log contains a warning.
+
+
+
+
+ Gets a value indicating whether an error occurred during writing.
+
+
+
+
+ Gets or sets a value indicating whether the writer should save changes. True by default.
+ If false when a save is called, data will not be written to disk and any data written previously will remain unchanged.
+ The writer will still need to be disposed regardless of ShouldSaveChanges status.
+
+
+
+
+ Gets the raw file name being written.
+
+
+
+
+ Gets the calculated checksum for this raw file. Only calculated after a save has occurred.
+
+
+
+
+ Refresh view of the raw file. Reloads the RawFileInfo object and the virtual controllers run headers from shared memory.
+ Does not read actual data from any temporary files.
+
+
+ True if successfully reloaded internal memory buffers.
+
+
+
+
+ Gets the set of devices currently connected to the raw file.
+ This data is only updated after calling "RefreshViewOfFile".
+ Devices may be added by external processes (especially during data acquisition).
+
+ An array of device types. The length of the array is equal to the number of detectors
+ which have registered with the raw file.
+ Some device may have incomplete registration at the time of the call.
+ In this case "Device.None" is recorded
+
+
+
+ Update the raw file header with the file header values passed in.
+ Only updates object values in memory, does not write to disk.
+ A default FileHeader is created with every new writer instance.
+
+
+ The file header object with values to use.
+
+
+
+
+ Update the raw file auto sampler information with the auto sampler information values passed in.
+ Only updates object values in memory, does not write to disk.
+
+
+ The auto sampler information.
+
+
+ True if successfully updated auto sampler information values.
+ If false: Check errors.
+
+
+
+
+ Update the raw file sequence row with the sample information values passed in.
+ Only updates object values in memory, does not write to disk.
+
+
+ The sequence Row Sample Information.
+
+
+ True if successfully updated raw file values.
+ If false: Check errors (IFileError).
+
+
+
+
+ Update creator logon value for the raw file being written.
+
+
+ The creator logon.
+
+
+ True if successfully updated value.
+ If false: Check errors (IFileError).
+
+
+
+
+ Update creator id value for the raw file being written.
+
+
+ The creator id.
+
+
+ True if successfully updated value.
+ If false: Check errors (IFileError).
+
+
+
+
+ Update all user labels for the raw file being written.
+ Max 5 labels. If array parameter is > 5 then all values are ignored.
+
+
+ The user label.
+
+
+ True if successfully updated value.
+ If false: Check errors (IFileError).
+
+
+
+
+ Update specific user label value at index for the raw file being written.
+
+
+ The user label.
+
+
+ The index into labels array to update.
+
+
+ True if successfully updated value.
+ If false: Check errors (IFileError).
+
+
+
+
+ Update creation date for the raw file being written.
+
+
+ The creation date.
+
+
+ True if successfully updated value.
+ If false: Check errors (IFileError).
+
+
+
+
+ Adds an audit data entry to the audit trail list of the raw file.
+
+
+ The time changed.
+
+
+ What changed by integer value.
+
+
+ The comment.
+
+
+ The .
+ True if successfully updated value.
+ If false: Check errors (IFileError).
+
+
+
+
+ Saves the instrument method into the raw file
+
+ The instrument method file path.
+ List of virtual instrument storage names.
+ List of virtual instrument descriptions.
+
+ [Optional] it has a default value of true.
+ The should be deleted flag indicating whether the temporary instrument method should be removed after the raw file writer is closed.
+
+ True if instrument method successfully saved to raw file.
+ If false: Check errors (IFileError).
+
+
+
+ Saves raw file to disk with current values. Should be called after all updates are finished.
+
+
+ True only if saving part of the raw file for the acquisition raw file.
+ On partial save, only raw file header, auto sampler information, sequence row information, and raw file info are written. No scan data written.
+
+
+ True if file successfully written to disk.
+ If false: Check errors (IFileError).
+
+
+
+
+ Defines a way to get an MS scan, which is
+ permitted to hold a reference to the internal (unmanaged) data
+ of a scan. This can be an advantage when an application
+ needs several parts of a scan. A disadvantage is that is must be disposed.
+
+
+
+
+ Gets the scan index
+
+
+
+
+ Reads the segmented scan (centroid or profile data)
+
+ Interface to read the scan
+
+
+
+ This method is similar to
+ GetSegmentedScanFromScanNumber or GetSimplifiedCentroids in the IRawData interface.
+ The method returns only the mass and intensity values from
+ the scan data for a scan, reading form the centroids if FT data is available.
+ Values for flags etc. are not returned, saving data space and improving efficiency.
+ The method is designed for improved performance in custom XIC generators.
+
+ Mass and intensity values from the scan.
+
+
+
+ Gets the FT centroids
+
+ Interface to read the centroids
+
+
+
+ Gets the noise data for the FT scan
+
+ Noise data for this raw scan
+
+
+
+ Gets the scan filter
+
+ Interface to read the filter
+
+
+
+ Gets the scan event
+
+ Interface to read the scan event
+
+
+
+ Gets a value indicating whether this is an FT formatted MS scan.
+
+
+
+
+ General interface to regression calculations (calibration curves)
+ Specific instances of this can be generated by using the factory: Calibration.CreateCalibrationCurve
+
+
+
+
+ Find the predicted amount given a response ratio
+
+ The response ratio of the peak being measured
+ The calculated amount for this response ratio
+
+
+
+ Find the response ratio which represents a calculated amount.
+ This is the inverse of the calculation needed for quantitation.
+
+ The known amount
+ The response ratio which would represent this amount
+
+
+
+ Gets a statistical result from a regression calculation.
+ For curves not supporting this, return -1
+
+
+
+
+ Gets the calibration equation (such as "y=mx+c")
+
+
+
+
+ Gets a value indicating whether this regression is fitted correctly.
+ After constructing a calibration object, it can only be used if "Ok".
+ For example: if there are no calibration levels, Ok will be false.
+
+
+
+
+ Create a table of data to plot on a calibration curve
+
+ The number of calibration curve points to supply
+ If useMaxValue is true, plotting is performed between 0 and the
+ larger of the base amount of the largest level and maxValue.
+ Maximum value for the curve (if useMaxValue is set)
+ The generated curve data, or null if there are insufficient required points specified
+
+
+
+ Gets the highest X value on the calibration curve
+
+
+
+
+ Gets the highest Y value on the calibration curve
+
+
+
+
+ Information about this device stream
+
+
+
+
+ Gets the count of recorded spectra
+
+
+
+
+ Gets the count of status log entries
+
+
+
+
+ Gets the count of tune data entries
+
+
+
+
+ Gets the count of error log entries
+
+
+
+
+ Gets the count of "scan events"
+
+
+
+
+ Gets the count of "trailer extra" records.
+ Typically, same as the count of scans.
+
+
+
+
+ Gets a value indicating whether this file is being created.
+ 0: File is complete. All other positive values: The file is in acquisition.
+ Negative values are undefined.
+
+
+
+
+ Gets the mass resolution of this instrument.
+
+
+
+
+ Gets the expected data acquisition time.
+
+
+
+
+ Gets the tolerance units
+
+
+
+
+ Gets the number of digits of precision suggested for formatting masses
+ in the filters.
+
+
+
+
+ Gets the first comment about this data stream.
+
+
+
+
+ Gets the second comment about this data stream.
+
+
+
+
+ Gets the first spectrum (scan) number (typically 1).
+
+
+
+
+ Gets the last spectrum (scan) number.
+ If this is less than 1, then there are no scans acquired yet.
+
+
+
+
+ Gets the time of first scan in file
+
+
+
+
+ Gets the time of last scan in file
+
+
+
+
+ Gets the lowest recorded mass in file
+
+
+
+
+ Gets the highest recorded mass in file
+
+
+
+
+ Gets the max intensity.
+
+
+
+
+ Gets the max integrated intensity.
+
+
+
+
+ The SampleInformation interface.
+
+
+
+
+ Gets or sets the comment about sample (from user).
+
+
+
+
+ Gets or sets the Code to identify sample.
+
+
+
+
+ Gets or sets the description of sample.
+
+
+
+
+ Gets or sets the vial or well form auto sampler.
+
+
+
+
+ Gets or sets the amount of sample injected.
+
+
+
+
+ Gets or sets bar code from scanner (if attached).
+
+
+
+
+ Gets or sets the bar code status.
+
+
+
+
+ Gets or sets a name to identify the Calibration or QC level associated with this sample.
+ Empty if this sample does not contain any calibration compound.
+
+
+
+
+ Gets or sets the bulk dilution factor (volume correction) of this sequence row.
+
+
+
+
+ Gets or sets the instrument method filename of this sequence row.
+
+
+
+
+ Gets or sets the name of acquired file (excluding path).
+
+
+
+
+ Gets or sets the name of calibration file.
+
+
+
+
+ Gets or sets the ISTD amount of this sequence row.
+
+
+
+
+ Gets or sets the row number.
+
+
+
+
+ Gets or sets the path to original data.
+
+
+
+
+ Gets or sets the processing method filename of this sequence row.
+
+
+
+
+ Gets or sets the type of the sample.
+
+
+
+
+ Gets or sets the sample volume of this sequence row.
+
+
+
+
+ Gets or sets the sample weight of this sequence row.
+
+
+
+
+ Gets or sets the collection of user text.
+
+
+
+
+ Access to data in a scan
+
+
+
+
+ Gets or sets a value indicating whether, when requesting "Preferred data", the centroid stream will be returned.
+ For example "", "".
+ If this property is false, or there is no centroid stream, then these methods will return
+ the data from . For greater efficiency, callers should cache the return of "".
+ Typically data processing, such as elemental compositions, should use these methods.
+
+
+
+
+ Gets the Mass for default data stream (usually centroid stream, if present).
+ Falls back to data if centroid stream is not preferred or not present
+
+
+
+
+ Gets Resolutions for default data stream (usually centroid stream, if present).
+ Returns an empty array if centroid stream is not preferred or not present
+
+
+
+
+ Gets Noises for default data stream (usually centroid stream, if present).
+ Returns an empty array if centroid stream is not preferred or not present
+
+
+
+
+ Gets Intensity for default data stream (usually centroid stream, if present).
+ Falls back to data if centroid stream is not preferred or not present
+
+
+
+
+ Gets peak flags (such as saturated) for default data stream (usually centroid stream, if present).
+ Falls back to data if centroid stream is not preferred or not present
+
+
+
+
+ Gets Mass of base peak default data stream (usually centroid stream, if present).
+ Falls back to data if centroid stream is not preferred or not present
+
+
+
+
+ Gets Resolution of base peak for default data stream (usually centroid stream, if present).
+ Falls back to zero if centroid stream is not preferred or not present
+
+
+
+
+ Gets Noise of base peak for default data stream (usually centroid stream, if present).
+ Falls back to zero if centroid stream is not preferred or not present
+
+
+
+
+ Gets peak flags (such as saturated) for default data stream (usually centroid stream, if present).
+ Falls back to data if centroid stream is not preferred or not present
+
+
+
+
+ Gets The data for the scan
+
+
+
+
+ Gets A second data stream for the scan
+
+
+
+
+ Gets a value indicating whether this scan has a centroid stream.
+
+
+
+
+ Gets or Header information for the scan
+
+
+
+
+ Gets Type of scan (for filtering)
+
+
+
+
+ Gets the Tolerance value.
+
+
+
+
+ Gets the mass resolution for all scan arithmetic operations
+
+
+
+
+ Gets a value indicating whether the User Tolerance value is being used.
+
+
+
+
+ Access to extdnded scans, which may conain charge envelope data.
+
+
+
+
+ Gets centroids with additional charge envelope information (when available)
+
+
+
+
+ Interface to provide algorithms to add scans.
+
+
+
+
+ Creates a sum of two scans.
+
+ The first scan.
+ The second scan
+ The sum"first+second"
+
+
+
+ Caching of scans, which may be provided by an averager
+
+
+
+
+ Gets or sets the maximum number of scans kept in a cache.
+ Setting ScansCached >0 will enable caching of recently read scans.
+ This is useful if averaging multiple overlapping ranges of scans.
+
+
+
+
+ Options which can be used to control the Ft / Orbitrap averaging
+
+
+
+
+ The default maximum number of peaks that may have charge determinations.
+
+
+
+
+ Gets or sets the maximum number of ions which are sent to the charge pattern calculation (starting from most intense)
+
+
+
+
+ Gets or sets a value indicating whether parallel code may be used for resampling and merging scans.
+ Tuning option: Permit separate threads to be used for resampling profiles.
+
+
+
+
+ Gets or sets the maximum number of scans which can be merged at once.
+ This feature is currently not yet implemented, and the value is ignored.
+ When MergeInParallel is enabled: this restricts the number of scans which are merged in each group.
+ Setting this too large may result in more memory allocation for "arrays of results to merge"
+ Default: 10
+
+
+
+
+ Gets or sets the minimum number of Re-sample tasks per thread.
+ Tuning parameter when MergeInParallel is set.
+ Each scan is analyzed: Determining mass regions which contain non-zero data,
+ and re-sampling the intensity data aligned to a set of output bins.
+ After all scans have been re-sampled, the re-sampled data has to be merged into the final output.
+ Creating re-sampled data for profiles is a fairly fast task. It may be inefficient to queue workers to
+ created the merged data for each scan in the batch.
+ Setting this >1 will reduce threading overheads, when averaging small batches of scans with low intensity peaks.
+ Default: 2.
+ This feature only affects the re-sampling, as the final merge of the re-sampled data is single threaded.
+
+
+
+
+ Gets or sets a value indicating whether to use the noise and baseline table.
+ When set: The averaging algorithm calculates average noise based
+ on a noise table obtained (separately) from the raw file.
+ The "IRawData" interface doe not have methods to obtain
+ this "noise and baseline table" from the raw file.
+ So: The scan averaging algorithm (by default) uses noise information
+ saved with centroid peaks when calculating the averaged noise.
+ This option is only effective when data is read via the IRawDataPlus interface.
+
+
+
+
+ Initializes a new instance of the class.
+ default constructor
+
+
+
+
+ The ScanCreator interface.
+
+
+
+
+ create segmented scan.
+
+
+ The index into the supplied table of scans (on initialize)
+
+
+ The .
+
+ when index is outside of the scan numbers array
+
+
+
+
+ Create a centroid stream.
+
+
+ The index into the supplied table of scans (on construction)
+
+
+ The .
+
+ when index is outside of the scan numbers array
+
+
+
+
+ Initialize the scan creator.
+ This provides the set of scans which will be requested.
+ This must only be called once.
+
+
+ The scan numbers.
+
+
+ The cache limit.
+
+
+
+
+ Interface to provide algorithms to average and subtract scans.
+
+
+
+
+ Gets or sets the scan reader.
+
+
+
+
+ Gets the average scan between the given times.
+
+
+ start time
+
+
+ end time
+
+
+ filter string
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ the averaged scan.
+
+
+
+
+ Gets the average scan between the given times.
+
+
+ start time
+
+
+ end time
+
+
+ filter string
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ the averaged scan.
+
+
+
+
+ Gets the average scan between the given times.
+
+
+ start scan
+
+
+ end scan
+
+
+ filter string
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ the averaged scan.
+
+
+
+
+ Gets the average scan between the given times.
+
+
+ start scan
+
+
+ end scan
+
+
+ filter string
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ the averaged scan.
+
+
+
+
+ Calculates the average spectra based upon the list supplied.
+ The application should filter the data before making this code, to ensure that
+ the scans are of equivalent format. The result, when the list contains scans of
+ different formats (such as linear trap MS centroid data added to orbitrap MS/MS profile data) is undefined.
+ If the first scan in the list contains "FT Profile",
+ then the FT data profile is averaged for each
+ scan in the list. The combined profile is then centroided.
+ If the first scan is profile data, but not orbitrap data:
+ All scans are summed, starting from the final scan in this list, moving back to the first scan in
+ the list, and the average is then computed.
+ For simple centroid data formats: The scan stats "TIC" value is used to find the "most abundant scan".
+ This scan is then used as the "first scan of the average".
+ Scans are then added to this average, taking scans alternatively before and after
+ the apex, merging data within tolerance.
+
+
+ list of ScanStatistics
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ The average of the listed scans.
+
+
+
+
+ Calculates the average spectra based upon the list supplied.
+ The application should filter the data before making this code, to ensure that
+ the scans are of equivalent format. The result, when the list contains scans of
+ different formats (such as linear trap MS centroid data added to orbitrap MS/MS profile data) is undefined.
+ If the first scan in the list contains "FT Profile",
+ then the FT data profile is averaged for each
+ scan in the list. The combined profile is then centroided.
+ If the first scan is profile data, but not orbitrap data:
+ All scans are summed, starting from the final scan in this list, moving back to the first scan in
+ the list, and the average is then computed.
+ For simple centroid data formats: The scan stats "TIC" value is used to find the "most abundant scan".
+ This scan is then used as the "first scan of the average".
+ Scans are then added to this average, taking scans alternatively before and after
+ the apex, merging data within tolerance.
+
+
+ list of scans to average
+
+ mass tolerance settings. If not supplied, these are default from the raw file
+
+ Merge data from scans
+ which were not scanned over a similar range.
+ Only applicable when scans only have a single segment.
+ By default: Scans are considered incompatible if:
+ The span of the scanned mass range differs by 10%
+ The start or end of the scanned mass range differs by 10%
+ If this is set as "true" then any mass ranges will be merged.
+ Default: false
+
+
+ The average of the listed scans.
+
+
+
+
+ Subtracts the background scan from the foreground scan
+
+ Foreground data (Left of "scan-scan" operation
+ Background data (right of"scan-scan" operation)
+ (optional) mass tolerance settings. If not supplied, values set in "foreground" are used
+ The result of foreground-background
+
+
+
+ Interface to provide algorithms to average scans.
+
+
+
+
+ Gets or sets Options For FT/Orbitrap data.
+
+
+
+
+ Gets the average scan between the given times.
+ Mass tolerance is taken from default values in the raw file
+
+
+ start time
+
+
+ end time
+
+
+ filter string
+
+
+ the averaged scan.
+
+
+
+
+ Gets the average scan between the given times.
+
+
+ start time
+
+
+ end time
+
+
+ filter string
+
+
+ mass tolerance
+
+
+ unit of tolerance
+
+
+ returns the averaged scan.
+
+
+
+
+ Gets the average scan between the given scan numbers.
+ Mass tolerance is taken from default values in the raw file
+
+
+ start scan
+
+
+ end scan
+
+
+ filter string
+
+
+ returns the averaged scan.
+
+
+
+
+ Gets the average scan between the given scan numbers.
+ This finds the list all scans over the scan range, which pass the supplied filter.
+ The scans are then averaged, as described by
+
+
+ start scan of the range to average
+
+
+ end scan of the range to average
+
+
+ Filter string. Only scans passing this filter are averaged.
+
+
+ mass tolerance, used to merge close peaks.
+
+
+ unit of tolerance
+
+
+ returns the averaged scan.
+
+
+
+
+ Calculates the average spectra based upon the list supplied.
+ The application should filter the data before making this code, to ensure that
+ the scans are of equivalent format. The result, when the list contains scans of
+ different formats (such as linear trap MS centroid data added to orbitrap MS/MS profile data) is undefined.
+ If the first scan in the list contains "FT Profile",
+ then the FT data profile is averaged for each
+ scan in the list. The combined profile is then centroided.
+ If the first scan is profile data, but not orbitrap data:
+ All scans are summed, starting from the final scan in this list, moving back to the first scan in
+ the list, and the average is then computed.
+ For simple centroid data formats: The scan stats "TIC" value is used to find the "most abundant scan".
+ This scan is then used as the "first scan of the average".
+ Scans are then added to this average, taking scans alternatively before and after
+ the apex, merging data within tolerance.
+
+
+ list of ScanStatistics
+
+
+ The average of the listed scans.
+
+
+
+
+ The ScanDependentDetails interface.
+
+
+
+
+ Gets the index of the scan.
+
+
+ The index of the scan.
+
+
+
+
+ Gets the filter string.
+
+
+ The filter string.
+
+
+
+
+ Gets the precursor array.
+
+
+ The precursor mass array.
+
+
+
+
+ Gets the isolation width array.
+
+
+ The isolation width array.
+
+
+
+
+ The ScanDependents interface.
+ Result of call to "GetScanDependents"
+ Provides a set of scan numbers which were created form a particular master scan.
+
+
+
+
+ Gets or sets the type of the raw file instrument.
+
+
+ The type of the raw file instrument.
+
+
+
+
+ Gets or sets the scan dependent detail array.
+
+
+ The scan dependent detail array.
+
+
+
+
+ The ScanEvent interface.
+ Determines how scans are done.
+
+
+
+
+ Convert to string.
+
+
+ The converted scanning method.
+
+
+
+
+ Gets the accurate mass setting.
+
+
+
+
+ Gets a value indicating whether this event is valid.
+
+
+
+
+ Gets a value indicating whether this is a custom event.
+ A custom event implies that any scan derived from this event could be different.
+ The scan type must be inspected to determine the scanning mode, and not the event.
+
+
+
+
+ Gets the source fragmentation mass range count.
+
+
+
+
+ Get the source fragmentation mass range, at a given index.
+
+
+ The index.
+
+
+ The mass range.
+
+
+
+
+ Gets the mass calibrator count.
+
+
+
+
+ Get the mass calibrator, at a given index.
+
+
+ The index, which should be from 0 to MassCalibratorCount -1
+
+
+ The mass calibrator.
+
+ Thrown when requesting calibrator above count
+
+
+
+ The IScanEventBase interface defines scanning features
+ which are common to "scan events" and "scan filters".
+
+
+
+
+ Gets the scan data format (profile or centroid).
+
+
+
+
+ Gets the polarity of the scan.
+
+ See for possible values
+
+
+
+ Gets the scan MS/MS power setting.
+
+ See for possible values
+
+
+
+ Gets the dependent scan setting.
+ A scan is "dependent" if the scanning method is based
+ on analysis of data from a previous scan.
+
+
+
+
+ Gets source fragmentation scan setting.
+
+
+
+
+ Gets the source fragmentation type setting.
+
+ See for possible values
+
+
+
+ Gets the scan type setting.
+
+ See for possible values
+
+
+
+ Gets the turbo scan setting.
+
+
+
+
+ Gets the ionization mode scan setting.
+
+ See for possible values
+
+
+
+ Gets the corona scan setting.
+
+
+
+
+ Gets the detector validity setting.
+ The property only contains valid information
+ when this is set to "DetectorType.Valid"
+
+ See for possible values
+
+
+
+ Gets the detector value.
+ This should only be used when valid.
+
+ Floating point detector value
+
+
+
+ Gets the wideband scan setting.
+
+
+
+
+ Gets the mass analyzer scan setting.
+
+ See for possible values
+
+
+
+ Gets the sector scan setting. Applies to 2 sector (Magnetic, electrostatic) Mass spectrometers, or hybrids.
+
+ See for possible values
+
+
+
+ Gets the lock scan setting.
+
+
+
+
+ Gets the field free region setting.
+
+ See for possible values
+
+
+
+ Gets the ultra scan setting.
+
+
+
+
+ Gets the enhanced scan setting.
+
+
+
+
+ Gets the multi-photon dissociation setting.
+
+
+
+
+ Gets the multi-photon dissociation value.
+
+ Floating point multi-photon dissociation value
+
+
+
+ Gets the electron capture dissociation setting.
+
+
+
+
+ Gets the electron capture dissociation value.
+
+ Floating point electron capture dissociation value
+
+
+
+ Gets the photo ionization setting.
+
+
+
+
+ Gets pulsed dissociation setting.
+
+
+
+
+ Gets the pulsed dissociation value.
+
+ Floating point pulsed dissociation value
+
+
+
+ Gets the electron transfer dissociation setting.
+
+
+
+
+ Gets the electron transfer dissociation value.
+
+ Floating point electron transfer dissociation value
+
+
+
+ Gets the higher energy CID setting.
+
+
+
+
+ Gets the higher energy CID value.
+
+ Floating point higher energy CID value
+
+
+
+ Gets the Multiplex type
+
+
+
+
+ Gets the parameter a.
+
+
+
+
+ Gets the parameter b.
+
+
+
+
+ Gets the parameter f.
+
+
+
+
+ Gets the Multi notch (Synchronous Precursor Selection) type
+
+
+
+
+ Gets the parameter r.
+
+
+
+
+ Gets the parameter v.
+
+
+
+
+ Gets the event Name.
+
+
+
+
+ Gets supplemental activation type setting.
+
+
+
+
+ Gets MultiStateActivation type setting.
+
+
+
+
+ Gets Compensation Voltage Option setting.
+
+
+
+
+ Gets Compensation Voltage type setting.
+
+ See for possible values
+
+
+
+ Gets encoded form of segment and scan event number.
+
+ HIWORD == segment, LOWORD == scan type
+
+
+
+ Gets number of (precursor) masses
+
+ The size of mass array
+
+
+
+ Gets the reaction data for the mass at 0 based index.
+ Descries how a particular MS/MS precursor mass is fragmented.
+ Equivalent to calling GetMass, GetEnergy, GetPrecursorRangeValidity, GetFirstPrecursorMass
+ GetLastPrecursorMass, GetIsolationWidth, GetIsolationWidthOffset, GetEnergyValid
+ GetActivation, GetIsMultipleActivation.
+ Depending on the implementation of the interface, this call may be more efficient
+ than calling several of the methods listed.
+
+ index of reaction
+ reaction details
+
+
+
+ Retrieves mass value for MS step at 0-based index.
+
+
+ Use to get the count of mass values.
+
+
+ Index of mass value to be retrieved
+
+
+ Mass value of MS step
+
+ Will be thrown when index >= MassCount
+
+
+
+ Retrieves precursor(collision) energy value for MS step at 0-based index.
+
+
+ Use to get the count of energies.
+
+
+ Index of precursor(collision) energy to be retrieved
+
+
+ precursor(collision) energy of MS step
+
+
+
+
+ Determine if a precursor range is valid.
+
+
+ The index.
+
+
+ true if valid
+
+
+
+
+ Gets the first precursor mass.
+ This is only valid data where "GetPrecursorRangeValidity" returns true for the same index.
+
+
+ The index.
+
+
+ The first mass
+
+
+
+
+ Gets the last precursor mass.
+ This is only valid data where "GetPrecursorRangeValidity" returns true for the same index.
+
+
+ The index.
+
+
+ The last mass
+
+
+
+
+ Gets the isolation width.
+
+
+ The index.
+
+
+ The isolation width
+
+
+
+
+ Gets the isolation width offset.
+
+
+ The index.
+
+
+ The isolation width offset
+
+
+
+
+ Retrieves precursor(collision) energy validation flag at 0-based index.
+
+
+ Use to get the count of precursor(collision) energy validations.
+
+
+ Index of precursor(collision) energy validation to be retrieved
+
+
+ precursor(collision) energy validation of MS step;
+ See for possible values
+
+
+
+
+ Retrieves activation type at 0-based index.
+
+
+ Use to get the count of activations.
+
+
+ Index of activation to be retrieved
+
+
+ activation of MS step;
+ See for possible values
+
+
+
+
+ Retrieves multiple activations flag at 0-based index of masses.
+
+
+ Use to get the count of masses.
+
+
+ Index of flag to be retrieved
+
+
+ true if mass at given index has multiple activations; false otherwise
+
+
+
+
+ Gets the number of mass ranges for final scan
+
+ The size of mass range array
+
+
+
+ Retrieves mass range for final scan at 0-based index.
+
+
+ Use to get the count of mass ranges.
+
+
+ Index of mass range to be retrieved
+
+
+ Mass range for final scan at 0-based index
+
+ Will be thrown when index >= MassRangeCount
+
+
+
+ Gets the number of source fragmentation info values
+
+ The size of source fragmentation info array
+
+
+
+ Retrieves a source fragmentation info value at 0-based index.
+
+
+ Use to get the count of source
+ fragmentation info values.
+
+
+ Index of source fragmentation info to be retrieved
+
+
+ Source Fragmentation info value at 0-based index
+
+ Will be thrown when index >= SourceFragmentationInfoCount
+
+
+
+ The ScanEvents interface.
+
+
+
+
+ Gets the number segments.
+
+
+
+
+ Gets the number of events in a specific segment (0 based)
+
+ The segment number
+ The number of events in this segment
+
+
+
+ Get an event, indexed by the segment and event numbers (zero based).
+
+
+ The segment.
+
+
+ The event number.
+
+
+ The event.
+
+
+
+
+ Get an event, using indexed event number (zero based).
+ This gets events from all segments in order,
+ use "ScanEvents" to get the total count of events.
+
+
+ The event Number.
+
+
+ The event.
+
+
+
+
+ Gets the total number of scan events, in all segments
+
+
+
+
+ The filter rule for accurate mass.
+
+
+
+
+ Accurate mass mode off
+
+
+
+
+ Accurate mass mode on
+
+
+
+
+ Accurate mass mode is internal (reference or lock peak in this scan)
+
+
+
+
+ Accurate mass mode is external (no reference in this scan)
+
+
+
+
+ Accept any accurate mass mode
+
+
+
+
+ Specified whether the source fragmentation info is valid.
+
+
+
+
+ The fragmentation is "energy"
+
+
+
+
+ No specific type.
+
+
+
+
+ Meta Filter
+
+
+
+
+ No meta filter
+
+
+
+
+ HCD meta filter
+
+
+
+
+ ETD meta filter
+
+
+
+
+ CID meta filter
+
+
+
+
+ UVPD meta filter.
+
+
+
+
+ The ScanFilter interface defines a set of rules for selecting scans.
+ For example: Testing if a scan should be included in a chromatogram.
+ Many if the rules include an "Any" choice, which implies that this rule
+ will not be tested.
+ Testing logic is included in the class
+ The class contains methods related to filters, the filter helper and raw data.
+
+
+
+
+ Gets the accurate mass filter rule.
+
+
+
+
+ Gets or sets the mass precision, which is used to format the filter (in ToString).
+
+
+
+
+ Gets or sets additional instrument defined filters (these are bit flags).
+ See enum MetaFilterType.
+
+
+
+
+ Gets the number of unique masses, taking into account multiple activations.
+ For example: If this is MS3 data, there are two "parent masses",
+ but they may have multiple reactions applied.
+ If the first stage has two reactions, then there are a total of
+ 3 reactions, for the 2 "unique masses"
+
+
+
+
+ Gets or sets an array of values which determines if the source fragmentation values are valid.
+
+
+
+
+ Get source fragmentation info valid, at zero based index.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ Convert an index to multiple activation index.
+ Converts a simple mass index to the index to the unique mass,
+ taking into account multiple activations.
+
+
+ The index to convert.
+
+
+ The index of the unique mass.
+
+
+
+
+ Gets or sets the locale name.
+ This can be used to affect string conversion.
+
+
+
+
+ Convert to string.
+ Mass values are converted as per the precision.
+
+
+ The .
+
+
+
+
+ Retrieves a compensation voltage (cv) value at 0-based index.
+
+
+ Use to get the count of
+ compensation voltage values.
+
+
+ Index of compensation voltage to be retrieved
+
+
+ Compensation voltage value (cv) at 0-based index
+
+
+
+
+ Gets the number of compensation voltage values.
+ This is the number of values related to cv mode.
+ 1 for "single value", 2 for "ramp" and 1 per mass range for "SIM".
+
+
+
+
+ Gets the number of Source Fragmentation values.
+ This is the number of values related to sid mode.
+ 1 for "single value", 2 for "ramp" and 1 per mass range for "SIM".
+
+
+
+
+ Retrieves a source fragmentation value (sid) at 0-based index.
+
+
+ Use to get the count of
+ source fragmentation values.
+
+
+ Index of source fragmentation value to be retrieved
+
+
+ Source Fragmentation Value (sid) at 0-based index
+
+
+
+
+ Gets or sets the scan data type (centroid or profile) filtering rule.
+
+
+
+
+ Gets or sets the polarity (+/-) filtering rule.
+
+ See for possible values
+
+
+
+ Gets or sets the scan power or MS/MS mode filtering rule, such as MS3 or Parent scan.
+
+ See for possible values
+
+
+
+ Gets or sets the dependent scan filtering rule.
+
+
+
+
+ Gets or sets source fragmentation scan filtering rule.
+
+
+
+
+ Gets or sets the source fragmentation type filtering rule.
+
+ See for possible values
+
+
+
+ Gets or sets the scan type filtering rule.
+
+ See for possible values
+
+
+
+ Gets or sets the mass analyzer scan filtering rule.
+
+ See for possible values
+
+
+
+ Gets or sets the detector scan filtering rule.
+
+ See for possible values
+
+
+
+ Gets or sets the turbo scan filtering rule.
+
+
+
+
+ Gets or sets the ionization mode filtering rule.
+
+ See for possible values
+
+
+
+ Gets or sets the corona scan filtering rule.
+
+
+
+
+ Gets or sets the detector value.
+ This is used for filtering when the Detector filter is enabled.
+
+ Floating point detector value
+
+
+
+ Gets or sets the wideband filtering rule.
+
+
+
+
+ Gets or sets the sector scan filtering rule.
+
+ See for possible values
+
+
+
+ Gets or sets the lock scan filtering rule.
+
+
+
+
+ Gets or sets the field free region filtering rule.
+
+ See for possible values
+
+
+
+ Gets or sets the ultra scan filtering rule.
+
+
+
+
+ Gets or sets the enhanced scan filtering rule.
+
+
+
+
+ Gets or sets the multi-photon dissociation filtering rule.
+
+
+
+
+ Gets or sets the multi-photon dissociation value.
+
+ Floating point multi-photon dissociation value
+
+
+
+ Gets or sets the electron capture dissociation filtering rule.
+
+
+
+
+ Gets or sets the electron capture dissociation value.
+
+ Floating point electron capture dissociation value
+
+
+
+ Gets or sets the photo ionization filtering rule.
+
+
+
+
+ Gets or sets pulsed dissociation filtering rule.
+
+
+
+
+ Gets or sets the pulsed dissociation value.
+ Only applies when the PulsedQDissociation rule is used.
+
+ Floating point pulsed dissociation value
+
+
+
+ Gets or sets the electron transfer dissociation filtering rule.
+
+
+
+
+ Gets or sets the electron transfer dissociation value.
+ Only used when the "ElectronTransferDissociation" rule is used.
+
+ Floating point electron transfer dissociation value
+
+
+
+ Gets or sets the higher energy CID filtering rule.
+
+
+
+
+ Gets or sets the higher energy CID value.
+ Only applies when the "HigherEnergyCiD" rule is used.
+
+
+
+
+ Gets or sets the Multiplex type filtering rule.
+
+
+
+
+ Gets or sets the parameter a filtering rule..
+
+
+
+
+ Gets or sets the parameter b filtering rule..
+
+
+
+
+ Gets or sets the parameter f filtering rule..
+
+
+
+
+ Gets or sets the SPS (Synchronous Precursor Selection) Multi notch filtering rule.
+
+
+
+
+ Gets or sets the parameter r filtering rule..
+
+
+
+
+ Gets or sets the parameter v filtering rule..
+
+
+
+
+ Gets or sets the event Name. Used for "compound name" filtering.
+
+
+
+
+ Gets or sets supplemental activation type filter rule.
+
+
+
+
+ Gets or sets MultiStateActivation type filtering rule.
+
+
+
+
+ Gets or sets Compensation Voltage filtering rule.
+
+
+
+
+ Gets or sets Compensation Voltage type filtering rule.
+
+ See for possible values
+
+
+
+ Defines a method of parsing a scan filter.
+ This could be used for UI validation of scan filter text, without an
+ open raw file.
+
+
+
+
+ Gets or sets the precision expected for collision energy
+
+
+
+
+ Gets or sets the precision expected for mass values
+
+
+
+
+ Parse a string, returning the scan filter codes.
+
+ String to parse
+ Filters in the supplied string, or null if the string cannot be parsed.
+ The string can be considered incorrect if there are too many digits in a numeric value
+ or too many digits after the decimal point, for a mass or energy.
+
+
+
+
+ Read only access to scan statistics
+
+
+
+
+ Gets the intensity of highest peak in scan
+
+
+
+
+ Gets the mass of largest peak in scan
+
+
+
+
+ Gets the highest mass in scan
+
+
+
+
+ Gets the lowest mass in scan
+
+
+
+
+ Gets the Number of points in scan
+
+
+
+
+ Gets the indication of data format used by this scan
+
+
+
+
+ Gets the event (scan type) number within segment
+
+
+
+
+ Gets the number of the scan
+
+
+
+
+ Gets the time segment number for this event
+
+
+
+
+ Gets the time at start of scan (minutes)
+
+
+
+
+ Gets the total Ion Current for scan
+
+
+
+
+ Defines information which can select a scan.
+ For example: Determine if a scan should be included in a chromatogram.
+
+
+
+
+ Gets or sets a value indicating whether the "scan filter" will be used as a selection mechanism.
+
+
+
+
+ Gets or sets the scan filter.
+ If UseFilter is false, or this is null, it is not used as a selection mechanism.
+
+
+
+
+ Gets or sets the name.
+ This is the component or compound name list to filter against.
+ If this is null or empty, it is not used as a selection mechanism.
+
+
+
+
+ Read only access to scan statistics
+ Extends data from the index.
+
+
+
+
+ Gets the longest wavelength in PDA scan
+
+
+
+
+ Gets the shortest wavelength in PDA scan
+
+
+
+
+ Gets the number of
+ channels acquired in this scan, if this is UV or analog data,
+
+
+
+
+ Gets a value indicating whether this scan contains centroid data (else profile0
+
+
+
+
+ Gets a String defining the scan type, for filtering
+
+
+
+
+ Gets the frequency.
+
+
+
+
+ Gets a value indicating whether is uniform time.
+
+
+
+
+ Gets the absorbance unit scale.
+
+
+
+
+ Gets the wave length step.
+
+
+
+
+ Gets the cycle number.
+
+ Cycle number used to associate events within a scan event cycle.
+ For example, on the first cycle of scan events, all the events
+ would set this to '1'. On the second cycle, all the events would
+ set this to '2'. This field must be set by devices if supporting
+ compound names for filtering. However, it may be set in all
+ acquisitions to help processing algorithms.
+
+
+
+
+
+ Interface to provide algorithms to subtract scans.
+
+
+
+
+ Creates a difference of two scans.
+
+ The scan containing signal.
+ The scan containing background
+ The difference "foregroundScan-backgroundScan"
+
+
+
+ Interface for Access to the data in a segmented scan
+
+
+
+
+ Gets the number of segments
+
+
+
+
+ Gets the number of data points in each segment
+
+
+
+
+ Gets Intensities for each peak
+
+
+
+
+ Gets Masses or wavelengths for each peak
+
+
+
+
+ Gets Flagging information (such as saturated) for each peak
+
+
+
+
+ Gets the Mass ranges for each scan segment
+
+
+
+
+ Interface to read a sequence (SLD) file.
+
+
+
+
+ Gets the file header for the sequence
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets a value indicating whether the last file operation caused an error
+
+
+
+
+
+ Gets a value indicating whether true if a file was successfully opened.
+ Inspect "FileError" when false
+
+
+
+
+ Gets additional information about a sequence
+
+
+
+
+ Gets the set of samples in the sequence
+
+
+
+
+ Interface to get information about a sequence
+
+
+
+
+ Gets the display width of each sequence column
+
+
+
+
+ Gets the column order (see home page?)
+
+
+
+
+ Gets the sequence bracket type.
+ This determines which groups of samples use the same calibration curve.
+
+
+
+
+ Gets the set of column names for application specific columns
+
+
+
+
+ Gets a description of the auto-sampler tray
+
+
+
+
+ Gets the user configurable column names
+
+
+
+
+ Provides methods to create and write samples to a sequence file.
+
+
+
+
+ Gets the file header for the sequence
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets a value indicating whether the last file operation caused an error
+
+
+
+
+
+ Gets or sets additional information about a sequence
+
+
+
+
+ Gets the set of samples in the sequence
+
+
+
+
+ Gets the name of the sequence file.
+
+
+
+
+ Gets or sets the sequence bracket type.
+ This determines which groups of samples use the same calibration curve.
+
+
+
+
+ Gets or sets a description of the auto-sampler tray
+
+
+
+
+ Sets the user label at given 0-based label index.
+
+
+ SampleInformation.MaxUserTextColumnCount determines the maximum number of user
+ column labels.
+
+ Index of user label to be set
+ New string value for user label to be set
+ true if successful; false otherwise
+
+
+
+ Retrieves the user label at given 0-based label index.
+
+
+ SampleInformation.MaxUserTextColumnCount determines the maximum number of user
+ column labels.
+
+ Index of user label to be retrieved
+ String containing the user label at given index
+
+
+
+ Update the sequence file header with the file header values passed in.
+ Only updates object values in memory, does not write to disk.
+ A default FileHeader is created with every new writer instance.
+
+
+ The file header object with values to use.
+
+
+
+
+ Saves Sequence data to disk.
+
+ True saved data to disk; false otherwise.
+
+
+
+ The SimpleScanAccess interface.
+ Defines the most basic data of a scan (mass and intensity)
+
+
+
+
+ Gets the list of masses of each centroid
+
+
+
+
+ Gets the list of Intensities for each centroid
+
+
+
+
+ The SimpleScanHeader interface.
+ Defines minimal data about a scan (its number and retention time)
+
+
+
+
+ Gets the retention time.
+
+
+
+
+ Gets the scan number.
+
+
+
+
+ Define a combination of both scan and header
+
+
+
+
+ Gets the scan header
+
+
+
+
+ Gets the scan data
+
+
+
+
+ Gets the event, which defines how this scan was created
+
+
+
+
+ Provides methods to return scan data, or centroid scan data as just mass and intensity values
+
+
+
+
+ This method is similar to GetSegmentedScanFromScanNumber in the IRawData interface.
+ The method returns only the mass and intensity values from
+ the scan data for a scan.
+ Values for flags etc. are not returned, saving data space and improving efficiency.
+ This method never returns "reference and exception peak" data.
+ The method is designed for improved performance in custom XIC generators.
+
+ The scan whose mass intensity data are needed
+ Mass and intensity values from the scan.
+
+
+
+ This method is similar to GetCentroidStream in the IRawData interface.
+ The method returns only the mass and intensity values from
+ the "centroid stream" data for a scan. This is also known as "Label Stream"
+ Values for flags etc. are not returned, saving data space and improving efficiency.
+ The method is designed for improved performance in custom XIC generators.
+
+ The scan whose mass intensity data are needed
+ Mass and intensity values from the scan "centroid data".
+
+
+
+ This method permits events to be read as a block for a range of scans,
+ which may reduce overheads involved in requesting one by one.
+ Events define how scans were acquired.
+ Potentially, in some data models, the same "event" may apply to several scans
+ so it is permissible for the same reference to appear multiple times.
+
+ The first scan whose event is needed
+ The last scan
+ An array of scan events
+
+
+
+ Log of a particular status value, over time
+
+
+
+
+ Gets the retention times for each value (x values to plot)
+
+
+
+
+ Gets the values logged for each time (the trended data, y values to plot).
+
+
+
+
+ Provides methods to write UV devices data.
+ Note: The following functions should be called before acquisition begins:
+ 1. Write Instrument Info
+ 2. Write Instrument Expected Run Time
+ 3. Write Status Log Header
+ If caller is not intended to use the status log data, pass a null argument or zero length array.
+ ex. WriteStatusLogHeader(null) or WriteStatusLogHeader(new IHeaderItem[0])
+
+
+
+
+ Writes both the UV type of the instrument data and the index into the disk.
+ This is the simplest format of data we write to a raw file since it doesn't have any
+ profile indexing and there is no segmentation of the data.
+
+ The UV type of instrument scan data.
+ The UV type of the scan index.
+ True if scan data and index are written to disk successfully, False otherwise
+
+
+
+ Defines the instrument data index for UV type devices
+
+
+
+
+ Gets the number of channels.
+
+
+
+
+ Gets the frequency.
+ For UV device only, it will be ignored by Analog devices
+
+
+
+
+ Gets a value indicating whether is uniform time.
+ For UV device only, it will be ignored by Analog devices
+
+
+
+
+ Copies the specified source.
+ Copy all the non-static fields of the current object to the new object.
+ Since all the fields are value type, a bit-by-bit copy of the field is performed.
+
+ Create a copy of the same object type
+
+
+
+ Contains interfaces to data, related to "MS data systems".
+ Includes some enums used within these interfaces
+ Used as an interchange between various common core DLLs.
+
+
+
+
+ Interface supporting type safe deep cloning of objects
+
+ Type to clone
+
+
+
+
+ Produce a deep copy of an object.
+ Must not contain any references into the original.
+
+ The deep cloned object
+
+
+
+
+ Make a cache of the "n" most recently used copies of an object.
+ For example: If different parts of an application are likely to read the same data from a file
+ multiple times, this can be used to reduce the file operations.
+
+ Type of object in the cache
+
+
+
+
+ Obtain a record from a data source, based on an index
+ Example: Scan from raw file, based on scan number.
+
+
+ Index of object
+
+
+ Object read from data source
+
+
+
+
+ Initializes a new instance of the class.
+ Initialize a cache
+
+
+ Maximum number of items in the cache. Oldest items are discarded when the cache is full
+
+
+ Delegate to read a new item, when not in the cache.
+
+
+
+
+ The queue item.
+
+
+
+
+ Gets or sets Index.
+
+
+
+
+ Gets or sets Value.
+
+
+
+
+ Get an item from the cache.
+ If the item is not available in the cache, it is requested from the item reader (supplied to the constructor).
+ When new items are read: This automatically caches new items, discarding oldest items.
+
+
+ Record number
+
+
+ item from the cache. May be "null" if this item is not in the cache, and the reader has no value for this index
+
+
+
+
+ Gets the number of cached items
+
+
+
+
+ Gets the maximum number of cached items
+
+
+
+
+ Gets or sets a value indicating whether all items returned from the cache are Deep Cloned.
+ If false: The cache only keeps references
+
+
+
+
+ empty the cache
+
+
+
+
+ ItemCollection is a custom collection of generic (user defined) types.
+ It allows for triggering events when items are added or removed. It also provides
+ a means to have read-only collection properties during XML serialization.
+
+ The type of the generic type.
+
+
+
+ Occurs when [item added].
+
+
+
+
+ Occurs when [item removed]. The sender parameter is a pointer to the object being changed.
+
+
+
+
+ Occurs when [items cleared]. The sender parameter is a pointer to the object being changed.
+
+
+
+
+ Gets a value indicating whether this instance has changed.
+
+
+ true if this instance has changed; otherwise, false.
+
+
+
+
+ Clears the has changed status of the item collection
+
+
+
+
+ Sort the collection
+
+ comparer, to order the sort
+
+
+
+ Sort the collection
+
+ comparison method, to order the sort
+
+
+
+ Add a range of items to the collection
+
+ Items to add
+
+
+
+ Inserts an element into the at the specified index and fires an event and a event.
+
+ The zero-based index at which should be inserted.
+ The object to insert. The value can be null for reference types.
+
+ is less than zero.-or- is greater than .
+
+
+
+ Removes the element at the specified index of the and fires an event and a property changed event.
+
+ The zero-based index of the element to remove.
+
+ is less than zero.-or- is equal to or greater than .
+
+
+
+ Removes all elements from the and fires a event and a property changed event.
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ true if the specified is equal to the current ; otherwise, false.
+
+ The parameter is null.
+
+
+
+ Serves as a hash function for a particular type.
+
+
+ A hash code for the current .
+
+
+
+
+ Provides a custom deep equality operation when checking for equality.
+
+ The value to compare.
+ true if the objects are equal
+
+
+
+ Performs the default settings for the data object. This can be overridden in each data object that implements the interface to perform
+ initialization settings. Method is empty (does nothing) in ItemCollection
+
+
+
+
+ Signals the changed.
+
+ Name of the property that has changed
+
+
+
+ Signals the changed.
+
+ The sender.
+ Name of the property.
+
+
+
+ Internal handler for property changed
+
+
+ The sender.
+
+
+ The args.
+
+
+
+
+ Occurs when a property value changes.
+
+
+
+
+ Contains general purpose data support, such as generic factories and collections.
+
+
+
+
+ Provides a delegate to open files for specific extensions
+ given the 'type' and 'assembly'.
+ The class calls the method that has a single string parameter
+ and returns T.
+ This class can also be used in conjunction with the
+ ''. In such a situation, it is not
+ required that Initialize' is called.
+
+ This should be an interface to data read from a file.
+
+
+
+
+ The default name of a method which can return {T}
+
+
+
+
+ Gets the delegate to invoke.
+
+
+
+
+ Gets the delegate to invoke a specified method.
+
+
+ The specified method.
+
+
+
+
+ Gets or sets the file extension associated with this instance.
+
+
+
+
+ Gets or sets a value indicating whether Initialized.
+
+
+
+
+ Initializes a new instance of the class.
+ Associates the extension, class type and the assembly
+ with this instance.
+ The default method with name "FileFactory" will be invoked.
+
+
+ file extension
+
+
+ fully qualified class name to initialize
+
+
+ fully qualified assembly name
+
+
+
+
+ Initializes a new instance of the class.
+ Associates the extension, class type and the assembly
+ with this instance.
+ The method name can also be passed if it is different.
+ However, for the method to be invoked it needs to match the
+ delegate's signature.
+
+
+ file extension
+
+
+ fully qualified class name to initialize
+
+
+ fully qualified assembly name
+
+
+ method name
+
+ initialize, but loading the required assembly and type
+
+
+
+ Initializes a new instance of the class.
+
+
+ The method to open a file which returns {T}, given a file name.
+
+
+ The file extension.
+
+
+
+
+ Initializes a new instance of the class.
+ This version permits a method to be specified, which is called with
+ parameters of the given types.
+
+
+ The type to initialize.
+
+
+ The assembly to load.
+
+
+ Name of the method.
+
+
+ Parameter types of the specified method
+
+
+ if set to true [initialize].
+
+
+
+
+ Loads the assembly, class and determines the method to invoke.
+ Needs to be called immediately after the constructor. This call is
+ required when the class is used as a stand-alone class.
+ If used with , then constructing
+ will initialize the .
+
+
+ The initialize.
+
+
+
+
+ Load the assembly
+
+
+ Permit exceptions to be thrown
+
+
+ True is successful
+
+
+ ArgumentException.
+
+
+ FileLoadException.
+
+
+ NotSupportedException Thrown when the expected method signature is not found.
+
+
+
+
+ Checks for a specific method signature as below.
+ (string)
+
+
+ Type loaded from assembly (by reflection)
+
+
+ NotSupportedException.
+
+
+
+
+ Opens the named file, returning an interface to access the file.
+ In error conditions, some adapters may throw exceptions
+ Caller should handle exceptions (typically "file not valid").
+
+
+ Name of file to open
+
+
+ The opened file, or null if no file can be opened
+
+
+ Sent if the DLL fails to return {T}. This may be thrown for a missing or corrupt file.
+
+
+ Failed to cast to specified type {T}.
+ This will be thrown if either, the return from the invoked factory method was null
+ or the returned object converts to a null {T} with an "as" operator.
+
+
+
+
+ Invoke the specified method.
+
+ The parameters.
+ An object of the expected type
+ Failed to cast returned object to T.
+
+
+
+
+ Represents the strongly typed collection of that can be
+ Individually accessed by index.
+ This collection can then use the contained items to open files, which can read the
+ required data, and return to the caller {T}.
+
+ Interface to data read from a file by the factory
+
+
+
+
+ Gets or sets the default file extension.
+ When a file name is sent to the method with no extension,
+ or an empty extension is sent to to ,
+ this extension is assumed.
+
+
+
+
+ Gets or sets a value indicating whether to aggressively attempt to open the file,
+ using any known format. It is only applicable if the supplied file
+ has no extension supplied. It is false by default.
+ For files with no extension, the adapter for the default extension
+ is tried first, and then the file is attempted to be
+ opened with all other adapters.
+ If no adapters can open the file, the exception from
+ the default adapter is re-thrown.
+
+
+
+
+ Gets or sets a value indicating whether a "dynamic default extension" is used.
+ This property is only used when is set,
+ and when files names sent to have no extension.
+ If DynamicDefault is true, When successfully opening a file,
+ the is adjusted to the extension of the
+ adapter found. This is intended to increase efficiency when processing a
+ sequence of files, as the adapter search would be faster after the first file.
+ By default this is false, and the default is not adjusted.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+ Initializes/loads the assembly and types by iterating through the collection.
+
+
+ collection of
+
+
+
+
+ Initialize the collection.
+
+
+ The collection of object factories.
+
+
+
+
+ To Find the index of a given item
+
+
+ item to find
+
+
+ index of the item
+
+
+
+
+ Insert an item at a given index
+
+
+ index at which to insert
+
+
+ item to insert
+
+
+
+
+ remove an item from a given location
+
+
+ index from where to remove
+
+
+
+
+ indexer property for the list
+
+ index location
+ item at given location/index
+
+
+
+ adds an item to the list
+
+
+ item to add
+
+
+
+
+ adds a range of items
+
+
+ items as an array
+
+
+
+
+ clears the underlying list
+
+
+
+
+ checks for the existence of an item in the list
+
+
+ item to check
+
+
+ true if found, else false
+
+
+
+
+ copies a part of the list to the given array
+
+
+ array into which items will be copied
+
+
+ index from where the copy would begin
+
+
+
+
+ Gets the total number of items in the list
+
+
+
+
+ Gets a value indicating whether the list is readonly
+
+
+
+
+ removes an item from the list
+
+
+ item to remove
+
+
+ true if removed, else false
+
+
+
+
+ Get a strongly types enumerator
+
+
+ A strongly types enumerator
+
+
+
+
+ Get a default enumerator of the list
+
+
+ a default enumerator of the list
+
+
+
+
+ Gets the for the given extension.
+ This finds an object for opening files with the given extension (such as ".pmd")
+
+
+ valid extension
+
+
+ return a which can open files of the given extension,
+ or null if there is no available creator for the extension
+
+
+
+
+ Implementation of delegate which can open any
+ kind of file, based on the extension.
+
+
+ The name of the file
+
+
+ An interface to the object data
+
+
+ Exception.
+
+
+
+
+ The try all other adapters.
+
+
+ The file name.
+
+
+ The default creator.
+
+
+ An interface to the object data
+
+
+
+
+ Method executed in parallel
+
+
+
+
+ Method executed in parallel
+
+
+
+
+ Run many very small tasks in parallel.
+ faster than TPL for very granular tasks, such as 2mS to 10mS per task.
+ Avoids overheads of "queuing tasks to workers".
+ Instead: All workers pull from a common queue.
+ The algorithm works by queuing a limited number of worker tasks, which the task pool distributes between
+ worker threads. Each worker task can run until every job is pulled from the queue.
+ The reason this is more efficient than TPL is that TPL will queue a work item for every item in
+ the work list, causing overheads within queuing work items, and overheads when the work items complete.
+ To use this class, create an array (or List) of objects, each of which is self contained (thread safe) and
+ has an Execute method, which performs the required processing. Pass this to RunInParallel.
+
+
+
+
+ Default value for MaxWorkers property
+
+
+
+
+ Gets or sets the maximum number of worker jobs to queue.
+ This typically does not need to be set (can be left at default).
+ Setting this to 1 is useful for basic performance tuning, as all work
+ will be done by the current thread (single threaded).
+ Other settings could be used for fine tuning and research.
+ Worker jobs do not imply threads. Each worker is able to process the entire job queue.
+ The number of threads available is automatically set by the .net thread pool.
+ Suggested range of this: 10 to 20. Default 12.
+
+
+
+
+ Gets or sets the batch size.
+ When task times are very small (less than 1 mS), it may be more efficient to ensure each worker has more than one task.
+ By default (BatchSize=0) the class could schedule 12 workers to run 12 tasks (assuming MaxWorkers is still the default, 12).
+ But: if the tasks are very short, this may add some overheads. Setting "BatchSize" to 2 would limit the number of workers to 6 in this case,
+ with the Max (12) workers being used when there are 24 or more tasks in the list
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor
+
+
+
+
+ Run tasks in parallel with default settings
+
+ tasks to execute
+
+
+
+ The number of worker threads.
+ This is initialized to the total number of workers needed.
+ Each worker counts it down when completed, and frees the main thread when zero.
+
+
+
+
+ Each item in the list has a "Execute" method.
+ The methods are called on each object using a parallel scheme
+ which permits each worker thread to act on any item in the list.
+ The objects in the list should save results of their respective execute methods.
+ Calling code can then iterate through the runners as soon as this call completes,
+ and use the generated results within the objects.
+
+
+ The objects which need to have an "Execute" method called on them.
+ For example "array of T, where T implements IExecute"/>
+
+
+
+
+ Gets or sets a value indicating whether to use TPL for the parallel execution.
+ There can be trade-offs between overheads, such as initialization or thread locking, when comparing
+ the TPL model and the model within this class. Applications can research which model gives higher performance.
+ All other settings are ignored if this is set.
+
+
+
+
+ Worker method for threads
+
+
+ not used
+
+
+
+
+ The worker complete.
+
+
+
+
+ The process all available jobs.
+
+
+
+
+ Delegate defining a method which can create an instance of IRawData, based
+ on a string (usually a file name).
+
+
+ file name
+
+
+ Interface to read raw data
+
+
+
+
+ Contains generic validation methods.
+
+
+
+
+ Validates that the specified is not null.
+
+ type of the parameter
+ Name of the parameter.
+ The value to check.
+ is thrown if argument is null.
+
+
+
+ Validates that the specified is not null or empty.
+
+ Name of the parameter.
+ The value to check.
+ is thrown if argument is null.
+ is thrown if argument is empty.
+
+
+
+ Specifies the resource text for an enumeration field.
+ This attribute is used by the EnumFormat class to get display strings for enumeration values.
+
+
+ The resource manager base name provided here will automatically be prefixed with the namespace
+ of the enumeration type. For example, an enumeration defined in XCL.Acquisition with a
+ ResourceText attribute base name of "EnumBase" will use a resource manager base name of
+ "XCL.Acquisition.EnumBase".
+
+
+
+
+ Initializes a new instance of the ResourceTextAttribute class with the resource name
+ for the enumeration field. The default resource base name of "Enumerations" is used.
+
+ The resource name for the enumeration value.
+
+
+
+ Initializes a new instance of the ResourceTextAttribute class with the resource name
+ and resource base name for the enumeration field.
+
+ The resource name for the enumeration value.
+ The resource manager base name for the enumeration value.
+
+
+
+ Gets the resource manager base name for the enumeration field.
+
+
+
+
+ Gets the resource name for the enumeration field, without the enumeration type's namespace prefix.
+
+
+
+
+ TrackedDataObject object is an abstract class that provides property
+ change event processing without redundancy.
+ If the business object you are designing
+ requires property change notifications,
+ implement this abstract class and call the SetProperty inside your setters./>
+
+
+
+
+ Serves as a hash function for a particular type.
+
+
+ A hash code for the current .
+
+
+
+
+ Compares this object with another.
+ Traverse the set of member variables to compare against the object that was passed in.
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ true if the specified is equal to the current ; otherwise, false.
+
+ The parameter is null.
+
+
+
+ Sets the property and hooks up event processing automatically.
+
+ The type of object the underlying data class is.
+ The private member.
+ Name of the property that will appear in the event.
+ The value the property is being set to.
+ true if the property value has changed
+
+
+
+ Occurs when a property value changes.
+
+
+
+
+ Signals when a property value is changed. This is merely a central function that is called every time the property is changed so as to
+ eliminate redundant code.
+
+ Name of the property being changed.
+
+
+
+ Gets a value indicating whether this object has a property change event
+
+
+
+
+ Signals when a property value is changed. This is merely a central function that is called every time the property is changed so as to
+ eliminate redundant code.
+
+ The sender, i.e., the instance of the object being changed.
+ Name of the property being changed.
+
+
+
+ The property signal changed handler.
+
+
+ The sender.
+
+
+ The args.
+
+
+
+
diff --git a/dll/ThermoFisher.CommonCore.RawFileReader.dll b/dll/ThermoFisher.CommonCore.RawFileReader.dll
new file mode 100644
index 0000000..0b2590e
Binary files /dev/null and b/dll/ThermoFisher.CommonCore.RawFileReader.dll differ
diff --git a/dll/ThermoFisher.CommonCore.RawFileReader.xml b/dll/ThermoFisher.CommonCore.RawFileReader.xml
new file mode 100644
index 0000000..b33ccf0
--- /dev/null
+++ b/dll/ThermoFisher.CommonCore.RawFileReader.xml
@@ -0,0 +1,31623 @@
+
+
+
+ ThermoFisher.CommonCore.RawFileReader
+
+
+
+
+ Calculates checksum (also called a CRC) using Adler-32 algorithm.
+
+
+
+
+ Gets the checksum of all added items
+
+
+
+
+ Calculate the CRC for an array
+
+
+ Initial checksum value (often this object.Checksum)
+
+
+ Data to check
+
+
+
+
+ Calculate the CRC for an file header array.
+ This sets the value of "CRC" to zero first in the supplied data
+
+ Bytes copied from the file header
+
+
+
+ Calculate CRC of a block of data
+
+ CRC of previous blocks, 0 if first block
+ Data to check
+ CRC of this block
+
+
+
+ Basic format of chromatogram delivery:
+ Just keeps a copy of the data
+
+
+
+
+ Gets or sets the "request" which determines what kind of chromatogram is needed.
+
+
+
+
+ Gets the chromatogram data
+
+
+
+
+ Implements the "Process" interface, as just saving a reference to the data.
+
+ The chromatogram which has been generated
+
+
+
+ The wrapped centroid stream.
+
+
+
+
+ Creates a CentroidStream from label peaks.
+
+
+ The label peaks.
+
+
+ Thrown if labelPeaks is null
+
+
+ The .
+
+
+
+
+ Copy data from an array of LabelPeak
+
+ stream to fill
+
+ The label peaks to copy.
+
+
+
+
+ The instrument data converter.
+ Converts instrument data from internal interfaces to public format.
+ Note: Created as a static class rather than a wrapper (extending the type)
+ so that the expected type is returned to the caller, supporting serialize etc.
+
+
+
+
+ Convert the IO format to CommonCore format
+
+ The instrument identifier.
+
+
+
+ Information about the auto sampler, as logged in a raw file
+
+
+
+
+ Initializes a new instance of the class.
+ Construct auto sampler information, with no initial data.
+ This path occurs for older raw files, which do not have this block.
+ The shape is defined as "Invalid" in this case.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The auto sampler config.
+
+
+
+
+ Gets or sets the tray index, -1 for "not recorded"
+
+
+
+
+ Gets or sets the tray name.
+
+
+
+
+ Gets or sets the shape.
+ If this property returns "Invalid", no other values in this object
+ contain usable information.
+ Invalid data can occur for older raw file formats, before auto sampler data was added.
+
+
+
+
+ Gets the tray shape as a string
+
+
+
+
+ Gets or sets the vial index, -1 for "not recorded"
+
+
+
+
+ Gets or sets the number of vials (or wells) per tray.
+ -1 for "not recorded"
+
+
+
+
+ Gets or sets the number of vials (or wells) per tray, across the tray.
+ -1 for "not recorded"
+
+
+
+
+ Gets or sets the number of vials (or wells) per tray, down the tray.
+ -1 for "not recorded"
+
+
+
+
+ The wrapped error log entry. This implements the public interface on
+ an error logged in a raw file
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The error log item.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets the retention time.
+
+
+
+
+ The wrapped file error. Translates error information
+ from a raw file into public interface
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The errors.
+
+
+
+
+ Gets the error code number.
+ Typically this is a windows system error number.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets a value indicating whether this file has detected an error.
+ If this is false: Other error properties in this interface have no meaning.
+
+
+
+
+ Gets a value indicating whether this file has detected a warning.
+ If this is false: Other warning properties in this interface have no meaning.
+
+
+
+
+ Gets the warning message.
+
+
+
+
+ The wrapped filtered scan iterator. Iterates over scans matching a given filter.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The device.
+
+
+ The filter.
+
+
+
+
+ Gets the filter used for iterating over spectra, in string form.
+
+
+
+
+ Gets a value indicating whether there are more scans after the current scan
+ Note that this does not check if this scan matches the filter.
+ returns true if there is an Next spectrum in file. Otherwise false
+
+
+
+
+ Gets a value indicating whether there may be spectra before the current scan.
+ Note that this does not check if this scan matches the filter.
+
+
+
+
+ Gets the Next Spectrum, matching the filter
+ returns the next spectrum number in file. 0 if there is no file open
+
+
+
+
+ Gets the Previous Spectrum, matching the filter
+ returns the previous spectrum number in file. 0 if there is no file open
+
+
+
+
+ Sets the CurrentSpectrumNumber to the new Spectrum Number
+
+
+
+
+ Set the filter used for iterating over spectra.
+ This can be used with the NextSpectrumNumber method to iterate over scans with a certain filter
+
+
+ an object containing the Filter to be used for iterating over spectra
+
+
+ The .
+
+
+
+
+ The wrapped header items.
+ Converts internal header items (for generic data types)
+ to public format.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The data descriptors.
+ Null data descriptor argument
+
+
+
+ Copies from.
+
+ The data descriptors.
+
+
+
+ Wrapped log entry. Presents a log entry, as defined in the Data DLL.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The status log.
+
+ statusLog is null
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The trailer extra.
+
+ trailerExtra is null
+
+
+
+
+ The wrapped run header.
+ Converts internal run header to public interface
+
+
+
+
+ Initializes a new instance of the class.
+
+ The run header.
+ run header is null
+
+
+
+ Gets the first comment about this data stream.
+
+
+
+
+ Gets the second comment about this data stream.
+
+
+
+
+ Gets the time of last scan in file
+
+
+
+
+ Gets the count of error log entries
+
+
+
+
+ Gets the expected data acquisition time.
+
+
+
+
+ Gets the number of digits of precision suggested for formatting masses
+ in the filters.
+
+
+
+
+ Gets the first spectrum (scan) number (typically 1).
+
+
+
+
+ Gets the highest recorded mass in file
+
+
+
+
+ Gets a value indicating whether this file is being created.
+
+
+
+
+ Gets the last spectrum (scan) number.
+ If this is less than 1, then there are no scans acquired yet.
+
+
+
+
+ Gets the lowest recorded mass in file
+
+
+
+
+ Gets the mass resolution of this instrument.
+
+
+
+
+ Gets the max integrated intensity.
+
+
+
+
+ Gets the max intensity.
+
+
+
+
+ Gets the count of recorded spectra
+
+
+
+
+ Gets the time of first scan in file
+
+
+
+
+ Gets the count of status log entries
+
+
+
+
+ Gets the tolerance units
+
+
+
+
+ Gets the count of "trailer extra" records.
+ Typically, same as the count of scans.
+
+
+
+
+ Gets the count of "scan events"
+
+
+
+
+ Gets the count of tune data entries
+
+
+
+
+ The wrapped scan events.
+ Converts internal data to public interface IScanEvents
+
+
+
+
+ Initializes a new instance of the class.
+
+ The MS device.
+ Since this is internal: Caller will validate
+ that this is not null.
+
+
+
+ Get an event, using indexed event number (zero based).
+ This gets events from all segments in order,
+ use "ScanEvents" to get the total count of events.
+
+ The event Number.
+
+ The event.
+
+ Thrown when eventNumber is out of range
+
+
+
+ Get an event, indexed by the segment and event numbers (zero based).
+
+ The segment index.
+ The event number.
+
+ The event.
+
+ When event number out of range
+
+
+
+ Gets the number of events in a specific segment (0 based)
+
+ The segment number.
+ The number of events in this segment
+ segment Number
+
+
+
+ Gets the total number of scan events, in all segments
+
+
+
+
+ Gets the number segments.
+
+
+
+
+ Gets all scan events.
+
+
+ The mass spec Device.
+
+
+ All the scan events
+
+
+
+
+ The wrapped scan filter.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The filter scan event.
+
+
+
+
+ Gets the filter.
+
+
+ The filter.
+
+
+
+
+ Gets the accurate mass setting.
+
+
+
+
+ Gets the number of compensation voltage values
+
+
+ The size of compensation voltage array
+
+
+
+
+ Gets the number of Source Fragmentation values
+
+
+
+
+ Retrieves a source fragmentation value at 0-based index.
+
+
+ Use to get the count of
+ source fragmentation values.
+
+
+ Index of source fragmentation value to be retrieved
+
+
+ Source Fragmentation Value (sid) at 0-based index
+
+
+
+
+ Retrieves a compensation voltage value at 0-based index.
+
+
+ Index of compensation voltage to be retrieved
+
+
+ Compensation voltage value at 0-based index
+
+
+ Use to get the count of
+ compensation voltage values.
+
+
+
+
+ Get source fragmentation info valid, at zero based index.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ Convert a simple mass index to an index to the unique mass, taking into account multiple activations
+
+
+ Simple mass index to convert
+
+
+ Corresponding index of the unique mass
+
+
+
+
+ Gets or sets the locale name.
+ This can be used to affect string conversion.
+
+
+
+
+ Gets or sets the mass precision, which is used to format the filter (in ToString).
+
+
+
+
+ Gets or sets additional instrument defined filters (can be bit flags). No general definition.
+
+
+
+
+ Gets or sets an array of values which determines if the source fragmentation values are valid.
+
+
+
+
+ Gets or sets the ScanData setting.
+
+
+
+
+ Gets or sets the Polarity setting.
+
+
+
+
+ Gets or sets the SourceFragmentation setting.
+
+
+
+
+ Gets or sets the MSOrder setting.
+
+
+
+
+ Gets or sets the Mass Analyzer setting.
+
+
+
+
+ Gets or sets the Detector setting.
+
+
+
+
+ Gets or sets the Dependent setting.
+
+
+
+
+ Gets or sets the Scan Mode setting.
+
+
+
+
+ Gets or sets the Source Fragmentation Type setting.
+
+
+
+
+ Gets or sets the Turbo Scan setting.
+
+
+
+
+ Gets or sets the Ionization Mode setting.
+
+
+
+
+ Gets or sets the corona scan setting.
+
+
+
+
+ Gets or sets the detector value.
+
+ Floating point detector value
+
+
+
+ Gets or sets the wideband scan setting.
+
+
+
+
+ Gets or sets the sector scan setting.
+
+ See for possible values
+
+
+
+ Gets or sets the lock scan setting.
+
+
+
+
+ Gets or sets the field free region setting.
+
+ See for possible values
+
+
+
+ Gets or sets the ultra scan setting.
+
+
+
+
+ Gets or sets the enhanced scan setting.
+
+
+
+
+ Gets or sets the multi-photon dissociation setting.
+
+
+
+
+ Gets or sets the multi-photon dissociation value.
+
+ Floating point multi-photon dissociation value
+
+
+
+ Gets or sets the electron capture dissociation setting.
+
+
+
+
+ Gets or sets the electron capture dissociation value.
+
+ Floating point electron capture dissociation value
+
+
+
+ Gets or sets the photo ionization setting.
+
+
+
+
+ Gets or sets the dissociation setting.
+
+
+
+
+ Gets or sets the pulsed dissociation value.
+
+ Floating point pulsed dissociation value
+
+
+
+ Gets or sets the electron transfer dissociation setting.
+
+
+
+
+ Gets or sets the electron transfer dissociation value.
+
+ Floating point electron transfer dissociation value
+
+
+
+ Gets or sets the higher energy cid setting.
+
+
+
+
+ Gets or sets the higher energy cid value.
+
+ Floating point higher energy cid value
+
+
+
+ Gets or sets the Multiplex type
+
+
+
+
+ Gets or sets the parameter a.
+
+
+
+
+ Gets or sets the parameter b.
+
+
+
+
+ Gets or sets the parameter f.
+
+
+
+
+ Gets or sets the Multi notch (Synchronous Precursor Selection) type
+
+
+
+
+ Gets or sets the parameter r.
+
+
+
+
+ Gets or sets the parameter v.
+
+
+
+
+ Gets or sets the event Name.
+
+
+
+
+ Gets or sets supplemental activation type setting.
+
+
+
+
+ Gets or sets MultiStateActivation type setting.
+
+
+
+
+ Gets or sets Compensation Voltage Option setting.
+
+
+
+
+ Gets or sets compensation Voltage type setting.
+
+ See for possible values
+
+
+
+ Gets the number of unique masses, taking into account multiple activations.
+
+
+
+
+ Returns a that represents this instance.
+
+
+ A that represents this instance.
+
+
+
+
+ Gets the scan type index.
+
+
+
+
+ Gets the mass count.
+
+
+
+
+ The get reaction.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The get mass.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The get energy.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The get precursor range validity.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The get first precursor mass.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The get last precursor mass.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The get isolation width.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The get isolation width offset.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The get energy valid.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The get activation.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The get is multiple activation.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ Gets the mass range count.
+
+
+
+
+ The get mass range.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ Gets the source fragmentation info count.
+
+
+
+
+ The get source fragmentation info.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The wrapped scan statistics.
+ Converts from internal data to public type.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Index of the scan.
+ Thrown if scanIndex is null
+
+
+
+ Initializes a new instance of the class.
+
+ Index of the scan.
+ Thrown if scanIndex is null
+
+
+
+ Sets the lazy scan type.
+
+
+
+
+ Copies from.
+
+ Index of the scan.
+
+
+
+ Copies from.
+
+ Index of the scan.
+
+
+
+ The wrapped sequence row. Converts internal data to public type.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The sequence row.
+ Thrown when sequenceRow is null
+
+
+
+ Copies from.
+
+ The sequence row.
+
+
+
+ The wrapped single value status log.
+ Converts internal data to the public interface.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The status log entries.
+
+
+
+
+ Gets the retention times for each value (x values to plot)
+
+
+
+
+ Gets the values logged for each time (the trended data, y values to plot).
+
+
+
+
+ copy from statusLogEntries
+
+
+ The status log entries.
+
+
+
+
+ Data for a particular device, from an instrument method.
+
+
+
+
+ Opens a stream on created storage
+
+ The storage containing data for a device
+ The stream within the device
+ Access to the requested stream
+
+
+
+ get stream names.
+
+
+ The storage device.
+
+
+ The names.
+
+
+
+
+ Gets the plain text form of an instrument method
+
+
+
+
+ Gets all streams for this instrument, apart from the "Text" stream.
+ Typically an instrument has a stream called "Data" containing the method in binary or XML.
+ Other streams (private to the instrument) may also be created.
+
+
+
+
+ Open the streams for the device, and retrieve the text description.
+
+ Storage containing device data
+
+
+
+ Gets or sets the available streams.
+
+
+
+
+ Reader for instrument method device data.
+ Class is a wrapper over Win32 API's.
+ Deals with IOleStorage and IOleStream
+
+
+
+
+ Initializes a new instance of the class.
+ Constructor with filename as parameter
+
+
+ method data file
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Get the list of storage names, of a particular storage type
+
+ Storage to open
+ Type of storage
+ The names of the storages
+
+
+
+ The file header errors.
+
+
+
+
+ There was no error
+
+
+
+
+ There was a COM error
+
+
+
+
+ There was a CRC error
+
+
+
+
+ Cannot open file stream
+
+
+
+
+ The read header result.
+
+
+
+
+ Gets or sets the error class.
+
+
+
+
+ Gets or sets the error message.
+
+
+
+
+ Gets or sets the header.
+
+
+
+
+ Reads the header from the instrument method file
+
+ The file header
+
+
+
+ Loads component details from storage.
+
+
+ Name of component
+
+
+ The .
+
+
+
+
+ Enumerates the sub STGS no recursion.
+
+ The storage descriptions.
+ true if successful
+
+
+
+ Open a storage file
+
+ The access mode.
+
+ The error message, or empty string if OK
+
+
+
+
+ Cleans up the resources
+
+ bool, flag whether .Net resources needs to be released or not
+
+
+
+ Releases all resources
+
+
+
+
+ Provides static methods to convert enumeration between the legacy FileIO and CommonCore.data
+
+
+
+
+ Common Core Devices from VirtualDeviceTypes.
+
+ The VirtualDeviceTypes.
+ The converted type
+ type is out of range.
+
+
+
+ Convert common core Device type to the virtual device types.
+
+ The value.
+ The converted value
+
+
+
+ To the scan filter.
+
+ The values.
+ List of scan filer
+
+
+
+ Convert an event accurate mass.
+
+ The value.
+ The converted value
+
+
+
+ Convert an accurate mass to event value.
+
+ The value.
+ The converted value
+
+
+
+ Map flag bit to peak options, with a static table
+
+
+ The table of options for each flag
+
+
+
+
+ Convert flags (such as "reference peak) from FT format to "PeakOptions" format
+
+ The peak with flags to be converted.
+ The converted flags
+ Null label peak type argument.
+
+
+
+ Convert to 3 state variable (on, off any).
+
+ The value.
+ The converted value
+
+
+
+ Convert to 3 state variable (on, off any).
+
+ The value.
+ Converted flag.
+
+
+
+ Convert to 3 state variable (on, off any).
+
+ The value.
+ The converted value
+
+
+
+ Convert from Tri-state to "Off On Any"to 3.
+
+ The value.
+ The converted value
+
+
+
+ Convert from Tri-state to "On Any off".
+
+ The value.
+ The converted value
+
+
+
+ To the type of the detector.
+
+ The value.
+ The converted value
+
+
+
+ To the type of the detector.
+
+ The value.
+ The converted value
+
+
+
+ To the type of the scan mode.
+
+ The value.
+ Converted flag.
+ Invalid scan data types type.
+
+
+
+ From mode to the type of the scan.
+
+ The value.
+ Converted flag.
+
+
+
+ Convert type of "source fragmentation information valid".
+
+ The value.
+ The converted value
+
+
+
+ convert integrator event from PMD format to Data format
+
+
+ The old event.
+
+
+ The converted .
+
+
+
+
+ Convert from C# Reader format to common core format of data units.
+ Conversion is accurate for UV units, and approximate for others.
+ in particular "units mUnits and uUnits" are considered "Volts".
+ "Other" and "Unknown" convert to "None".
+
+ The value from C# Reader.
+ Converted unit
+ Thrown if the units are not a valid value
+
+
+
+ Convert from CommonCore format to IO format of data units.
+ Conversion is accurate for UV units, and approximate for others.
+ in particular "units mUnits and uUnits" are considered "Volts".
+ "Other" and "Unknown" convert to "None".
+
+ The value from CommonCore format.
+ Converted unit
+ Thrown if the units are not a valid value
+
+
+
+ Converts the date time to file time.
+
+
+ The date time.
+
+
+ The .
+
+
+
+
+ The absorbance units.
+
+
+
+
+ The unknown.
+
+
+
+
+ The straight Absorbance unit.
+
+
+
+
+ The milli Absorbance unit.
+
+
+
+
+ The micro Absorbance unit.
+
+
+
+
+ Some other Absorbance unit. make sure you fill in Y axis string below
+
+
+
+
+ No absorbance data contained in the data object, or no data which scaling
+ has any meaning for.
+
+
+
+
+ The milli units.
+
+
+
+
+ The micro units.
+
+
+
+
+ The other straight units.
+
+
+
+
+ The data types.
+
+
+
+
+ The data type is null/empty.
+
+
+
+
+ The data type is char.
+ Note: this is referred as a byte.
+
+
+
+
+ The data type is true or false.
+
+
+
+
+ The data type is yes or no.
+
+
+
+
+ The data type is on or off.
+
+
+
+
+ The data type is unsigned char.
+
+
+
+
+ The data type is short.
+
+
+
+
+ The data type is unsigned short.
+
+
+
+
+ The data type is long.
+ Note: this is referred as a long (4-byte) in C++. It's not the same size as long in C#.
+
+
+
+
+ The data type is unsigned long.
+ Note: this is referred as an unsigned long (4-byte) in C++. It's not the same size as unsigned long in C#.
+
+
+
+
+ The data type is float.
+
+
+
+
+ The data type is double.
+
+
+
+
+ The data type is a char string.
+
+
+
+
+ The data type is a wide char string.
+
+
+
+
+ The end of data type
+
+
+
+
+ The field names.
+
+
+
+
+ The global mutex name prefix
+
+
+
+
+ The old LCQ constants.
+
+
+
+
+ The maximum ext detector channels
+ External detector channels in use -- 1 to 4
+
+
+
+
+ Enumerated types for old LCQ files
+
+
+
+
+ The instrument control.
+
+
+
+
+ Start direct.
+
+
+
+
+ Start by contact closure.
+
+
+
+
+ The syringe unit.
+
+
+
+
+ ml per min.
+
+
+
+
+ ml per hour.
+
+
+
+
+ micro l per min.
+
+
+
+
+ micro l per hour.
+
+
+
+
+ The syringe brand.
+
+
+
+
+ Made by Hamilton.
+
+
+
+
+ Made by Unimetrics.
+
+
+
+
+ Some other make
+
+
+
+
+ The MS programming type.
+
+
+
+
+ is non ITCL.
+
+
+
+
+ is ITCL. (Ion Trap Control Language)
+
+
+
+
+ The divert valve state between runs.
+
+
+
+
+ Divert to waste.
+
+
+
+
+ Divert to source.
+
+
+
+
+ The fraction collector choice.
+
+
+
+
+ fraction collector trigger by base peak.
+
+
+
+
+ fraction collector trigger by molecular weight.
+
+
+
+
+ The data mode.
+
+
+
+
+ Scan is profile.
+
+
+
+
+ Scan is centroid.
+
+
+
+
+ The MS scan mode.
+
+
+
+
+ The MS mode.
+
+
+
+
+ The MS/MS mode.
+
+
+
+
+ CID mode.
+
+
+
+
+ The MS to the nth mode.
+
+
+
+
+ The MS scan type.
+
+
+
+
+ Scan type full.
+
+
+
+
+ Scan type SIM.
+
+
+
+
+ Scan type zoom.
+
+
+
+
+ The scan type SRM.
+
+
+
+
+ The mode of largest.
+
+
+
+
+ The nth largest intensity.
+
+
+
+
+ The nth largest intensity precursor.
+
+
+
+
+ use previous mass.
+
+
+
+
+ Use the previous list of ions, then select the ion from the list
+
+
+
+
+ The show axis label.
+
+
+
+
+ show always.
+
+
+
+
+ show on print.
+
+
+
+
+ show never.
+
+
+
+
+ The normalize type.
+
+
+
+
+ Normalize to largest in section.
+
+
+
+
+ Normalize to largest in display.
+
+
+
+
+ Normalize to largest in all data
+
+
+
+
+ The spectrum style.
+
+
+
+
+ auto style based on data
+
+
+
+
+ Use profile style.
+
+
+
+
+ Use stick style.
+
+
+
+
+ Use shade style.
+
+
+
+
+ The chromatogram trace types.
+
+
+
+
+ The start of MS chromatogram traces.
+
+
+
+
+ Chromatogram mass range trace.
+
+
+
+
+ Chromatogram tic trace.
+
+
+
+
+ Chromatogram base peak trace.
+
+
+
+
+ Chromatogram fragment trace.
+
+
+
+
+ The end of MS Chromatogram traces.
+
+
+
+
+ The start analog Chromatogram traces.
+
+
+
+
+ Chromatogram analog 1 trace.
+
+
+
+
+ Chromatogram analog 2 trace.
+
+
+
+
+ Chromatogram analog 3 trace.
+
+
+
+
+ Chromatogram analog 4 trace.
+
+
+
+
+ The end of analog Chromatogram traces.
+
+
+
+
+ The start of PDA Chromatogram traces.
+
+
+
+
+ Chromatogram wavelength range trace.
+
+
+
+
+ Chromatogram total absorbance trace.
+
+
+
+
+ Chromatogram spectrum max trace.
+
+
+
+
+ The end of PDA Chromatogram traces.
+
+
+
+
+ The start of UV Chromatogram traces.
+
+
+
+
+ Chromatogram channel a trace.
+
+
+
+
+ Chromatogram channel b trace.
+
+
+
+
+ Chromatogram channel c trace.
+
+
+
+
+ Chromatogram channel d trace.
+
+
+
+
+ The end of UV Chromatogram traces.
+
+
+
+
+ The start a2d Chromatogram traces.
+
+
+
+
+ Chromatogram Analog to Digital channel 1 trace.
+
+
+
+
+ Chromatogram Analog to Digital channel 2 trace.
+
+
+
+
+ Chromatogram Analog to Digital channel 3 trace.
+
+
+
+
+ Chromatogram Analog to Digital channel 4 trace.
+
+
+
+
+ The end of a2d Chromatogram traces.
+
+
+
+
+ The end of all Chromatogram traces.
+
+
+
+
+ The Chromatogram trace operator. When math is done on two traces, here is the operations allowed
+
+
+
+
+ No operator: blank.
+
+
+
+
+ The minus operator.
+
+
+
+
+ The plus operator.
+
+
+
+
+ The smoothing types.
+ Used to describe the types of smoothing available for chromatograms and spectra
+
+
+
+
+ The box (moving mean) smoothing.
+
+
+
+
+ Gaussian smoothing.
+
+
+
+
+ The tolerance unit.
+ Used to describe the types of mass tolerance units for spectra
+
+
+
+
+ units MMU.
+
+
+
+
+ Parts Per Million.
+
+
+
+
+ Atomic Mass Units (Dalton).
+
+
+
+
+ The style.
+
+
+
+
+ point to point (connected points), profile.
+
+
+
+
+ Stick (vertical lines), centroid data
+
+
+
+
+ The scan mode.
+
+
+
+
+ The no scan.
+
+
+
+
+ The full scan.
+
+
+
+
+ Scan is SIM, SRM or CRM.
+
+
+
+
+ A zoom scan.
+
+
+
+
+ The MS to MS to the nth.
+
+
+
+
+ The MS to the nth to MS to the nth.
+
+
+
+
+ The zoom MS to MS to the nth..
+
+
+
+
+ The zoom MS to the nth to MS to the nth.
+
+
+
+
+ The MS to zoom MS.
+
+
+
+
+ The MS to the nth to zoom MS to the nth.
+
+
+
+
+ neutral loss scan.
+
+
+
+
+ neutral gain scan.
+
+
+
+
+ parent scan.
+
+
+
+
+ The map view accessor.
+
+
+
+
+ Map scan index.
+
+
+
+
+ Map status log.
+
+
+
+
+ Map trailer extra.
+
+
+
+
+ Map tune data.
+
+
+
+
+ Ma UV scan index.
+
+
+
+
+ Map UV peak data.
+
+
+
+
+ The end of map view accessor.
+
+
+
+
+ The raw file constants.
+
+
+
+
+ Raw file versions below 30 are not supported.
+
+
+
+
+ The current version.
+
+
+
+
+ The format version03
+
+
+
+
+ The format version06
+
+
+
+
+ The format version 7.
+
+
+
+
+ The format version8
+
+
+
+
+ The format version9
+
+
+
+
+ The format version11
+
+
+
+
+ The format version12
+
+
+
+
+ The format version13
+
+
+
+
+ The format version14
+
+
+
+
+ The format version15
+
+
+
+
+ The format version30
+
+
+
+
+ The format version 31.
+
+
+
+
+ The format version32
+
+
+
+
+ The format version34
+
+
+
+
+ The format version36
+
+
+
+
+ The format version37
+
+
+
+
+ The format version39
+
+
+
+
+ The format version 40.
+
+
+
+
+ The format version 41.
+
+
+
+
+ The format version 44.
+
+
+
+
+ The format version 45.
+
+
+
+
+ The format version 48.
+
+
+
+
+ The format version 49.
+
+
+
+
+ The format version 51.
+
+
+
+
+ The format version 52.
+
+
+
+
+ The format version 54.
+
+
+
+
+ The format version 58.
+
+
+
+
+ The format version 62.
+
+
+
+
+ The format version 63.
+
+
+
+
+ The format version 65.
+
+
+
+
+ The format version 66.
+
+
+
+
+ The post 64 bit file size allowance version.
+
+
+
+
+ The pre 64 bit file size allowance version.
+
+
+
+
+ The max controllers.
+
+
+
+
+ The max user labels.
+
+
+
+
+ The original vial string length.
+
+
+
+
+ The path length.
+
+
+
+
+ The raw file signature.
+
+
+
+
+ The finn identifier
+ 2-byte ID for Finnigan / Enterprise file
+
+
+
+
+ The tolerance for filter energy.
+
+
+
+
+ Used to allow small differences in comparisons (e.g. mass difference).
+
+
+
+
+ If the scan type is not specified.
+
+
+
+
+ The raw file writer constants.
+ Imported legacy error and severity values from platform to maintain values.
+
+
+
+
+ The scan filter enumerations.
+
+
+
+
+ The accurate mass types.
+
+
+
+
+ Accurate Mass off.
+
+
+
+
+ Accurate Mass on.
+
+
+
+
+ Accurate Mass internal.
+
+
+
+
+ Accurate Mass external.
+
+
+
+
+ Accept any accurate mass.
+
+
+
+
+ The detector type.
+
+
+
+
+ The is valid.
+
+
+
+
+ The any.
+
+
+
+
+ The is in valid.
+
+
+
+
+ The filter source high val.
+
+
+
+
+ Apply source CID high filter.
+
+
+
+
+ accept any source CID high.
+
+
+
+
+ The filter source low val.
+
+
+
+
+ Apply source CID low filter.
+
+
+
+
+ accept any source CID low.
+
+
+
+
+ Determines how filter parsing is going
+
+
+
+
+ Filter is incomplete
+
+
+
+
+ Filter good
+
+
+
+
+ Filter is badly formatted
+
+
+
+
+ Next token must be inspected
+
+
+
+
+ The field free regions.
+
+
+
+
+ The free region 1.
+
+
+
+
+ The free region 2.
+
+
+
+
+ The any free region.
+
+
+
+
+ The ionization modes.
+
+
+
+
+ The electron impact.
+
+
+
+
+ The chemical ionization.
+
+
+
+
+ The fast atom bombardment.
+
+
+
+
+ The electrospray.
+
+
+
+
+ The atmospheric pressure chemical ionization.
+
+
+
+
+ nano-spray.
+
+
+
+
+ thermo-spray ionization.
+
+
+
+
+ field desorption.
+
+
+
+
+ matrix assisted laser desorption ionization.
+
+
+
+
+ glow discharge.
+
+
+
+
+ The accept any ionization mode.
+ Only applies to filtering.
+ If this appears in a file, no mode string is shown.
+
+
+
+
+ paper spray ionization.
+
+
+
+
+ Card nanospray ionization.
+
+
+
+
+ The extension ionization mode 1.
+
+
+
+
+ The extension ionization mode 2.
+
+
+
+
+ The extension ionization mode 3.
+
+
+
+
+ The extension ionization mode 4.
+
+
+
+
+ The extension ionization mode 5.
+
+
+
+
+ The extension ionization mode 6.
+
+
+
+
+ The extension ionization mode 7.
+
+
+
+
+ The extension ionization mode 8.
+
+
+
+
+ The extension ionization mode 9.
+
+
+
+
+ The ion mode is beyond known types.
+
+
+
+
+ The possible values for scan.
+
+
+
+
+ Not Dependent.
+
+
+
+
+ Is Dependent.
+
+
+
+
+ Any Type.
+
+
+
+
+ The mass analyzer types.
+
+
+
+
+ Ion Trap MS.
+
+
+
+
+ Triple quad MS.
+
+
+
+
+ Single Quad MS.
+
+
+
+
+ TOF MS.
+
+
+
+
+ FTMS analyzer.
+
+
+
+
+ Sector analyzer.
+
+
+
+
+ Any analyzer.
+
+
+
+
+ Meta Filter
+
+
+
+
+ No meta filter.
+
+
+
+
+ HCD meta filter.
+
+
+
+
+ ETD meta filter.
+
+
+
+
+ CID meta filter.
+
+
+
+
+ UVPD meta filter.
+
+
+
+
+ Msn meta filter.
+
+
+
+
+ For raw file types whose "Off" value is 0.
+
+
+
+
+ The off. Used in these modes
+
+ SFWidebandOff
+ SFSupplementalActivationOff
+ SFMultiStateActivationOff
+ SFMultiplexOff
+ SFParam_A_Off
+ SFParam_B_Off
+ SFParam_F_Off
+ SFParam_K_Off
+ SFParam_R_Off
+ SFParam_V_Off
+
+
+
+
+
+ The feature is on.
+ Used by these filter codes.
+
+ SFWidebandOn
+ SFSupplementalActivationOn
+ SFMultiStateActivationOn
+ SFMultiplexOn
+ SFParam_A_On
+ SFParam_B_On
+ SFParam_F_On
+ SFParam_K_On
+ SFParam_R_On
+ SFParam_V_On
+
+
+
+
+
+ The any.
+ Used by these filter codes.
+
+ SFAcceptAnyWideband
+ SFAcceptAnySupplementalActivation
+ SFAcceptAnyMultiStateActivation
+ SFAcceptAnyMultiplex
+ SFAcceptAnyParam_A
+ SFAcceptAnyParam_B
+ SFAcceptAnyParam_F
+ SFAcceptAnyParam_K
+ SFAcceptAnyParam_R
+ SFAcceptAnyParam_V
+
+
+
+
+
+ The on any off types.
+
+
+
+
+ The on.
+ SFDetectorValid
+ SFMultiPhotonDissociationOn
+ SFElectronCaptureDissociationOn
+
+
+
+
+ The any.
+ SFAcceptAnyDetector
+ SFAcceptAnyMultiPhotonDissociation
+ SFAcceptAnyElectronCaptureDissociation
+
+
+
+
+ The off.
+ SFDetectorNotValid
+ SFMultiPhotonDissociationOff
+ SFElectronCaptureDissociationOff
+
+
+
+
+ For raw file types whose "On" value is 0.
+
+
+
+
+ Feature is on. Used for these features:
+
+ SFSourceCIDon
+ SFTurboScanOn
+ SFCoronaOn
+ SFLockOn
+ SFUltraOn
+ SFEnhancedOn
+ SFPhotoIonizationOn
+ SFPulsedQDissociationOn
+ SFElectronTransferDissociationOn
+ SFHigherenergyCiDOn
+ SFCompensationVoltageOn
+
+
+
+
+
+ The feature is off.
+ Used by these filter codes
+
+ SFSourceCIDoff
+ SFTurboScanOff
+ SFCoronaOff
+ SFLockOff
+ SFUltraOff
+ SFEnhancedOff
+ SFPhotoIonizationOff
+ SFPulsedQDissociationOff
+ SFElectronTransferDissociationOff
+ SFHigherenergyCiDOff
+ SFCompensationVoltageOff
+
+
+
+
+
+ any mode accepted. Used for these features:
+
+ SFAcceptAnySourceCID
+ SFAcceptAnyTurboScan
+ SFAcceptAnyCorona
+ SFAcceptAnyLock
+ SFAcceptAnyUltra
+ SFAcceptAnyEnhanced
+ SFAcceptAnyPhotoIonization
+ SFAcceptAnyPulsedQDissociation
+ SFAcceptAnyElectronTransferDissociation
+ SFAcceptAnyHigherenergyCiD
+ SFAcceptAnyCompensationVoltage
+
+
+
+
+
+ The polarity types.
+
+
+
+
+ The negative.
+
+
+
+
+ The positive.
+
+
+
+
+ The any.
+
+
+
+
+ The precursor energy.
+
+
+
+
+ The is valid.
+
+
+
+
+ The any.
+
+
+
+
+ The scan data types.
+
+
+
+
+ The centroid.
+
+
+
+
+ The profile.
+
+
+
+
+ The any.
+
+
+
+
+ The scan event accurate mass enumeration saved in the raw file. This should not be
+ exposed outside of the reader.
+
+
+
+
+ The public.
+
+
+
+
+ The external.
+
+
+
+
+ The off.
+
+
+
+
+ Any: Not supported in raw files, only used for filtering
+
+
+
+
+ The scan types.
+
+
+
+
+ Type is not specified.
+
+
+
+
+ full scan.
+
+
+
+
+ Scan type zoom.
+
+
+
+
+ Scan type SIM.
+
+
+
+
+ Scan type SRM.
+
+
+
+
+ Scan type CRM.
+
+
+
+
+ Any scan type.
+
+
+
+
+ quad 1 MS.
+
+
+
+
+ quad 3 MS.
+
+
+
+
+ The sector scans.
+
+
+
+
+ Magnet scan.
+
+
+
+
+ Electrostatic scan.
+
+
+
+
+ Any sector scanned.
+
+
+
+
+ Determines if a scan uses segment and event numbers
+
+
+
+
+ Segment and scan event is set
+
+
+
+
+ Accept any segment scan event
+
+
+
+
+ The SIM compensation voltage energy modes.
+
+
+
+
+ SIM compensation voltage energy set
+
+
+
+
+ Accept any SIM compensation voltage energy
+
+
+
+
+ The SIM source CID energy.
+
+
+
+
+ The SIM source CID energy has been set.
+
+
+
+
+ accept any SIM source CID energy.
+
+
+
+
+ The source cid valid types.
+
+
+
+
+ The source cid energy valid.
+
+
+
+
+ The accept any source cid energy.
+
+
+
+
+ The 'SourceCIDEnergyValid" array is now doing double duty
+ for the CVEnergyValid values as well (binary compatibility
+ issue). So I added this value to the enumeration to indicate that
+ the energy value is for CV, not SID
+
+
+
+
+ The voltage types.
+
+
+
+
+ No Value - e.g. CV or SID
+ SFSourceCIDTypeNoValue
+ SFCompensationVoltageNoValue
+
+
+
+
+ Single Value - example: sid=40 or cv=40
+ SFSourceCIDTypeSingleValue
+ SFCompensationVoltageSingleValue
+
+
+
+
+ Ramp - example: sid=40-50
+ SFSourceCIDTypeRamp
+ SFCompensationVoltageRamp
+
+
+
+
+ SIM - example : SIM [100@40, 200@50]
+ SFSourceCIDTypeSIM
+ SFCompensationVoltageSIM
+
+
+
+
+ Accept any type.
+ SFAcceptAnySourceCIDType
+ SFAcceptAnyCompensationVoltageType
+
+
+
+
+ The MS order types.
+
+
+
+
+ The neutral gain.
+
+
+
+
+ The neutral loss.
+
+
+
+
+ The parent scan.
+
+
+
+
+ Accept any MS order.
+
+
+
+
+ MS data.
+
+
+
+
+ MS/MS data
+
+
+
+
+ The m s 3.
+
+
+
+
+ The m s 4.
+
+
+
+
+ The m s 5.
+
+
+
+
+ The m s 6.
+
+
+
+
+ The m s 7.
+
+
+
+
+ The m s 8.
+
+
+
+
+ The m s 9.
+
+
+
+
+ The m s 10.
+
+
+
+
+ The m s 11.
+
+
+
+
+ The m s 12.
+
+
+
+
+ The m s 13.
+
+
+
+
+ The m s 14.
+
+
+
+
+ The m s 15.
+
+
+
+
+ The m s 16.
+
+
+
+
+ The m s 17.
+
+
+
+
+ The m s 18.
+
+
+
+
+ The m s 19.
+
+
+
+
+ The m s 20.
+
+
+
+
+ The m s 21.
+
+
+
+
+ The m s 22.
+
+
+
+
+ The m s 23.
+
+
+
+
+ The m s 24.
+
+
+
+
+ The m s 25.
+
+
+
+
+ The m s 26.
+
+
+
+
+ The m s 27.
+
+
+
+
+ The m s 28.
+
+
+
+
+ The m s 29.
+
+
+
+
+ The m s 30.
+
+
+
+
+ The m s 31.
+
+
+
+
+ The m s 32.
+
+
+
+
+ The m s 33.
+
+
+
+
+ The m s 34.
+
+
+
+
+ The m s 35.
+
+
+
+
+ The m s 36.
+
+
+
+
+ The m s 37.
+
+
+
+
+ The m s 38.
+
+
+
+
+ The m s 39.
+
+
+
+
+ The m s 40.
+
+
+
+
+ The m s 41.
+
+
+
+
+ The m s 42.
+
+
+
+
+ The m s 43.
+
+
+
+
+ The m s 44.
+
+
+
+
+ The m s 45.
+
+
+
+
+ The m s 46.
+
+
+
+
+ The m s 47.
+
+
+
+
+ The m s 48.
+
+
+
+
+ The m s 49.
+
+
+
+
+ The m s 50.
+
+
+
+
+ The m s 51.
+
+
+
+
+ The m s 52.
+
+
+
+
+ The m s 53.
+
+
+
+
+ The m s 54.
+
+
+
+
+ The m s 55.
+
+
+
+
+ The m s 56.
+
+
+
+
+ The m s 57.
+
+
+
+
+ The m s 58.
+
+
+
+
+ The m s 59.
+
+
+
+
+ The m s 60.
+
+
+
+
+ The m s 61.
+
+
+
+
+ The m s 62.
+
+
+
+
+ The m s 63.
+
+
+
+
+ The m s 64.
+
+
+
+
+ The m s 65.
+
+
+
+
+ The m s 66.
+
+
+
+
+ The m s 67.
+
+
+
+
+ The m s 68.
+
+
+
+
+ The m s 69.
+
+
+
+
+ The m s 70.
+
+
+
+
+ The m s 71.
+
+
+
+
+ The m s 72.
+
+
+
+
+ The m s 73.
+
+
+
+
+ The m s 74.
+
+
+
+
+ The m s 75.
+
+
+
+
+ The m s 76.
+
+
+
+
+ The m s 77.
+
+
+
+
+ The m s 78.
+
+
+
+
+ The m s 79.
+
+
+
+
+ The m s 80.
+
+
+
+
+ The m s 81.
+
+
+
+
+ The m s 82.
+
+
+
+
+ The m s 83.
+
+
+
+
+ The m s 84.
+
+
+
+
+ The m s 85.
+
+
+
+
+ The m s 86.
+
+
+
+
+ The m s 87.
+
+
+
+
+ The m s 88.
+
+
+
+
+ The m s 89.
+
+
+
+
+ The m s 90.
+
+
+
+
+ The m s 91.
+
+
+
+
+ The m s 92.
+
+
+
+
+ The m s 93.
+
+
+
+
+ The m s 94.
+
+
+
+
+ The m s 95.
+
+
+
+
+ The m s 96.
+
+
+
+
+ The m s 97.
+
+
+
+
+ The m s 98.
+
+
+
+
+ The m s 99.
+
+
+
+
+ The m s 100.
+
+
+
+
+ The SIM energy type.
+
+
+
+
+ SID energy
+
+
+
+
+ CV energy
+
+
+
+
+ The method converts from scan event accurate mass enumeration read from the raw file to
+ the Scan Filter (public) Accurate Mass enumeration.
+
+
+ The scan event's mass type read from the raw file.
+
+
+ The enumeration.
+
+
+
+
+ The tolerance units.
+
+
+
+
+ Milli-mass unit.
+
+
+
+
+ Parts per million.
+
+
+
+
+ Atomic Mass Unit.
+
+
+
+
+ The tune data enumerations, for legacy LCQ files.
+
+
+
+
+ The source type.
+
+
+
+
+ The unknown.
+
+
+
+
+ electron impact.
+
+
+
+
+ chemical ionization.
+
+
+
+
+ electro-spray ionization.
+
+
+
+
+ atmospheric pressure chemical ionization.
+
+
+
+
+ laser desorption.
+
+
+
+
+ fast atom bombardment.
+
+
+
+
+ particle beam.
+
+
+
+
+ thermo-spray ionization.
+
+
+
+
+ The virtual device types.
+
+
+
+
+ No device.
+
+
+
+
+ MS Device
+
+
+
+
+ Basically same as UV_DEVICE but acquired through MS (not to be confused with UV)
+
+
+
+
+ The Analog Device card in the PC
+
+
+
+
+ PDA Device
+
+
+
+
+ UV Device
+
+
+
+
+ Special device that has no scan data, but status log only (HN)
+
+
+
+
+ The device container allow a mimmally initalized version of the device to exists
+ which can support version checks or other needs.
+ All "large data" is perfomed on first access of the FullDevice.
+ "PartialDevice" can be used in a dispose call, as unititze items from
+ "FullDevice" will not need to be disposed.
+
+
+
+
+ Gets or sets an instance of the device that has been minimally initialized
+
+
+
+
+ Gets or sets an instance of the device, which contains all data.
+
+
+
+
+ The file header loader. Reads an Xcalibur file header.
+
+
+
+
+ Create a File Header interface to read a file header.
+
+ Name of the file.
+ Access to the file header
+ Thrown when there are problems with the file name
+ Only 64 bit applications are supported by this project
+
+
+
+ The AutoSamplerConfig interface.
+
+
+
+
+ Gets the tray index.
+
+
+
+
+ Gets the tray name.
+
+
+
+
+ Gets the tray shape.
+
+
+
+
+ Gets the vial index.
+
+
+
+
+ Gets the vials per tray.
+
+
+
+
+ Gets the vials per tray x.
+
+
+
+
+ Gets the vials per tray y.
+
+
+
+
+ The additional (optional) features which can be returned with a scan.
+
+
+
+
+ Nothing but mass intensity and peak flags
+
+
+
+
+ Noise and baseline values
+
+
+
+
+ Return Charge Data
+
+
+
+
+ Return Resolution data
+
+
+
+
+ Profile data may be needed
+
+
+
+
+ Debug data may be needed
+
+
+
+
+ Return all data
+
+
+
+
+ The Device interface.
+
+
+
+
+ Gets the device type.
+
+
+
+
+ Gets the error log entries.
+
+
+
+
+ Gets the instrument id.
+
+
+
+
+ Gets the run header.
+
+
+
+
+ Gets the status log entries.
+
+
+
+
+ Gets the absolute position of the end of this device data.
+
+
+
+
+ Gets or sets a value indicating whether this was initialized when the file was in acquisition.
+
+
+
+
+ Support for lazy init of device.
+ Device construction does "some work" to validate a device.
+ Any "heavy data decoding" is delayed until the device is first used.
+
+ The device
+
+
+
+ The method gets the scan index for the scan number.
+
+
+ The scan number.
+
+
+ The object for the scan number.
+
+
+ If the scan number is not in range.
+
+
+
+
+ The method gets the retention time for the scan number.
+
+
+ The scan number.
+
+
+ The retention time for the scan number.
+
+
+ If the scan number is not in range.
+
+
+
+
+ Gets the packet.
+
+ The scan number.
+ if set to true [include reference and exception data].
+ For UV device only, negative one (-1) for getting all the channel data by the given scan number
+ Optional data which can be returned with a scan
+ The data for the scan
+
+
+
+ Gets the segment peaks.
+
+
+ The scan number.
+
+
+ The number segments.
+
+
+ The number all peaks.
+
+
+ The packet.
+
+
+ if set to true [include reference and exception data].
+
+
+ The data for the scan
+
+
+
+
+ The Error Log interface.
+
+
+
+
+ Gets the number of entries in the error log.
+
+
+
+
+ The method gets an error log item by looking up the index
+
+ The index.
+ return the entries in the log by index
+
+
+
+ The FilterScanEvent interface.
+
+
+
+
+ Gets or sets the meta filters.
+
+
+
+
+ Gets or sets the filter mass precision.
+
+
+
+
+ Gets or sets the locale name.
+
+
+
+
+ Gets the total source values, which is all CID and CV.
+
+
+
+
+ Gets the table of compensation voltages valid.
+
+
+
+
+ Gets the table of source CID valid.
+
+
+
+
+ Calculate the number of compensation voltage values.
+
+
+ The .
+
+
+
+
+ set filter mass resolution by mass precision.
+ Example: "precision =3", resolution = "0.001"
+
+
+ The precision.
+
+
+
+
+ set filter mass resolution.
+
+
+ The mass resolution.
+
+
+
+
+ convert to string.
+
+
+ The .
+
+
+
+
+ Gets the number of source CID info values.
+
+
+ The .
+
+
+
+
+ Defines status from ICIS system instruments.
+
+
+
+
+ Gets the status.
+
+
+ The status.
+
+
+
+
+ The Instrument Id interface.
+
+
+
+
+ Gets or sets the absorbance unit.
+
+
+
+
+ Gets the channel labels.
+
+
+
+
+ Gets the flags.
+
+
+
+
+ Gets the hardware rev.
+
+
+
+
+ Gets a value indicating whether is valid.
+
+
+
+
+ Gets the model.
+
+
+
+
+ Gets the name.
+
+
+
+
+ Gets the serial number.
+
+
+
+
+ Gets the software rev.
+
+
+
+
+ Gets the x axis.
+
+
+
+
+ Gets the y axis.
+
+
+
+
+ Gets a value indicating whether this instance is TSQ quantum file.
+
+
+ true if this instance is TSQ quantum file; otherwise, false.
+
+
+
+
+ Provides methods to write an instrument method file.
+
+
+
+
+ Gets a value indicating whether this file has detected an error.
+ If this is false: Other error properties in this interface have no meaning.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets the instrument method file name.
+
+
+
+
+ Gets the file header for the instrument method file
+
+
+
+
+ Updates the file header field - "Description".
+
+ The description.
+
+
+
+ Update the instrument method file header with the file header values passed in.
+ Only updates object values in memory, does not write to disk.
+
+ The file header.
+
+
+
+ Get the list of device methods which are currently defined in this instrument method.
+ Returns an empty list, if this is a newly created instrument method.
+ ---
+ In order to add/update device method, caller should first call this to get the list of devices.
+ Once you've the list, you can start adding a new device method or editing/removing an existing device method.
+
+ The list of device methods.
+
+
+
+ Save this instrument methods to a file.
+ It should overwrite the instrument methods file if the file exists; otherwise, a
+ new file should be created.
+
+ File name of the instrument method.
+ True if save successfully; otherwise false.
+ name;@The name cannot be empty.
+
+
+
+ The Memory Mapped Accessor interface that has read and write capabilities.
+
+
+
+
+ The Memory Map Reader interface.
+
+
+
+
+ Gets the initial offset.
+
+
+
+
+ Gets the size of view.
+
+
+ The size of view.
+
+
+
+
+ Gets the stream id.
+
+
+
+
+ Reads the structure array.
+
+ Type of structure
+ The offset into the map.
+ The number of bytes read.
+ Array of structures
+
+
+
+ The method reads a byte.
+
+
+ The offset into the map.
+
+
+ The .
+
+
+
+
+ The method reads an array of bytes.
+
+ The offset into the map.
+
+ The count.
+
+
+ The byte array.
+
+
+
+
+ The method reads a double.
+
+
+ The offset into the map.
+
+
+ The .
+
+
+
+
+ Reads an array of double.
+
+ The offset into the map.
+ The count.
+ The array of doubles
+
+
+
+ The method reads a float.
+
+
+ The offset into the map.
+
+
+ The .
+
+
+
+
+ Reads floats, as an array
+
+ The offset into the map.
+ The count.
+ The array of floats
+
+
+
+ The method reads an integer.
+
+
+ The offset into the map.
+
+
+ The .
+
+
+
+
+ Reads the integers.
+
+ The offset.
+ The count.
+ The array of integers
+
+
+
+ The method reads an array of unsigned integers.
+
+ The offset into the map.
+
+ The number of unsigned integers to read.
+
+
+ The array of unsigned integers.
+
+
+
+
+ The method reads a previous revision structure struct and convert it to the current target revision.
+
+
+ The position from the beginning of the file to start reading.
+
+
+ The size of previous revision structure.
+
+
+ The type of the target structure.
+
+
+ The target structure.
+
+
+
+
+ Reads the short.
+
+ The offset into the map.
+ The short
+
+
+
+ Reads the string.
+
+ The offset into the map.
+ The number of bytes read.
+ The string
+
+
+
+ The method reads a collection of strings starting at the supplied offset
+
+
+ The position to start reading.
+
+ The number of bytes read
+
+ The collection of strings.
+
+
+
+
+ This method reads a simple structure at the start position.
+ Simple structure should have only basic fields (int, float etc)
+ and no internally marshaled data (such as fixed size arrays, or ref types)
+
+
+ The start position.
+
+
+ The structure to read.
+
+
+ The structure.
+
+
+
+
+ This method reads a simple structure array at the start position.
+ Simple structure should have only basic fields (int, float etc)
+ and no internally marshaled data (such as fixed size arrays, or ref types)
+
+
+ The start position.
+
+ Number of array elements
+
+ The structure to read.
+
+
+ The structure.
+
+
+
+
+ The over loaded method reads the structure at the start position,
+ using the Marshal class to determine the size.
+
+
+ The start position.
+
+ The number of byte read
+
+ The structure to read.
+
+
+ The structure.
+
+
+
+
+ The over loaded method reads the structure at the start position,
+ The structure size is passed in.
+
+
+ The start position.
+
+ The number of bytes to read
+
+ The structure to read.
+
+
+ The structure.
+
+
+
+
+ The method reads an unsigned integer.
+
+
+ The offset into the map.
+
+
+ The .
+
+
+
+
+ The method reads an unsigned short.
+
+
+ The offset into the map.
+
+
+ The .
+
+
+
+
+ Read a number of wide characters, and convert to string.
+ If there is a '0' in the string, the string length will be adjusted.
+
+ The offset into the view.
+ The number of bytes read.
+ The converted string
+
+
+
+ Read a number of wide characters, and convert to string
+
+ Offset into the view
+ Number of bytes read by this call (added to input value)
+ Number of 2 byte chars
+ converted string
+
+
+
+ read an array of bytes from a view, expecting a large data array.
+ This uses 64 bit items, to cut down Marshalling overheads
+
+
+ The start position.
+
+ The count of bytes to read
+
+ The array
+
+
+
+
+ The Memory Map Writer interface.
+
+
+
+
+ Writes the structure.
+
+
+ Type of structure
+
+
+ The offset.
+
+
+ The data.
+
+
+ The number of bytes written
+
+
+
+
+ write a struct.
+
+
+ The offset.
+
+
+ The data.
+
+
+ The number of bytes to write.
+
+ Type of structure to write
+
+
+ The number of bytes written
+
+
+
+
+ Writes the float to the memory mapped file.
+
+ The start position.
+ The value.
+ The number of bytes written
+
+
+
+ Writes the double to the memory mapped file.
+
+ The start position.
+ The value.
+ The number of bytes written
+
+
+
+ Writes the byte to the memory mapped file.
+
+ The start position.
+ The value.
+ The number of bytes written
+
+
+
+ Writes the array of bytes to the memory mapped file.
+
+ The start position.
+ The value.
+ The number of bytes written
+
+
+
+ Writes the short to the memory mapped file.
+
+ The start position.
+ The value.
+ The number of bytes written
+
+
+
+ Writes the integer to the memory mapped file.
+
+ The offset.
+ The value.
+ The number of bytes written
+
+
+
+ Using Interlocked operation to increment the specified INT (4-byte) variable and
+ stores the result, as an atomic operation against memory-mapped files in .NET.
+ Note: This method is marked as UNSAFE, which is required for operating
+ memory-mapped file pointer.
+
+ The number of bytes into the accessor at which to begin writing.
+ The incremented value
+
+
+
+ The Method interface, for instrument method files
+
+
+
+
+ Gets the method size.
+
+
+
+
+ Gets the starting offset.
+
+
+
+
+ Gets the original storage name.
+
+
+
+
+ Gets the storage descriptions.
+
+
+
+
+ save a method file.
+
+
+ The viewer.
+
+
+ The method file path.
+
+
+ The force over write.
+
+
+
+
+ The RawFileDeviceWriter interface.
+
+
+
+
+ The save.
+
+
+ The writer.
+
+
+ The errors.
+
+
+ The packet data offset.
+
+
+ The controller header offset.
+
+
+ The .
+
+
+
+
+ Refresh data from memory maps
+
+
+ True if OK
+
+
+
+
+ Gets the run header.
+
+
+
+
+ The RawFileInfo interface.
+
+
+
+
+ Gets the blob size.
+
+
+
+
+ Gets the blob start.
+
+
+
+
+ Gets or sets the computer name.
+
+
+
+
+ Gets a value indicating whether has experiment method.
+
+
+
+
+ Gets a value indicating whether is in acquisition.
+
+
+
+
+ Gets or sets the mass spec data offset.
+
+
+
+
+ Gets the next available controller index.
+
+
+
+
+ Gets the number of virtual controllers.
+
+
+
+
+ Gets the time stamp.
+
+
+
+
+ Gets the user texts.
+
+
+
+
+ Gets the virtual controller data.
+
+
+
+
+ The number of virtual controllers of type.
+
+
+ The type.
+
+
+ The .
+
+
+
+
+ Updates the virtual controller.
+
+ The number virtual controllers.
+ The virtual data offset
+ The offset.
+ Index of the virtual device.
+ Type of the virtual device.
+
+
+
+ The ScanEvent interface.
+
+
+
+
+ Gets the accurate mass type.
+
+
+
+
+ Gets the compensation voltage.
+
+
+
+
+ Gets the compensation voltage type.
+
+
+
+
+ Gets the corona value.
+
+
+
+
+ Gets the dependent data.
+
+
+
+
+ Gets the Detector value.
+
+
+
+
+ Gets the detector value.
+
+
+
+
+ Gets the electron capture dissociation.
+
+
+
+
+ Gets the electron capture dissociation type.
+
+
+
+
+ Gets the electron transfer dissociation.
+
+
+
+
+ Gets the electron transfer dissociation type.
+
+
+
+
+ Gets the enhanced.
+
+
+
+
+ Gets the free region.
+
+
+
+
+ Gets the higher energy CID.
+
+
+
+
+ Gets the higher energy CID type.
+
+
+
+
+ Gets the ionization mode.
+
+
+
+
+ Gets a value indicating whether the scan event is custom - true if trailer
+ scan event should be used.
+
+
+
+
+ Gets a value indicating whether the scan event is valid.
+
+
+
+
+ Gets the lock.
+
+
+
+
+ Gets the MS order.
+
+
+
+
+ Gets the mass analyzer type.
+
+
+
+
+ Gets the mass calibrators.
+
+
+
+
+ Gets the mass ranges.
+
+
+
+
+ Gets the multi photon dissociation.
+
+
+
+
+ Gets the multi photon dissociation type.
+
+
+
+
+ Gets the multi state activation.
+
+
+
+
+ Gets the multiplex.
+
+
+
+
+ Gets the name.
+
+
+
+
+ Gets the parameter a.
+
+
+
+
+ Gets the parameter b.
+
+
+
+
+ Gets the parameter f.
+
+
+
+
+ Gets the parameter k.
+
+
+
+
+ Gets the parameter r.
+
+
+
+
+ Gets the parameter v.
+
+
+
+
+ Gets the photo ionization.
+
+
+
+
+ Gets the polarity.
+
+
+
+
+ Gets the pulsed q dissociation.
+
+
+
+
+ Gets the pulsed q dissociation type.
+
+
+
+
+ Gets the reactions.
+
+
+
+
+ Gets the scan data type.
+
+
+
+
+ Gets the scan type.
+
+
+
+
+ Gets the scan type index. Scan Type Index indicates the segment/scan event for this filter scan event.
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ Gets the sector scan.
+
+
+
+
+ Gets the source fragmentation.
+
+
+
+
+ Gets the source fragmentation mass ranges.
+
+
+
+
+ Gets value to indicate how source fragmentation values are interpreted.
+
+
+
+
+ Gets or sets the source fragmentations.
+
+
+
+
+ Gets the supplemental activation.
+
+
+
+
+ Gets the turbo scan.
+
+
+
+
+ Gets the ultra.
+
+
+
+
+ Gets the wideband.
+
+
+
+
+ To the automatic filter string.
+
+ The scan event.
+ The mass precision.
+ The chars maximum.
+ The energy precision.
+ Auto filter string.
+
+
+
+ Gets the run header filter mass precision.
+
+ the run header filter mass precision
+
+
+
+ Define an editable scan event interface
+
+
+
+
+ Gets or sets the accurate mass type.
+
+
+
+
+ Gets or sets the scan data type.
+
+
+
+
+ Gets or sets the Polarity.
+
+
+
+
+ Gets or sets the scan power setting.
+
+ See for possible values
+
+
+
+ Gets or sets the dependent scan setting.
+
+
+
+
+ Gets or sets source fragmentation scan setting.
+
+
+
+
+ Gets or sets the scan type.
+
+
+
+
+ Gets or sets the Detector value.
+
+
+
+
+ Gets or sets the mass analyzer type.
+
+
+
+
+ Gets or sets a value which indicates how source fragmentation values are interpreted.
+
+
+
+
+ Gets or sets the turbo scan.
+
+
+
+
+ Gets or sets the ionization mode.
+
+
+
+
+ Gets or sets the detector value.
+
+
+
+
+ Gets or sets the corona value.
+
+
+
+
+ Gets or sets the wideband.
+
+
+
+
+ Gets or sets the sector scan.
+
+
+
+
+ Gets or sets the ultra.
+
+
+
+
+ Gets or sets the lock.
+
+
+
+
+ Gets or sets the enhanced.
+
+
+
+
+ Gets or sets the free region.
+
+
+
+
+ Gets or sets the multi photon dissociation.
+
+
+
+
+ Gets or sets the multi photon dissociation type.
+
+
+
+
+ Gets or sets the electron capture dissociation.
+
+
+
+
+ Gets or sets the electron capture dissociation type.
+
+
+
+
+ Gets or sets the pulsed q dissociation.
+
+
+
+
+ Gets or sets the pulsed q dissociation type.
+
+
+
+
+ Gets or sets the photo ionization.
+
+
+
+
+ Gets or sets the electron transfer dissociation type.
+
+
+
+
+ Gets or sets the supplemental activation.
+
+
+
+
+ Gets or sets SPS Multi notch (Synchronous Precursor Selection)
+
+
+
+
+ Gets or sets the parameter r.
+
+
+
+
+ Gets or sets the parameter v.
+
+
+
+
+ Gets or sets the parameter a.
+
+
+
+
+ Gets or sets the parameter b.
+
+
+
+
+ Gets or sets the parameter f.
+
+
+
+
+ Gets or sets the name.
+
+
+
+
+ Gets or sets the multi state activation.
+
+
+
+
+ Gets or sets the multiplex.
+
+
+
+
+ Gets or sets the higher energy CID.
+
+
+
+
+ Gets or sets the higher energy CID type.
+
+
+
+
+ Gets or sets the electron transfer dissociation.
+
+
+
+
+ Gets or sets the compensation voltage.
+
+
+
+
+ Gets or sets the compensation voltage type.
+
+
+
+
+ Base of objects which can be loaded from a raw file.
+ Defines ability to load an object.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The RealTimeAccess interface.
+
+
+
+
+ Gets the file revision.
+
+
+
+
+ Gets the header file map name.
+ It's only meaningful in Generic data.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ Close and reopen all of the file mapping objects for this file object
+
+ True refresh succeed, false otherwise
+
+
+
+ The RunHeader interface.
+
+
+
+
+ Gets the software revision.
+
+
+
+
+ Gets the start time.
+
+
+
+
+ Gets the end time.
+
+
+
+
+ Gets the first spectrum.
+
+
+
+
+ Gets the last spectrum.
+
+
+
+
+ Gets the low mass.
+
+
+
+
+ Gets the high mass.
+
+
+
+
+ Gets the maximum intensity.
+
+
+
+
+ Gets the max integrated intensity.
+
+
+
+
+ Gets the comment 1.
+
+
+
+
+ Gets the comment 2.
+
+
+
+
+ Gets the data Packet filename.
+
+
+
+
+ Gets the error log filename.
+
+
+
+
+ Gets or sets the error log position.
+
+
+
+
+ Gets the expected run time.
+
+
+
+
+ Gets the filter mass precision.
+
+
+
+
+ Gets the instrument id file name.
+
+
+
+
+ Gets the instrument scan events file name.
+
+
+
+
+ Gets a value indicating whether the device is in acquisition.
+
+
+
+
+ Gets the mass resolution.
+
+
+
+
+ Gets the number of error logs.
+
+
+
+
+ Gets the number of spectra.
+
+
+
+
+ Gets the number of status log.
+
+
+
+
+ Gets the number of trailer extra.
+
+
+
+
+ Gets the number of trailer scan events.
+
+
+
+
+ Gets the number of tune data.
+
+
+
+
+ Gets or sets the packet position.
+
+
+
+
+ Gets the run header position.
+
+
+
+
+ Gets the scan events file name.
+
+
+
+
+ Gets the spectra file name.
+
+
+
+
+ Gets or sets the spectrum position.
+
+
+
+
+ Gets the status log filename.
+
+
+
+
+ Gets the status log header filename.
+
+
+
+
+ Gets or sets the status log position.
+
+
+
+
+ Gets the tolerance unit.
+
+
+
+
+ Gets the trailer extra filename.
+
+
+
+
+ Gets or sets the trailer extra position.
+
+
+
+
+ Gets the trailer header filename.
+
+
+
+
+ Gets the trailer scan events filename.
+
+
+
+
+ Gets or sets the trailer scan events position.
+
+
+
+
+ Gets the tune data filename.
+
+
+
+
+ Gets the tune data header filename.
+
+
+
+
+ Gets the internal run header struct.
+
+
+
+
+ Copies the specified source.
+
+ The source.
+
+
+
+ The Scan Index interface.
+
+
+
+
+ Gets the number packets.
+
+
+
+
+ Gets the packet type.
+
+
+
+
+ Gets the data offset.
+
+
+
+
+ Gets the start time.
+
+
+
+
+ Gets the Tic value.
+
+
+
+
+ The Sequence Row interface.
+
+
+
+
+ Gets the barcode.
+
+
+
+
+ Gets the barcode status.
+
+
+
+
+ Gets the calibration level
+
+
+
+
+ Gets the calibration file.
+
+
+
+
+ Gets the comment
+
+
+
+
+ Gets the concentration or dilution factor
+
+
+
+
+ Gets the extra user columns.
+
+
+
+
+ Gets the injection volume
+
+
+
+
+ Gets the instrument.
+
+
+
+
+ Gets the internal standard amount
+
+
+
+
+ Gets the method.
+
+
+
+
+ Gets the path.
+
+
+
+
+ Gets the raw file name.
+
+
+
+
+ Gets the format revision of this object
+
+
+
+
+ Gets the sequence row number
+
+
+
+
+ Gets the sample id
+
+
+
+
+ Gets the sample name
+
+
+
+
+ Gets the (application specific) sample type
+
+
+
+
+ Gets the sample volume
+
+
+
+
+ Gets the sample weight
+
+
+
+
+ Gets the user texts.
+
+
+
+
+ Gets the short vial string (obsolete?)
+
+
+
+
+ The Status Log interface.
+
+
+
+
+ Gets the number of Status log items.
+
+
+
+
+ Gets the data descriptors.
+
+
+
+
+ The method performs a binary search to find the status entry that is closest to the given retention time.
+
+
+ The retention time.
+
+
+ The status entry containing the of label value pairs for the retention time.
+ If there are no entries in the log, it will an empty list.
+
+
+
+
+ The method gets all the log entries' value pair at the specified index.
+
+
+ The index into the "status log header" for this field.
+
+
+ All the log entries' value pair at the specified index.
+
+
+
+
+ Gets the status log for a given index into the set of logs.
+ This returns the log and it's time stamp.
+
+ Index into table of logs (from 0 to RunHeader.NumStatusLog-1)
+ The log values for the given index
+
+
+
+ Gets the (raw) status log data at a given index in the log.
+ Designed for efficiency, this method does not convert logs to display string format.
+
+ Index (from 0 to "RunHeader.StatusLogCount -1")
+ Log data at the given index
+
+
+
+ Gets the (raw) status log data at a given retention time in the log.
+ Designed for efficiency, this method does not convert logs to display string format.
+
+ Retention time
+ Log data at the given retention time
+
+
+
+ Gets the labels and index positions of the status log items which may be plotted.
+ That is, the numeric items.
+
+ Labels names are returned by "Key" and the index into the log is "Value".
+
+
+
+ Get a status log record from the sorted log
+ which fixes out of order or duplictae instrument data
+
+
+ The log entry
+
+
+
+ The UserIdStamp interface.
+
+
+
+
+ Gets or sets the time when this stamp was created
+
+
+
+
+ Gets or sets the name of the user who acquired the file. For example "John Smith"
+
+
+
+
+ Gets or sets the login name of the operator who acquired the file. For example "jsmith"
+
+
+
+
+ Class for various file loaders, with common
+ file header format
+
+
+
+
+ Gets or sets the file header.
+
+
+
+
+ Check for valid version of the file
+
+
+ The file Type.
+
+
+ The version number
+
+
+ If version is not valid
+
+
+
+
+ The processing method file loader.
+ Loads data from PMD file
+
+
+
+
+ Gets the id.
+
+
+
+
+ Gets a value indicating whether this instance is open.
+
+
+ true if this instance is open; otherwise, false.
+
+
+
+
+ Gets the processing method file name.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor initializes a new instance of ProcessingMethodFileLoader class.
+ Must be called prior to data access
+
+
+ The file path.
+
+
+ The file path is empty or null.
+
+
+ A problem encountered when reading the raw file.
+
+
+
+
+ Load data from a processing method file.
+
+
+ The viewer.
+
+
+
+
+ Gets the view type.
+
+
+
+
+ Gets the raw file name.
+
+
+
+
+ skip any legacy custom reports (not imported)
+
+
+ The viewer (memory map)
+
+
+ The start position in the view.
+
+
+ The file revision.
+
+
+ The updated map offset
+
+
+
+
+ Read the summary reports
+
+
+ The viewer (memory map)
+
+
+ The start position in the view.
+
+
+ The file revision.
+
+
+ The updated map offset
+
+
+
+
+ Read the programs (EXE).
+
+
+ The viewer (memory map)
+
+
+ The start position in the view.
+
+
+ The file revision.
+
+
+ The updated map offset
+
+
+
+
+ Read the report names.
+
+
+ The viewer (memory map)
+
+
+ The start position in the view.
+
+
+ The file revision.
+
+
+ The updated map offset
+
+
+
+
+ Read library search settings
+
+
+ The viewer (memory map)
+
+
+ The start position, in the map
+
+
+ The file revision.
+
+
+ The updated start, for the next object
+
+
+
+
+ Read spec enhancement settings
+
+
+ The viewer (memory map).
+
+
+ The start position, in the map.
+
+
+ The file revision.
+
+
+ The updated start, for the next object
+
+
+
+
+ read processing method options.
+
+
+ The viewer (memory map)
+
+
+ The start position, in the map.
+
+
+ The file revision.
+
+
+ The updated start, for the next object
+
+
+
+
+ Read standard report options
+
+
+ The viewer (memory map).
+
+
+ The start position, in the map.
+
+
+ The file revision.
+
+
+ The updated start, for the next object.
+
+
+
+
+ Read peak detection settings
+
+
+ The viewer (memory map).
+
+
+ The start position, in the map.
+
+
+ The file revision.
+
+
+ The updated start, for the next object.
+
+
+
+
+ Read and skip real time report settings
+
+
+ The viewer (memory map).
+
+
+ The start position, in the map.
+
+
+ The file revision.
+
+
+ The updated start, for the next object.
+
+
+
+
+ Gets the processing method options.
+
+
+
+
+ Gets Options for "standard reports"
+
+
+
+
+ Gets the peak detection.
+
+
+
+
+ Gets the spec enhancement options.
+
+
+
+
+ Gets the library search.
+
+
+
+
+ Gets the library constraints.
+
+
+
+
+ Gets the sample reports.
+
+
+
+
+ Gets the programs.
+
+
+
+
+ Gets the summary reports.
+
+
+
+
+ Gets the peak display options.
+
+
+
+
+ Gets the peak purity.
+
+
+
+
+ Gets the components.
+
+
+
+
+ Gets or sets the mass options.
+
+
+
+
+ The Errors interface.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets a value indicating whether this file has detected an error.
+ If this is false: Other error properties in this interface have no meaning.
+
+
+
+
+ The raw file loader.
+
+
+
+
+ Prevents a default instance of the class from being created.
+
+
+
+
+ Initializes a new instance of the class.
+ Default constructor initializes a new instance of RawFile class.
+ Must be called prior to data access
+
+
+ The file path.
+
+
+ The file path is empty or null.
+
+
+ A problem encountered when reading the raw file.
+
+
+
+
+ Gets the identifier.
+
+
+ The identifier.
+
+
+
+
+ Gets the raw file path.
+
+
+ The raw file path.
+
+
+
+
+ Gets a value indicating whether this instance is open.
+
+
+ true if this instance is open; otherwise, false.
+
+
+
+
+ Gets the auto sampler config.
+
+
+ The automatic sampler configuration.
+
+
+
+
+ Gets the method info.
+
+
+ The method information.
+
+
+
+
+ Gets or sets the raw file information.
+
+
+ The raw file information.
+
+
+
+
+ Gets the devices.
+
+
+ The devices.
+
+
+
+
+ Gets or sets the sequence.
+
+
+ The sequence.
+
+
+
+
+ Gets the stream id.
+
+
+
+
+ Gets the file revision.
+
+
+
+
+ Gets the header file map name.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ Gets the audit trail information.
+
+
+
+
+ Test if the file is still in acquisition.
+
+
+ True if the file is still in acquisition.
+
+
+
+
+ The dispose.
+
+
+
+
+ The export instrument method.
+
+
+ The method file path.
+
+
+ The force overwrite.
+
+
+
+
+ Load the raw file.
+
+
+ The viewer.
+
+ Indicate whether the named mutex is successfully acquired or not
+
+ Thrown if the file is not a recognized format. The file is either not a THERMO Fisher
+ Raw file or the version is less than the initial version of XCALIBUR files.
+
+
+
+
+ Read various blocks describing the raw file
+
+ View into file
+ offset into view
+ Updated position
+
+
+
+ Initialize device data, for "complete file" or "real time"
+ Reform CRC check on completed files.
+
+ view into file
+
+
+
+ Test if the file is old LCQ format
+
+ view into file
+ offset into view
+ True if this method decoded the data as LCQ format
+
+
+
+ The validate CRC.
+
+
+ The viewer.
+
+ Thrown if CRC is no valid
+
+
+
+
+ load the instrument method.
+
+
+ The viewer.
+
+
+ The start position in the view.
+
+
+
+
+ Test that the raw file checksum is valid
+
+ Bytes of the raw file
+ True on passing test
+
+
+
+ Initials the device lists.
+
+ Thrown if a device cannot be added to the list
+
+
+
+ Gets the audit trail information.
+
+ Audit trail object
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+
+ The .
+
+
+
+
+ create the list of devices when in acquisition.
+ Cannot "lazy load" here, as we need to "claim" a reference count
+ to all devices, and all of their temp files.
+
+
+ The refresh fail counter.
+
+
+ The .
+
+
+
+
+ Refreshes the devices.
+
+
+ The number of virtual controllers.
+
+ Thrown if device entry cannot be created
+
+
+
+
+ The raw file loader helper.
+
+
+
+
+ Convert instruments index to controller index.
+
+ Type of the instrument.
+ Index of the instrument.
+ The list of virtual controller information.
+ The index into the table of controllers
+
+
+
+ get virtual controller info.
+
+
+
+ The instrument type.
+
+
+ The instrument index.
+
+
+ The virtual controller information.
+
+
+ The detectors.
+
+
+ The selected device.
+
+
+ The .
+
+
+
+
+ Gets the device run header.
+
+ The loader ID
+ The device key.
+ The run header
+ Thrown on null device or null run header
+
+
+
+ The sequence file loader. Loads data from SLD file.
+
+
+
+
+ Gets or sets the id.
+
+
+
+
+ Gets a value indicating whether this instance is open.
+
+
+ true if this instance is open; otherwise, false.
+
+
+
+
+ Gets the sequence info.
+
+
+
+
+ Gets or sets the sequence file name.
+
+
+
+
+ Gets the samples.
+
+
+
+
+ Initializes a new instance of the class.
+ Must be called prior to data access
+
+
+ The file path.
+
+
+ The file path is empty or null.
+
+
+ A problem encountered when reading the raw file.
+
+
+
+
+ Load sequence file.
+
+
+ The viewer. (memory mapped file)
+
+
+
+
+ Read meta data.
+
+
+ The viewer (memory map)
+
+
+ The start of the data (index into map)
+
+
+ The file revision.
+
+
+ The offset into the map after this data
+
+
+
+
+ The storage description.
+ Describes an instrument method storage,
+ including the device name, device descriptive name (display name),
+ and the text description of the method.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The storage name.
+
+
+ The description.
+
+
+
+
+ Gets or sets the device descriptive (display) name.
+
+
+
+
+ Gets or sets the storage name. This is the device's "registry name".
+ This name should not be shown to the operator as "device name".
+ Use "Description" instead for the devices' display name.
+
+
+
+
+ Gets or sets the "plain text" version of the instrument method.
+
+
+
+
+ The fast scan from raw data class, which supplies code needed for the
+ chromatogram batch generator to get data from the IRawDataPlus interface.
+ Enhanced version uses methods which only return mass and intensity data.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The MS data reader.
+
+ Scan filter, which may be null.
+ When not null: All data needing these scans has the same filter
+ True if ref and exception peaks should be used
+
+
+
+ The parallel reader.
+
+
+ The scan index.
+
+
+ The array of scans, read in parallel.
+
+
+
+
+ The scan reader.
+
+
+ Data about the scan.
+
+
+ The .
+
+
+
+
+ The auto sampler config struct.
+
+
+
+
+ Defines the BufferInfo type for backward compatibility with FileIO.
+ Ex. HomePage real time plot checks the Number Element field in scan index buffer info,
+ to determine whether the scans data is available for display and
+ raw file stitching is also using it.
+
+
+
+
+ Generic Data Item structure.
+
+
+
+
+ String length for
+
+ or precision for FLOAT and DOUBLE.
+ For FLOAT and DOUBLE, set LOWORD(n) = precision,
+ and HIWORD(n) = 0 for normal format and = 1 for
+ scientific notation (e.g. 1.056e-7)
+
+
+
+
+ Structure for Instrument Id Information.
+
+
+
+
+ Old structure for Instrument Id Information.
+
+
+
+
+ The run header struct.
+
+
+
+
+ software revision level
+
+
+
+
+ # of status log records written in this file
+
+
+
+
+ # of error log records written in this file
+
+
+
+
+ offset of where the scan indexes starts in the virtual controller data
+
+
+
+
+ offset of where the virtual data starts in the virtual controller data
+
+
+
+
+ offset of where the status log starts in the virtual controller data
+
+
+
+
+ offset of where the error log starts in the virtual controller data
+
+
+
+
+ Offset of where the run header starts in the virtual controller data. This block is
+ new for Xcalibur, need to be in shared memory.
+ if time permits will come up with a scheme to force these names into a separate memory
+ pool that only this object knows about so the disk file will not contain this data.
+
+
+
+
+ Start of Xcalibur changes phase 2
+ 1/2 Peak width for current device (e.g. 0.5 for unit resolution)
+
+
+
+
+ Expected run time based on experiment method.
+
+
+
+
+ Instrument identification block.
+
+
+
+
+ Scan events written during collection (e.g. Tune or data dependent)
+
+
+
+
+ Per scan scan event objects
+
+
+
+
+ Instrument specific scan trailer header data
+
+
+
+
+ Instrument specific scan trailer data (not TRAILER)
+
+
+
+
+ Instrument specific status log header data
+
+
+
+
+ Instrument specific tune data header
+
+
+
+
+ can be PPM, AMU, MMU
+
+
+
+
+ how many digits to display in filter strings.
+
+
+
+
+ Offset of where the scan indexes starts in the virtual controller data
+
+
+
+
+ offset of where the virtual data starts in the virtual controller data
+
+
+
+
+ offset of where the status log starts in the virtual controller data
+
+
+
+
+ offset of where the error log starts in the virtual controller data
+
+
+
+
+ offset of where the run header starts in the virtual controller data
+
+
+
+
+ Extra file pointers and counts for later use.
+
+
+
+
+ Requested by eric for not using hardcoded instrument types in the code i.e instead of saying in the code if(InstrumentType == "Quantum" ) do this way if(instrumentType==1)
+
+
+
+
+ The run header struct version 1.
+
+
+
+
+ software revision level
+
+
+
+
+ # of status log records written in this file
+
+
+
+
+ # of error log records written in this file
+
+
+
+
+ offset of where the scan indexes starts in the virtual controller data
+
+
+
+
+ offset of where the virtual data starts in the virtual controller data
+
+
+
+
+ offset of where the status log starts in the virtual controller data
+
+
+
+
+ offset of where the error log starts in the virtual controller data
+
+
+
+
+ The run header struct.
+
+
+
+
+ software revision level
+
+
+
+
+ # of status log records written in this file
+
+
+
+
+ # of error log records written in this file
+
+
+
+
+ offset of where the scan indexes starts in the virtual controller data
+
+
+
+
+ offset of where the virtual data starts in the virtual controller data
+
+
+
+
+ offset of where the status log starts in the virtual controller data
+
+
+
+
+ offset of where the error log starts in the virtual controller data
+
+
+
+
+ Offset of where the run header starts in the virtual controller data. This block is
+ new for Xcalibur, need to be in shared memory.
+ if time permits will come up with a scheme to force these names into a separate memory
+ pool that only this object knows about so the disk file will not contain this data.
+
+
+
+
+ Start of Xcalibur changes phase 2
+ 1/2 Peak width for current device (e.g. 0.5 for unit resolution)
+
+
+
+
+ Expected run time based on experiment method.
+
+
+
+
+ Instrument identification block.
+
+
+
+
+ Scan events written during collection (e.g. Tune or data dependent)
+
+
+
+
+ Per scan scan event objects
+
+
+
+
+ Instrument specific scan trailer header data
+
+
+
+
+ Instrument specific scan trailer data (not TRAILER)
+
+
+
+
+ Instrument specific status log header data
+
+
+
+
+ Instrument specific tune data header
+
+
+
+
+ The run header struct.
+
+
+
+
+ software revision level
+
+
+
+
+ # of status log records written in this file
+
+
+
+
+ # of error log records written in this file
+
+
+
+
+ offset of where the scan indexes starts in the virtual controller data
+
+
+
+
+ offset of where the virtual data starts in the virtual controller data
+
+
+
+
+ offset of where the status log starts in the virtual controller data
+
+
+
+
+ offset of where the error log starts in the virtual controller data
+
+
+
+
+ Offset of where the run header starts in the virtual controller data. This block is
+ new for Xcalibur, need to be in shared memory.
+ if time permits will come up with a scheme to force these names into a separate memory
+ pool that only this object knows about so the disk file will not contain this data.
+
+
+
+
+ Start of Xcalibur changes phase 2
+ 1/2 Peak width for current device (e.g. 0.5 for unit resolution)
+
+
+
+
+ Expected run time based on experiment method.
+
+
+
+
+ Instrument identification block.
+
+
+
+
+ Scan events written during collection (e.g. Tune or data dependent)
+
+
+
+
+ Per scan scan event objects
+
+
+
+
+ Instrument specific scan trailer header data
+
+
+
+
+ Instrument specific scan trailer data (not TRAILER)
+
+
+
+
+ Instrument specific status log header data
+
+
+
+
+ Instrument specific tune data header
+
+
+
+
+ can be PPM, AMU, MMU
+
+
+
+
+ The run header struct.
+
+
+
+
+ software revision level
+
+
+
+
+ # of status log records written in this file
+
+
+
+
+ # of error log records written in this file
+
+
+
+
+ offset of where the scan indexes starts in the virtual controller data
+
+
+
+
+ offset of where the virtual data starts in the virtual controller data
+
+
+
+
+ offset of where the status log starts in the virtual controller data
+
+
+
+
+ offset of where the error log starts in the virtual controller data
+
+
+
+
+ Offset of where the run header starts in the virtual controller data. This block is
+ new for Xcalibur, need to be in shared memory.
+ if time permits will come up with a scheme to force these names into a separate memory
+ pool that only this object knows about so the disk file will not contain this data.
+
+
+
+
+ Start of Xcalibur changes phase 2
+ 1/2 Peak width for current device (e.g. 0.5 for unit resolution)
+
+
+
+
+ Expected run time based on experiment method.
+
+
+
+
+ Instrument identification block.
+
+
+
+
+ Scan events written during collection (e.g. Tune or data dependent)
+
+
+
+
+ Per scan scan event objects
+
+
+
+
+ Instrument specific scan trailer header data
+
+
+
+
+ Instrument specific scan trailer data (not TRAILER)
+
+
+
+
+ Instrument specific status log header data
+
+
+
+
+ Instrument specific tune data header
+
+
+
+
+ can be PPM, AMU, MMU
+
+
+
+
+ how many digits to display in filter strings.
+
+
+
+
+ The run header struct.
+
+
+
+
+ software revision level
+
+
+
+
+ # of status log records written in this file
+
+
+
+
+ # of error log records written in this file
+
+
+
+
+ offset of where the scan indexes starts in the virtual controller data
+
+
+
+
+ offset of where the virtual data starts in the virtual controller data
+
+
+
+
+ offset of where the status log starts in the virtual controller data
+
+
+
+
+ offset of where the error log starts in the virtual controller data
+
+
+
+
+ Offset of where the run header starts in the virtual controller data. This block is
+ new for Xcalibur, need to be in shared memory.
+ if time permits will come up with a scheme to force these names into a separate memory
+ pool that only this object knows about so the disk file will not contain this data.
+
+
+
+
+ Start of Xcalibur changes phase 2
+ 1/2 Peak width for current device (e.g. 0.5 for unit resolution)
+
+
+
+
+ Expected run time based on experiment method.
+
+
+
+
+ Instrument identification block.
+
+
+
+
+ Scan events written during collection (e.g. Tune or data dependent)
+
+
+
+
+ Per scan scan event objects
+
+
+
+
+ Instrument specific scan trailer header data
+
+
+
+
+ Instrument specific scan trailer data (not TRAILER)
+
+
+
+
+ Instrument specific status log header data
+
+
+
+
+ Instrument specific tune data header
+
+
+
+
+ can be PPM, AMU, MMU
+
+
+
+
+ how many digits to display in filter strings.
+
+
+
+
+ Offset of where the scan indexes starts in the virtual controller data
+
+
+
+
+ offset of where the virtual data starts in the virtual controller data
+
+
+
+
+ offset of where the status log starts in the virtual controller data
+
+
+
+
+ offset of where the error log starts in the virtual controller data
+
+
+
+
+ offset of where the run header starts in the virtual controller data
+
+
+
+
+ Extra file pointers and counts for later use.
+
+
+
+
+ The file header structure.
+
+
+
+
+ 2-byte ID for Finnigan / Enterprise file -- constant for all Enterprise files
+
+
+
+
+ Finnigan signature
+
+
+
+
+ file type
+
+
+
+
+ file revision - actually, this is the file format version.
+
+
+
+
+ file-creation audit information.
+
+
+
+
+ file creation 32-bit CRC
+
+
+
+
+ file-change audit information (i.e. when file is closed)
+
+
+
+
+ count of times the file was edited
+
+
+
+
+ count of times calibrated
+
+
+
+
+ reserved space in the header, for future use
+ do not expose access to these values.
+
+
+
+
+ user's narrative description of the file.
+
+
+
+
+ end-of-data marker
+
+
+
+
+ The File Time structure from C++.
+ Represents the number of 100-nanosecond intervals since January 1, 1601. This structure is a 64-bit value.
+
+
+
+
+ Specifies the high 32 bits of the FILETIME.
+
+
+
+
+ Specifies the low 32 bits of the FILETIME.
+
+
+
+
+ The filter info struct 1.
+
+
+
+
+ The filter info struct 2.
+
+
+
+
+ The filter info struct 3.
+
+
+
+
+ The filter info struct 4.
+
+
+
+
+ The filter info struct 50.
+
+
+
+
+ The filter info struct 51.
+
+
+
+
+ The filter info struct 54.
+
+
+
+
+ The filter info struct 62.
+
+
+
+
+ The filter info struct 63.
+
+
+
+
+ The filter info struct.
+
+
+
+
+ The mass range structure.
+
+
+
+
+ Initializes a new instance of the struct - copy constructor.
+
+
+ The low end of the mass range.
+
+
+ The high end of the mass range.
+
+
+
+
+ Loads the array.
+
+ The viewer.
+ The start position.
+ Array of mass range
+
+
+
+ Gets or sets the low end of the mass range.
+
+
+
+
+ Gets or sets the high end of the mass range.
+
+
+
+
+ Initializes a new instance of the struct.
+
+
+ The range (to copy from).
+
+
+
+
+ The method info structure in the raw file
+
+
+
+
+ The MS reaction struct - current version.
+
+
+
+
+ Set to 1 to use in scan filtering. High order bits hold the
+ activation type enumeration bits 0xffe, and the flag for multiple
+ activation (bit 0x1000).
+
+
+
+
+ If TRUE, is still the center mass but the
+ and
+ are also valid.
+
+
+
+
+ if == TRUE, this value defines the start of the
+ precursor isolation range.
+
+
+
+
+ if == TRUE, this value defines the end of the
+ precursor isolation range
+
+
+
+
+ The MS reaction struct version 1.
+
+
+
+
+ The MS reaction struct version 2.
+
+
+
+
+ Set to 1 to use in scan filtering. High order bits hold the
+ activation type enumeration bits 0xffe, and the flag for multiple
+ activation (bit 0x1000).
+ these features can be WST individually with the new access
+ functions, or as a UINT with the new CollisionEnergyValidEx
+ function
+
+
+
+
+ The MS reaction struct version 3.
+
+
+
+
+ Set to 1 to use in scan filtering. High order bits hold the
+ activation type enumeration bits 0xffe, and the flag for multiple
+ activation (bit 0x1000).
+
+
+
+
+ If TRUE, is still the center mass but the
+ and
+ are also valid.
+
+
+
+
+ if == TRUE, this value defines the start of the
+ precursor isolation range.
+
+
+
+
+ if == TRUE, this value defines the end of the
+ precursor isolation range
+
+
+
+
+ The audit data struct 1, for legacy LCQ
+
+
+
+
+ The audit data struct.
+
+
+
+
+ The auto sampler info struct, from legacy LCQ files.
+
+
+
+
+ The axis parameters struct, from legacy LCQ files
+
+
+
+
+ The chromatogram trace struct 1, from legacy LCQ files.
+
+
+
+
+ The chromatogram trace struct.
+
+
+
+
+ The fraction collector struct.
+
+
+
+
+ The instrument method column info struct, from legacy LCQ files
+
+
+
+
+ The instrument method GC struct from legacy LCQ files
+
+
+
+
+ The pair values struct.
+
+
+
+
+ The instrument method inlet struct.
+
+
+
+
+ The instrument method LC struct, from legacy LCQ files.
+
+
+
+
+ The instrument configuration struct version 1, from legacy LCQ files.
+
+
+
+
+ The instrument configuration struct, from legacy LCQ files.
+
+
+
+
+ The instrument run info struct.
+
+
+
+
+ The digital in (legacy LCQ).
+
+
+
+
+ Initializes a new instance of the struct.
+
+
+ The digital in.
+
+
+
+
+ Gets the user digital in 2.
+
+
+
+
+ Gets the user digital in 1.
+
+
+
+
+ Gets the divert inject bit 1.
+
+
+
+
+ Gets the APC ITC fail.
+
+
+
+
+ Gets the capillary RTD fail.
+
+
+
+
+ Gets the ion gauge pressure OK.
+
+
+
+
+ Gets the load inject.
+
+
+
+
+ Gets the KVCL 8.
+
+
+
+
+ Gets the octapole frequency on.
+
+
+
+
+ Gets the vacuum OK.
+
+
+
+
+ Gets the conv pressure OK.
+
+
+
+
+ Gets the ion gauge on.
+
+
+
+
+ Gets the ref sine on.
+
+
+
+
+ Gets the SWR fail.
+
+
+
+
+ Auto Sampler Status
+
+
+
+
+ LC Subsystem Status
+
+
+
+
+ UV Detector Status
+
+
+
+
+ Syringe Pump status
+
+
+
+
+ Turbo pump status
+
+
+
+
+ The read back struct.
+
+
+
+
+ Instrument Status
+
+
+
+
+ The LC detector struct, from legacy LCQ files
+
+
+
+
+ The LC dump value struct.
+
+
+
+
+ The LC event struct.
+
+
+
+
+ The LCQ trailer extra struct.
+
+
+
+
+ The LC table struct from legacy LCQ files
+
+
+
+
+ The MS dependent data struct 2 for legacy LCQ files.
+
+
+
+
+ The MS dependent data struct.
+
+
+
+
+ The MS method info struct from legacy LCQ files
+
+
+
+
+ The mass spec scan event struct.
+
+
+
+
+ The MS segment struct from legacy LCQ files
+
+
+
+
+ The non ITCL struct version 1.
+
+
+
+
+ The non ITCL struct.
+
+
+
+
+ The probe info struct.
+
+
+
+
+ The real time chromatogram info struct.
+
+
+
+
+ The real time spec info struct.
+
+
+
+
+ The real time chromatogram label struct version 1.
+
+
+
+
+ The real time chromatogram label struct version 51.
+
+
+
+
+ The real time chromatogram label struct.
+
+
+
+
+ The real time chromatogram norm struct.
+
+
+
+
+ The real time chromatogram other struct, from legacy LCQ files
+
+
+
+
+ The real time chromatogram style struct, from legacy LCQ files
+
+
+
+
+ The real time spectrum color struct version 1.
+
+
+
+
+ The real time spectrum color struct.
+
+
+
+
+ The real time spectrum label struct, from legacy LCQ files
+
+
+
+
+ The Real Time spectrum normalization struct.
+
+
+
+
+ The real time spec other struct, for legacy LCQ files.
+
+
+
+
+ The real time spectrum ranges struct, from legacy LCQ files.
+
+
+
+
+ The slope intercept struct, from legacy LCQ files
+
+
+
+
+ The syringe struct.
+
+
+
+
+ The temperature table struct, from legacy LCQ files.
+
+
+
+
+ The trailer struct, from legacy LCQ files
+
+
+
+
+ Tune data structure version 1
+
+
+
+
+ Tune data structure version 3-5
+
+
+
+
+ The latest version of Tune data structure
+
+
+
+
+ The old LCQ tune data struct
+
+
+
+
+ The variable list struct, from legacy LCQ files
+
+
+
+
+ The High Mass Accuracy Centroid structure
+
+
+
+
+ Gets or sets the mass.
+
+
+
+
+ Gets or sets the intensity.
+
+
+
+
+ The noise information packet structure.
+ Note: this is defined as a simple set of "internal fields" to
+ exactly match the binary struct format.
+
+
+
+
+ Gets or sets the mass.
+
+
+
+
+ Gets or sets the noise.
+
+
+
+
+ Gets or sets the baseline.
+
+
+
+
+ The packet header structure for LR SP profile packets.
+ This is defined for structure size only.
+ Data is decoded as individual fields.
+
+
+
+
+ The profile data packet at file version 64.
+
+
+
+
+ The packet header structure for FT profile packets.
+
+
+
+
+ The profile segment structure.
+
+
+
+
+ The profile sub-segment structure.
+
+
+
+
+ The high resolution spectrum type struct.
+ This struct is never access "as a struct" and
+ is decoded one field at a time from memory.
+ It is only declared so that it's size can be calculated.
+
+
+
+
+ The low resolution spectrum type struct.
+
+
+
+
+ The standard accuracy struct.
+
+
+
+
+ The Adjustable Scan Rate profile packet index structure.
+
+
+
+
+ The Adjustable Scan Rate profile packet index structure.
+
+
+
+
+ The raw file info structure version 1.
+
+
+
+
+ The raw file info structure version 2.
+
+
+
+
+ The raw file info structure version 3.
+
+
+
+
+ If true, there is an experiment method in the file.
+
+
+
+
+ The raw file info structure version 4.
+
+
+
+
+ If true, there is an experiment method in the file.
+
+
+
+
+ The raw file information structure - current version.
+
+
+
+
+ If true, there is an experiment method in the file.
+
+
+
+
+ The scan event info struct.
+
+
+
+
+ Set to TRUE if trailer scan event should be used.
+
+
+
+
+ Set to SFDetectorValid if detector value is valid.
+
+
+
+
+ Indicates how source fragmentation values are interpreted
+
+
+
+
+ Scan Type Index indicates the segment/scan event for this filter scan event.
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ Will be translated to Scan Filter's Accurate Mass enumeration.
+
+
+
+
+ Compares items in this event, up to the reactions tests.
+ Reaction tests are done differently by various callers.
+
+ The other.
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared.
+ The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+
+
+ A method which merges 8 byte sized flags into a unique 64 bit code
+ For faster sorting
+
+ Has of first 8 items
+
+
+
+ A method which precicely merges 8 byte sized flags into a unique 64 bit code
+ For faster sorting
+
+
+
+
+
+ A method which precicely merges 8 byte sized flags into a unique 64 bit code
+ For faster sorting
+
+
+
+
+
+ A method which precicely merges 5 small (less than 6 bit) flags into a unique 32 bit code
+ Then adds the "scan type index" as a second 32 bits
+ For faster sorting
+
+
+
+
+
+ Compares items in this event, up to the reactions tests.
+ Reaction tests are done differently by various callers.
+ Skips 8 items, which are tested by hash1
+
+ The other.
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared.
+ The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+
+
+ Compares items in this event, up to the reactions tests.
+ Reaction tests are done differently by various callers.
+ Skips 8 items, which are tested by hash1 and 8 tested by hash2
+
+ The other.
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared.
+ The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+
+
+ The scan event info struct version 2.
+
+
+
+
+ Set to TRUE if trailer scan event should be used.
+
+
+
+
+ Set to SFDetectorValid if detector value is valid.
+
+
+
+
+ The scan event info struct version 3.
+
+
+
+
+ Set to TRUE if trailer scan event should be used.
+
+
+
+
+ Set to SFDetectorValid if detector value is valid.
+
+
+
+
+ Indicates how source fragmentation values are interpreted
+
+
+
+
+ Scan Type Index indicates the segment/scan event for this filter scan event.
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ The scan event info struct version 50.
+
+
+
+
+ Set to TRUE if trailer scan event should be used.
+
+
+
+
+ Set to SFDetectorValid if detector value is valid.
+
+
+
+
+ Indicates how source fragmentation values are interpreted
+
+
+
+
+ Scan Type Index indicates the segment/scan event for this filter scan event.
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ The scan event info struct version 51.
+
+
+
+
+ Set to TRUE if trailer scan event should be used.
+
+
+
+
+ Set to SFDetectorValid if detector value is valid.
+
+
+
+
+ Indicates how source fragmentation values are interpreted
+
+
+
+
+ Scan Type Index indicates the segment/scan event for this filter scan event.
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ Will be translated to Scan Filter's Accurate Mass enumeration.
+
+
+
+
+ The scan event info struct version 54.
+
+
+
+
+ Set to TRUE if trailer scan event should be used.
+
+
+
+
+ Set to SFDetectorValid if detector value is valid.
+
+
+
+
+ Indicates how source fragmentation values are interpreted
+
+
+
+
+ Scan Type Index indicates the segment/scan event for this filter scan event.
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ Will be translated to Scan Filter's Accurate Mass enumeration.
+
+
+
+
+ The scan event info struct version 62.
+
+
+
+
+ Set to TRUE if trailer scan event should be used.
+
+
+
+
+ Set to SFDetectorValid if detector value is valid.
+
+
+
+
+ Indicates how source fragmentation values are interpreted
+
+
+
+
+ Scan Type Index indicates the segment/scan event for this filter scan event.
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ Will be translated to Scan Filter's Accurate Mass enumeration.
+
+
+
+
+ The scan event info struct version 63.
+
+
+
+
+ Set to TRUE if trailer scan event should be used.
+
+
+
+
+ Set to SFDetectorValid if detector value is valid.
+
+
+
+
+ Indicates how source fragmentation values are interpreted
+
+
+
+
+ Scan Type Index indicates the segment/scan event for this filter scan event.
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ Will be translated to Scan Filter's Accurate Mass enumeration.
+
+
+
+
+ The scan index structure - current version.
+
+
+
+
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ HIWORD == SIScanData (optional), LOWORD == scan type
+
+
+
+
+ Cycle number used to associate events within a scan event cycle.
+ For example, on the first cycle of scan events, all the events
+ would set this to '1'. On the second cycle, all the events would
+ set this to '2'. This field must be set by devices if supporting
+ compound names for filtering. However, it may be set in all
+ acquisitions to help processing algorithms.
+
+
+
+
+ The scan index structure - version 1.
+
+
+
+
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ HIWORD == SIScanData (optional), LOWORD == scan type
+
+
+
+
+ The scan index structure - version 2.
+
+
+
+
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ HIWORD == SIScanData (optional), LOWORD == scan type
+
+
+
+
+ The UV scan index structure - current version.
+
+
+
+
+ The scan index structure - old version.
+
+
+
+
+ The sequence row information structure in the raw file.
+
+
+
+
+ The sequence file info struct.
+ Implements the public interface ISequenceInfo against
+ an SLD file.
+
+
+
+
+ The processing mode, of an Xcalibur sequence.
+
+
+
+
+ This sequence designed to run with Xcalibur
+
+
+
+
+ This sequence designed to run with Target.
+ Value, for legacy import only
+
+
+
+
+ Sequence file information: LCQ version
+
+
+
+
+ Sequence file information: Original Xcalibur version
+
+
+
+
+ Sequence file information: Current Xcalibur version
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the user private label.
+
+
+
+
+ Gets or sets a description of the auto sampler tray
+
+
+
+
+ Gets or sets the sequence bracket type.
+ This determines which groups of samples use the same calibration curve.
+
+
+
+
+ Gets the user configurable column names
+
+
+
+
+ Gets the display width of each sequence column
+
+
+
+
+ Gets the column order (see home page?)
+
+
+
+
+ Gets or sets the number of samples.
+
+
+
+
+ Load the sequence information from the current file
+
+ View into memory mapped file
+ offset for this object
+ file version
+ The number of bytes read
+
+
+
+ Initializes this instance object with default values.
+
+
+
+
+ Gets the sequence information.
+ Convert the sequence info struct to byte array.
+
+ Byte array of the sequence info structure
+
+
+
+ The class contains structure conversion utilities.
+
+
+
+
+ The method copies the virtual controller information from 32 bit values.
+
+
+ The raw file information structure.
+
+
+ The converted .
+
+
+
+
+ The method copies the run header information from the 32 bit values.
+
+
+ The run header.
+
+
+ The converted .
+
+
+
+
+ The system time structure from C++.
+
+
+
+
+ The user id structure for the raw file.
+
+
+
+
+ Length of logon ID string and user ID
+
+
+
+
+ Date and time that the file was changed using C++ FILETIME structure (64-bits), precision is to 100 nanoseconds.
+
+
+
+
+ Windows login name. Two bytes per char (NT default string representation)
+
+
+
+
+ User (full) name
+
+
+
+
+ The virtual controller information structure.
+
+
+
+
+ Initializes a new instance of the struct by
+ copying from the old controller (i.e. 32 bit) structure.
+
+
+ The old controller structure.
+
+
+
+
+ The old virtual controller information structure.
+ Pre-version-64 structure, used a 32 bit file pointer (offset).
+ Causes problems if raw file is larger than 2GB.
+
+
+
+
+ Tool to create a parser, for validating filter strings
+
+
+
+
+ Create a parser, for validating filter strings
+
+ An interface to validate filter strings
+
+
+
+ Wrapper class, to ensure state is reset on each parse call.
+ See notes in GetFilterFromString
+
+
+
+
+ Gets or sets the precision expected for collision energy
+
+
+
+
+ Gets or sets the precision expected for mass values
+
+
+
+
+ Parse a string, returning the scan filter codes.
+
+ String to parse
+ Parsed filter, or null if invalid
+
+
+
+ Private class to pull the Base peak intensity value from a scan header (MS only)
+
+
+
+
+ Gets a value indicating whether this point type needs "scan data".
+ Always "false" for this type, as it uses only the header.
+
+
+
+
+ Gets or sets the retention time range of this chromatogram
+
+
+
+
+ Gets or sets the mechanism to select scans for inclusion in the chromatogram
+
+
+
+
+ method to calculate the chromatogram data value from a scan
+
+ the scan
+ Base peak intensity, from scan header
+
+
+
+ Private class to pull the Base peak mass value from a scan header (MS only)
+
+
+
+
+ Gets a value indicating whether this point type needs "scan data".
+ Always "false" for this type, as it uses only the header.
+
+
+
+
+ Gets or sets the retention time range of this chromatogram
+
+
+
+
+ Gets or sets the mechanism to select scans for inclusion in the chromatogram
+
+
+
+
+ method to calculate the chromatogram data value from a scan
+
+ The scan to analyze
+ The base peak of the scan
+
+
+
+ Class containing logic to open an instrument method, and to
+ pass required interface methods down to business logic.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Name of the file.
+
+
+
+ Create access to method data
+
+
+ The file name.
+
+
+ Interface to read method
+
+
+
+
+ Class containing business logic specific to loading an instrument method file contents
+
+
+
+
+ Gets the data for of all devices in this method.
+ Keys are the registered device names.
+ A method contains only the "registered device name"
+ which may not be the same as the "device display name" (product name).
+ Instrument methods do not contain device product names.
+
+
+
+
+ Gets the file header for the method
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets a value indicating whether the last file operation caused a recorded error.
+ If so, there may be additional information in FileError
+
+
+
+
+
+ Gets a value indicating whether a file was successfully opened.
+ Inspect "FileError" when false
+
+
+
+
+ Gets or sets the descriptions.
+
+
+
+
+ Initializes a new instance of the class.
+ Constructor: Load data from file
+
+
+ File to load
+
+
+
+
+ Get data from all instruments
+
+ Root storage of the method file
+ Names of the instruments
+ Data for each instrument
+
+
+
+ Load data from storage.
+
+
+ The storage.
+
+
+ Error information
+
+
+
+
+ Get the list of device names in the method file
+
+ The list of names
+
+
+
+ my errors.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets a value indicating whether this file has detected an error.
+ If this is false: Other error properties in this interface have no meaning.
+
+
+
+
+ Gets a value indicating whether this file has detected a warning.
+ If this is false: Other warning properties in this interface have no meaning.
+
+
+
+
+ Gets or sets the error code number.
+ Typically this is a windows system error number.
+
+
+
+
+ Gets or sets the error message.
+
+
+
+
+ Gets the warning message.
+
+
+
+
+ Class to read data from a meth file
+
+
+
+
+ Create an IInstrumentMethodFileAccess interface to
+ read data from a method (.meth) file
+
+ File to open
+ Interface to read data from file
+
+
+
+ Private class to pull the Tic value from a scan header
+
+
+
+
+ Gets a value indicating whether this point type needs "scan data".
+ Always "false" for this type, as it uses only the header.
+
+
+
+
+ Gets or sets the retention time range of this chromatogram
+
+
+
+
+ Gets or sets the mechanism to select scans for inclusion in the chromatogram
+
+
+
+
+ method to calculate the chromatogram data value from a scan
+
+ The scan number
+ The Tic of this scan
+
+
+
+ class to manage multiple threads accessing the same file, with no locks
+
+
+
+
+ Initializes a new instance of the class.
+
+ The loader.
+
+
+
+ Gets the file loader.
+
+
+
+
+ This interface method creates a thread safe access to raw data, for use by a single thread.
+ Each time a new thread (async call etc.) is made for accessing raw data, this method must be used to
+ create a private object for that thread to use.
+ This interface does not require that the application performs any locking.
+ In some implementations this may have internal locking (such as when based on a real time file, which is continually changing in size),
+ and in some implementations it may be lock-less.
+
+ An interface which can be used by a thread to access raw data
+
+
+
+ Class to convert from "user" settings for a chromatogram
+ into objects ready for use by the chromatogram generator
+
+
+
+
+ Gets the delivery, configured to generate a chromatogram
+
+
+
+
+ Gets or sets the file mass precision.
+
+
+
+
+ Gets a filter string which failed to parse.
+ If this is "not empty" there was a parsing error on a supplied
+ filter string, and the "Delivery" will be set to null.
+
+
+
+
+ Gets or sets the settings.
+
+
+
+
+ Gets or sets the time range.
+
+
+
+
+ Gets or sets the mass tolerance.
+
+
+
+
+ Gets or sets a value indicating whether to add base masses.
+
+
+
+
+ Create chromatogram construction tool for one trace
+
+
+
+
+ calculate (final) mass range for chromatogram, by adding tolerance for single ion mode.
+ Single ion mode is detected as "high mass == 0.0" or "low and high are same".
+
+
+ The tolerance options.
+
+
+ The mass ranges.
+
+
+ The range.
+
+
+ Set if the class has a tolerance to be applied
+
+
+ The .
+
+
+
+
+ Create a chromatogram point generator which can generate the mass with the largest
+ intensity of of all data in a scan.
+
+
+ Start time of chromatogram
+
+
+ End time of chromatogram
+
+
+ Mass tolerance settings
+
+
+ Settings for this chromatogram trace
+
+
+ Tool to sum all data in a scan
+
+
+
+
+ Create delivery, which will generate a Base Peak Chromatogram
+
+
+ The start time.
+
+
+ The end time.
+
+
+ The tolerance options.
+
+
+ The this trace.
+
+
+ An object to create the desired chromatogram.
+
+
+
+
+ Create delivery, which will generate a chromatogram with the base peak mass over a Mass Range
+
+
+ The start time.
+
+
+ The end time.
+
+
+ The tolerance options.
+
+
+ The this trace.
+
+ Mass ranges for this chromatogram
+ Number of mass ranges to use
+
+ An object to create the desired chromatogram.
+
+
+
+
+ Create delivery, which will generate a chromatogram with base peak intensity over a Mass Range
+
+
+ The start time.
+
+
+ The end time.
+
+
+ The tolerance options.
+
+
+ The this trace.
+
+ Mass ranges for this chromatogram
+ Number of mass ranges to use
+
+ An object to create the desired chromatogram.
+
+
+
+
+ Create tools to calculate each chromatogram data point
+ based on the mode.
+ For example: Sum of masses in a range (XIC).
+ Sum of all data in scan (Tic).
+
+ Time limits of this chromatogram
+ Mass tolerance settings
+ Chromatogram settings
+ Data for chromatogram generator
+
+
+
+ Create delivery, which will generate a Fragment Chromatogram
+
+
+ The start time.
+
+
+ The end time.
+
+
+ The mass tolerance options.
+
+
+ The this trace.
+
+
+ An object to create the desired chromatogram.
+
+
+
+
+ Design a chromatogram point builder which just gets the Tic value from each scan header.
+
+
+ Start time of chromatogram.
+
+
+ End time of chromatogram.
+
+
+ Mass tolerance settings
+
+
+ Trace settings
+
+
+ Tic chromatogram generator
+
+
+
+
+ Create delivery, which will generate a Mass Range Chromatogram (XIC)
+
+
+ The start time.
+
+
+ The end time.
+
+
+ The tolerance options.
+
+
+ The this trace.
+
+ Mass ranges for this chromatogram
+ Number of mass ranges to use
+
+ An object to create the desired chromatogram.
+
+
+
+
+ Create delivery, which will generate a Mass Range Chromatogram (XIC)
+
+
+ The start time.
+
+
+ The end time.
+
+
+ The tolerance options.
+
+
+ The this trace.
+
+
+ An object to create the desired chromatogram.
+
+
+
+
+ create a scan selection method.
+
+
+ The tolerance options.
+
+
+ The this trace.
+
+
+ The .
+
+
+
+
+ Create Tic delivery, which will generate a Total Ion Chromatogram
+
+
+ The start time.
+
+
+ The end time.
+
+
+ The tolerance options.
+
+
+ The this trace.
+
+
+ An object to create the desired chromatogram.
+
+
+
+
+ Create a chromatogram point generator which can sum all data in a scan.
+
+
+ Start time of chromatogram
+
+
+ End time of chromatogram
+
+
+ Mass tolerance settings
+
+
+ Settings for this chromatogram trace
+
+
+ Tool to sum all data in a scan
+
+
+
+
+ Get a filter interface from a string.
+
+ The filter string.
+
+ An interface representing the filter fields, converted from the supplied string.
+
+
+
+
+ Contains factories to read various Xcalibur data system files.
+
+
+
+
+ The native methods, pulled from OLE 32 DLL.
+
+
+
+
+ The stream seek.
+
+
+
+
+ set position
+
+
+
+
+ seek to current position
+
+
+
+
+ seek to end.
+
+
+
+
+ The storage move mode.
+
+
+
+
+ Move data
+
+
+
+
+ Copy data
+
+
+
+
+ The storage commit.
+ specify the conditions for performing the commit
+ operation in the IStorage::Commit and IStream::Commit methods.
+
+
+
+
+ Windows 2000 and Windows XP: Indicates that a storage should be consolidated
+ after it is committed, resulting in a smaller file on disk.
+ This flag is valid only on the outermost storage object that
+ has been opened in transacted mode. It is not valid for streams.
+ The STGC_CONSOLIDATE flag can be combined with any other STGC flags.
+
+
+
+
+ Commits the changes to a write-behind disk cache, but does not save
+ the cache to the disk. In a write-behind disk cache,
+ the operation that writes to disk actually writes to a disk cache,
+ thus increasing performance. The cache is eventually written to the disk,
+ but usually not until after the write operation has already returned.
+ The performance increase comes at the expense of an increased risk
+ of losing data if a problem occurs before the cache is saved and the
+ data in the cache is lost.
+ If you do not specify this value, then committing changes to root-level
+ storage objects is robust even if a disk cache is used.
+ The two-phase commit process ensures that data is stored on the disk
+ and not just to the disk cache.
+
+
+
+
+ You can specify this condition with STGC_CONSOLIDATE, or some combination of the other three flags in this list of elements.
+ Use this value to increase the readability of code.
+
+
+
+
+ Prevents multiple users of a storage object from overwriting each other's changes.
+ The commit operation occurs only if there have been no changes to the saved
+ storage object because the user most recently opened it.
+ Thus, the saved version of the storage object is the same version that
+ the user has been editing. If other users have changed the storage object,
+ the commit operation fails and returns the STG_E_NOTCURRENT value.
+ To override this behavior, call the IStorage::Commit or IStream::Commit method
+ again using the STGC_DEFAULT value.
+
+
+
+
+ The commit operation can overwrite existing data to reduce overall space requirements.
+ This value is not recommended for typical usage because it is not as robust as the
+ default value. In this case, it is possible for the commit operation to fail after
+ the old data is
+ overwritten, but before the new data is completely committed. Then, neither the old version nor the new version of the storage object will be intact.
+
+
+
+
+ The STATFLAG enumeration values indicate whether the method should try to return
+ a name in the pwcsName member of the STATSTG structure.
+ The values are used in the ILockBytes::Stat, IStorage::Stat, and IStream::Stat methods to
+ save memory when the pwcsName member is not required.
+
+
+
+
+ Requests that the statistics include the pwcsName member of the STATSTG structure.
+
+
+
+
+ Requests that the statistics not include the pwcsName member of the STATSTG structure.
+ If the name is omitted, there is no need for the
+ ILockBytes::Stat, IStorage::Stat, and IStream::Stat methods
+ to allocate and free memory for the string value of the name,
+ therefore the method reduces time and resources used in an allocation and free operation.
+
+
+
+
+ IOleStorage interface.
+
+
+
+
+ create OLE stream.
+
+
+ The stream name.
+
+
+ The storage mode.
+
+
+ The reserved 1.
+
+
+ The reserved 2.
+
+
+ The .
+
+
+
+
+ open a stream.
+
+
+ The stream name.
+
+
+ The reserved 1.
+
+
+ The mode.
+
+
+ The reserved 2.
+
+
+ The .
+
+
+
+
+ create a storage.
+
+
+ The name.
+
+
+ The mode.
+
+
+ The reserved 1.
+
+
+ The reserved 2.
+
+
+ The .
+
+
+
+
+ Opens an existing storage object with the specified name according to
+ the specified access mode. The name must not exceed 31 characters
+ in length (not including the string terminator).
+ The 000 through 01f characters, serving as the
+ first character of the stream/storage name, are reserved for use by OLE.
+ This is a compound file restriction, not a structured storage restriction.
+
+
+ A pointer to a wide character null-terminated Unicode string that
+ contains the name of the storage object to open.
+ The 000 through 01f characters, serving as the first character
+ of the stream/storage name, are reserved for use by OLE.
+ This is a compound file restriction, not a structured storage restriction.
+ It is ignored if pstgPriority is non-NULL.
+
+
+ Priority Must be NULL. A non-NULL value will return STG_E_INVALIDPARAMETER.
+
+
+ Specifies the access mode to use when opening the storage object. For descriptions of the possible values, see STGM Constants. Other modes you choose must at least specify STGM_SHARE_EXCLUSIVE when calling this method.
+
+
+ Exclude Must be NULL. A non-NULL value will return STG_E_INVALIDPARAMETER.
+
+
+ Reserved for future use; must be zero.
+
+
+ The .
+
+
+
+
+ The CopyTo method copies the entire contents of an open storage object to another storage object.
+
+ The number of elements in the array pointed to by rgiidExclude.
+ If rgiidExclude is NULL, then ciidExclude is ignored.
+ An array of interface identifiers (IIDs) that either the caller
+ knows about and does not want copied or that the storage object does not support,
+ but whose state the caller will later explicitly copy. The array can include IStorage,
+ indicating that only stream objects are to be copied, and IStream, indicating that only storage
+ objects are to be copied. An array length of zero indicates that only the state exposed by the IStorage
+ object is to be copied; all other interfaces on the object are to be ignored.
+ Passing NULL indicates that all interfaces on the object are to be copied.
+ A string name block (refer to SNB) that specifies a block of storage
+ or stream objects that are not to be copied to the destination. These elements are not created at the destination.
+ If IID_IStorage is in the rgiidExclude array, this parameter is ignored. This parameter may be NULL.
+ A pointer to the open storage object into which this storage object is to be copied.
+ The destination storage object can be a different implementation of the IStorage interface from the source storage object.
+ Thus, IStorage::CopyTo can use only publicly available methods of the destination storage object.
+ If pstgDest is open in transacted mode, it can be reverted by calling its IStorage::Revert method.
+
+
+
+ The MoveElementTo method copies or moves a sub-storage or stream from this
+ storage object to another storage object.
+
+ Pointer to a wide character null-terminated Unicode string that contains the name of the element
+ in this storage object to be moved or copied.
+ IStorage pointer to the destination storage object.
+ Pointer to a wide character null-terminated unicode string that contains the new name for the element in its new storage object.
+ Specifies whether the operation should be a move (STGMOVE_MOVE) or a copy (STGMOVE_COPY). See the STGMOVE enumeration.
+
+
+
+ The Commit method ensures that any changes made to a storage object open
+ in transacted mode are reflected in the parent storage.
+ For non-root storage objects in direct mode,
+ this method has no effect. For a root storage, it reflects the changes
+ in the actual device; for example, a file on disk. For a root storage object opened
+ in direct mode, always call the IStorage::Commit method prior to Release.
+ IStorage::Commit flushes all memory buffers to the disk for a root storage
+ in direct mode and will return an error code upon failure. Although Release
+ also flushes memory buffers to disk, it has no capacity to return any error
+ codes upon failure. Therefore, calling
+ Release without first calling Commit causes indeterminate results.
+
+ Controls how the changes are committed to the storage object.
+ See the STGC enumeration for a definition of these values.
+
+
+
+ The Revert method discards all changes that have been made to the storage object since the last commit operation.
+
+
+
+
+ The method retrieves a pointer to an enumerator
+ object that can be used to enumerate the storage
+ and stream objects contained within this storage object.
+
+ Reserved 1 is Reserved for future use; must be zero.
+ Reserved for future use; must be NULL.
+ Reserved for future use; must be zero.
+ Pointer to IEnumSTATSTG* pointer variable
+ that receives the interface pointer to the new enumerator object.
+
+
+
+ The DestroyElement method removes the specified storage or stream from this storage object.
+
+ A pointer to a wide character null-terminated Unicode string that contains
+ the name of the storage or stream to be removed.
+
+
+
+ The RenameElement method renames the specified sub-storage or stream in this storage object.
+
+ Pointer to a wide character null-terminated Unicode string that contains the name of the sub-storage or stream to be changed.
+ Pointer to a wide character null-terminated Unicode string that contains the new name for the specified sub-storage or stream.
+
+
+
+ The SetElementTimes method sets the modification, access, and creation times of the specified storage element, if the underlying file system supports this method.
+
+ The name of the storage object element whose times are to be modified. If NULL, the time is set on the root storage rather than one of its elements.
+ Either the new creation time for the element or NULL if the creation time is not to be modified.
+ Either the new access time for the element or NULL if the access time is not to be modified.
+ Either the new modification time for the element or NULL if the modification time is not to be modified.
+
+
+
+ The SetClass method assigns the specified class identifier (CLSID) to this storage object.
+
+ The CLSID that is to be associated with the storage object.
+
+
+
+ stores up to 32 bits of state information in this storage object. This method is reserved for future use.
+
+ Specifies the new values of the bits to set. No legal values are defined for these bits; they are all reserved for future use and must not be used by applications.
+ A binary mask indicating which bits in grfStateBits are significant in this call.
+
+
+
+ The Stat method retrieves the STATSTG structure for this open storage object.
+
+ On return, pointer to a STATSTG structure where this method places information about the open storage object. This parameter is NULL if an error occurs.
+ Specifies that some of the members in the STATSTG structure are not returned, thus saving a memory allocation operation.
+ Values are taken from the STATFLAG enumeration.
+
+
+
+ The LOCKTYPE enumeration values indicate the type of locking requested
+ for the specified range of bytes.
+ The values are used in the ILockBytes::LockRegion and IStream::LockRegion methods.
+
+
+
+
+ If this lock is granted, writing to the specified range of bytes is
+ prohibited except by the owner that was granted this lock.
+
+
+
+
+ If this lock is granted, no other LOCK_ONLYONCE lock can be obtained on the range. Usually this lock type is an alias for some other lock type.
+ Thus, specific implementations can have additional behavior associated with this lock type.
+
+
+
+
+ If this lock is granted, the specified range of bytes can be opened and read any number of times,
+ but writing to the locked range is prohibited except for the owner that was granted this lock.
+
+
+
+
+ values are used in the type member of the STATSTG structure to indicate the type of the storage element. A storage element is a storage object,
+ a stream object, or a byte-array object (LOCKBYTES).
+
+
+
+
+ Indicates that the storage element is a byte-array object.
+
+
+
+
+ Indicates that the storage element is a property storage object.
+
+
+
+
+ Indicates that the storage element is a storage object.
+
+
+
+
+ Indicates that the storage element is a stream object.
+
+
+
+
+ Replacement for UCOMIOleStream (and ComTypes.IOleStream) interface.
+ for Read() and Write().
+
+
+
+
+ Reads a specified number of bytes from the stream object into memory starting at the current seek pointer.
+
+ A pointer to the buffer which the stream data is read into.
+ The number of bytes of data to read from the stream object.
+ [out] Returns the actual number of bytes read from the stream object.
+
+
+
+ writes a specified number of bytes into the stream object starting at the current seek pointer.
+
+ A pointer to the buffer that contains the data that is to be written to the stream.
+ A valid pointer must be provided for this parameter even when cb
is zero.
+ The number of bytes of data to attempt to write into the stream. This value can be zero.
+ [out] Returns the actual number of bytes written to the stream object.
+
+
+
+ changes the seek pointer to a new location.
+ The new location is relative to either the beginning of the stream,
+ the end of the stream, or the current seek pointer.
+
+ The displacement to be added to the location
+ indicated by the origin parameter. If dwOrigin is STREAM_SEEK_SET,
+ this is interpreted as an unsigned value rather than a signed value.
+ The origin for the displacement specified in dlibMove.
+ The origin can be the beginning of the file (STREAM_SEEK_SET),
+ the current seek pointer (STREAM_SEEK_CUR), or the end of the file (STREAM_SEEK_END).
+ For more information about values, see the STREAM_SEEK enumeration.
+ the value of the new seek pointer from the beginning of the stream.
+
+
+
+ changes the size of the stream object.
+
+ Specifies the new size, in bytes, of the stream.
+
+
+
+ The CopyTo method copies a specified number of bytes
+ from the current seek pointer in the stream to the current seek pointer in another stream.
+
+ A pointer to the destination stream. The stream pointed to by pstm
+ can be a new stream or a clone of the source stream.
+ The number of bytes to copy from the source stream.
+ A pointer to the location where this method writes the actual
+ number of bytes read from the source. You can set this pointer to NULL.
+ In this case, this method does not provide the actual number of bytes read.
+ the actual number of bytes written to the destination.
+
+
+
+ ensures that any changes made to a stream object open in transacted mode are reflected in the parent storage
+ . If the stream object is open in direct mode, IStream::Commit has
+ no effect other than flushing all memory buffers to the next-level storage object.
+ The COM compound file implementation of streams does not support opening streams in transacted mode.
+
+ Controls how the changes for the stream object are committed.
+ See the STGC enumeration for a definition of these values.
+
+
+
+ discards all changes that have been made to a transacted stream since the last IStream::Commit call. On streams open in
+ direct mode and streams using the COM compound file implementation of IStream::Revert, this method has no effect.
+
+
+
+
+ restricts access to a specified range of bytes in the stream.
+ Supporting this functionality is optional since some file systems do not provide it.
+
+ Integer that specifies the byte offset for the beginning of the range.
+ Integer that specifies the length of the range, in bytes, to be restricted.
+ Specifies the restrictions being requested on accessing the range.
+
+
+
+ removes the access restriction on a range of bytes previously restricted with IStream::LockRegion.
+
+ Specifies the byte offset for the beginning of the range.
+ Specifies, in bytes, the length of the range to be restricted.
+ Specifies the access restrictions previously placed on the range.
+
+
+
+ retrieves the STATSTG structure for this stream.
+
+ Pointer to a STATSTG structure where this method places information about this stream object.
+ Specifies that this method does not return some of the members in the STATSTG structure,
+ thus saving a memory allocation operation. Values are taken from the STATFLAG enumeration.
+
+
+
+ creates a new stream object with its own seek pointer that references the same bytes as the original stream.
+
+ pointer to the new stream object.
+
+
+
+ IEnumSTATSTG interface.
+
+
+
+
+ retrieves a specified number of STATSTG structures,
+ that follow in the enumeration sequence. If there are fewer than the requested
+ number of STATSTG structures that remain in the enumeration sequence,
+ it retrieves the remaining STATSTG structures.
+
+ The number of STATSTG structures requested.
+ An array of STATSTG structures returned.
+ The number of STATSTG structures retrieved in the rgelt parameter.
+ S_OK on success
+
+
+
+ skips a specified number of STATSTG structures in the enumeration sequence.
+
+ The number of STATSTG structures to skip.
+
+
+
+ resets the enumeration sequence to the beginning of the STATSTG structure array.
+
+
+
+
+ creates a new enumerator that contains the same enumeration state as the current
+ STATSTG structure enumerator. Using this method, a client
+ can record a particular point in the enumeration
+ sequence and then return to that point at a later time.
+ The new enumerator supports the same IEnumSTATSTG interface.
+
+ A pointer to the variable that receives the IEnumSTATSTG interface pointer.
+ If the method is unsuccessful, the value of the ppenum parameter is undefined.
+
+
+
+ The storage mode.
+
+
+
+
+ Creates the new object while preserving existing data in a stream named "Contents".
+ In the case of a storage object or a byte array,
+ the old data is formatted into a stream regardless of whether the existing
+ file or byte array currently contains a layered storage object.
+ This flag can only be used when creating a root storage object.
+ It cannot be used within a storage object; for example,
+ in IStorage::CreateStream. It is also not valid to use this flag and
+ the STGM_DELETEONRELEASE flag simultaneously.
+
+
+
+
+ Indicates that an existing storage object or stream should be removed before the new object replaces it.
+ A new object is created when this flag is specified only if the existing object has been successfully removed.
+ This flag is used when attempting to create:
+ A storage object on a disk, but a file of that name exists.
+ An object inside a storage object, but an object with the specified name exists.
+ A byte array object, but one with the specified name exists.
+ This flag cannot be used with open operations, such as StgOpenStorageEx or IStorage::OpenStream.
+
+
+
+
+ Indicates that the underlying file is to be automatically destroyed
+ when the root storage object is released.
+ This feature is most useful for creating temporary files.
+ This flag can only be used when creating a root object,
+ such as with StgCreateStorageEx.
+ It is not valid when opening a root object,
+ such as with StgOpenStorageEx, or when creating or opening a sub-element,
+ such as with IStorage::CreateStream.
+ It is also not valid to use this flag and the STGM_CONVERT flag simultaneously.
+
+
+
+
+ Indicates that, in direct mode, each change to a storage or stream element is written as it occurs.
+ This is the default if neither STGM_DIRECT nor STGM_TRANSACTED is specified.
+
+
+
+
+ Causes the create operation to fail if an existing object with the specified name exists.
+ In this case, STG_E_FILEALREADYEXISTS is returned. This is the default creation mode; that is,
+ if no other create flag is specified, STGM_FAILIFTHERE is implied.
+
+
+
+
+ Indicates that, in transacted mode, a temporary scratch file is usually used
+ to save modifications until the Commit method is called.
+ Specifying STGM_NOSCRATCH permits the unused portion
+ of the original file to be used as work space instead of
+ creating a new file for that purpose.
+ This does not affect the data in the original file,
+ and in certain cases can result in improved performance.
+ It is not valid to specify this flag without also specifying STGM_TRANSACTED,
+ and this flag may only be used in a root open.
+ For more information about NoScratch mode, see the Remarks section.
+
+
+
+
+ This flag is used when opening a storage object with STGM_TRANSACTED and
+ without STGM_SHARE_EXCLUSIVE or STGM_SHARE_DENY_WRITE.
+ In this case, specifying STGM_NOSNAPSHOT prevents the
+ system-provided implementation from creating a snapshot copy of the file.
+ Instead, changes to the file are written to the end of the file.
+ Unused space is not reclaimed unless consolidation is performed
+ during the commit, and there is only one current writer on the file.
+ When the file is opened in no snapshot mode, another open operation
+ cannot be performed without specifying STGM_NOSNAPSHOT.
+ This flag may only be used in a root open operation.
+ For more information about NoSnapshot mode, see the Remarks section.
+
+
+
+
+ Opens the storage object with exclusive access to the most
+ recently committed version. Thus, other users cannot commit
+ changes to the object while you have it open in priority mode.
+ You gain performance benefits for copy operations,
+ but you prevent others from committing changes.
+ Limit the time that objects are open in priority mode.
+ You must specify STGM_DIRECT and STGM_READ with priority mode,
+ and you cannot specify STGM_DELETEONRELEASE. STGM_DELETEONRELEASE
+ is only valid when creating a root object, such as with StgCreateStorageEx.
+ It is not valid when opening an existing root object, such as with StgOpenStorageEx.
+ It is also not valid when creating or opening a sub-element,
+ such as with IStorage::OpenStorage.
+
+
+
+
+ Indicates that the object is read-only, meaning that modifications cannot be made.
+ For example, if a stream object is opened with STGM_READ,
+ the ISequentialStream::Read method may be called,
+ but the ISequentialStream::Write method may not. Similarly,
+ if a storage object opened with STGM_READ,
+ the IStorage::OpenStream and IStorage::OpenStorage methods may be called,
+ but the IStorage::CreateStream and IStorage::CreateStorage methods may not.
+
+
+
+
+ Enables access and modification of object data.
+ For example, if a stream object is created or opened in this mode,
+ it is possible to call both IStream::Read and IStream::Write.
+ Be aware that this constant is not a simple binary OR operation
+ of the STGM_WRITE and STGM_READ elements.
+
+
+
+
+ Specifies that subsequent openings of the object are not denied read or write access.
+ If no flag from the sharing group is specified, this flag is assumed.
+
+
+
+
+ Prevents others from subsequently opening the object in STGM_READ mode.
+ It is typically used on a root storage object.
+
+
+
+
+ Prevents others from subsequently opening the object for STGM_WRITE or STGM_READWRITE access.
+ In transacted mode, sharing of STGM_SHARE_DENY_WRITE or STGM_SHARE_EXCLUSIVE can significantly
+ improve performance because they do not require snapshots.
+
+
+
+
+ Prevents others from subsequently opening the object in any mode.
+ Be aware that this value is not a simple bitwise OR operation
+ of the STGM_SHARE_DENY_READ and STGM_SHARE_DENY_WRITE values.
+ In transacted mode, sharing of STGM_SHARE_DENY_WRITE or STGM_SHARE_EXCLUSIVE
+ can significantly improve performance because they do not require snapshots.
+
+
+
+
+ Provides a faster implementation of a compound file in a limited,
+ but frequently used, case. For more information, see the Remarks section.
+
+
+
+
+ Indicates that, in transacted mode, changes are buffered
+ and written only if an explicit commit operation is called.
+ To ignore the changes, call the Revert method in the IStream,
+ IStorage, or IPropertyStorage interface.
+ The COM compound file implementation of IStorage does not
+ support transacted streams, which means that streams can be
+ opened only in direct mode, and you cannot revert changes
+ to them, however transacted storages are supported.
+ The compound file, stand-alone, and NTFS file system implementations
+ of IPropertySetStorage similarly do not support transacted,
+ simple property sets because these property sets are stored in streams.
+
+
+
+
+ Enables you to save changes to the object,
+ but does not permit access to its data.
+ The provided implementations of the
+ IPropertyStorage and IPropertySetStorage interfaces do not support this write-only mode.
+
+
+
+
+ The "no data" scan from raw data class, which supplies code needed for the
+ chromatogram batch generator to get scan information from the IRawDataPlus interface.
+ This version returns scan event and index information only.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The raw data.
+
+
+
+
+ The scan reader.
+
+
+ The scan index, to the available scans.
+
+
+ The .
+
+
+
+
+ Loads a processing method (PMD) file.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Name of the file.
+
+
+
+ Gets the file header for the processing method
+
+
+
+
+ Gets a value indicating whether the last file operation caused an error
+
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets a value indicating whether a file was successfully opened.
+ Inspect "FileError" when false
+
+
+
+
+ Gets some global settings from a PMD
+ These settings apply to all components in the quantitation section.
+ Some settings affect qualitative processing.
+
+
+
+
+ Gets the "Standard report" settings from a processing method
+
+
+
+
+ Gets peak detection settings (Qualitative processing)
+
+
+
+
+ Gets Spectrum Enhancement settings (Qualitative processing)
+
+
+
+
+ Gets options for NIST library search
+
+
+
+
+ Gets constraints for NIST library search
+
+
+
+
+ Gets the list of reports
+
+
+
+
+ Gets the list of programs
+
+
+
+
+ Gets the list of reports
+
+
+
+
+ Gets additional options about the peak display (peak labels etc).
+
+
+
+
+ Gets setting for PDA peak purity
+
+
+
+
+ Gets the list of compounds.
+ This includes all integration, calibration and other settings
+ which are specific to each component.
+
+
+
+
+ Gets the raw file name, which was used to design this method
+
+
+
+
+ Gets the "View type" saved in a PMD file
+
+
+
+
+ Gets or sets the (global) mass tolerance and precision settings for the method
+
+
+
+
+ Class to read data from Xcalibur PMD files
+
+
+
+
+ Create an IProcessingMethodFileAccess interface to
+ read data from a processing method (PMD) file.
+ The entire contents of the file are loaded into memory objects.
+ The file is not kept open on disk, and so this interfaces has no
+ "Save", "Close" or "Dispose" methods.
+
+ File to open
+ Interface to read data from the processing method file
+
+
+
+ The raw file access.
+ This class adds functionality of "validating a disk file name" to the base.
+
+
+
+
+ Create access to a file
+
+
+ The file name.
+
+
+ The RawFileAccess
+
+ on null file
+
+
+
+
+ Create access to a file
+
+
+ The file loader.
+
+
+ The RawFileAccess
+
+ on null file
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Loader of the file.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Name of the file.
+
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+ Thrown if dispose fails
+
+
+
+ The raw file access base.
+ This provides an implementation of the IRawDataPlus against ".raw" files.
+ Derived classes add specific (internal) functionality, such as thread handling.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The loader.
+
+
+
+ Gets the auto sampler information.
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets the raw file header.
+
+
+
+
+ Save instrument method file.
+
+
+ The method file path.
+
+
+ Force over write. If true, and file already exists, attempt to delete existing file first.
+ If false: UnauthorizedAccessException will occur if there is an existing read only file.
+
+
+ True if export was achieved
+
+
+
+
+ get scan type as string.
+
+
+ The scan number.
+
+
+ The mass spec device.
+
+
+ The scan type.
+
+
+
+
+ Gets The filter scan event for scan.
+
+
+ The scan number.
+
+
+ The mass spec device.
+
+
+ The .
+
+
+
+
+ Get a filter interface from a scan event interface.
+ Permits filtering to be done based on programmed events, such as
+ an item from the "ScanEvents" table,
+ or from constructed data using .
+ This method initializes the filter based on the current raw file
+ (for example: mass precision)
+
+
+ The event data.
+
+
+ An interface representing the filter fields, converted from the supplied event.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Validate that the raw file is open and loaded OK.
+
+ If there was some problem opening the file
+
+
+
+
+ Gets the name of the computer, used to create this file.
+
+
+
+
+ Test if we really have an instrument method.
+
+
+ True if there is a valid method.
+
+
+
+
+ Get all instrument friendly names from the instrument method.
+
+
+ The instrument friendly names"/>.
+
+
+
+
+ Create a chromatogram from the data stream.
+ Extended version:
+ Parameters include option for component names.
+ Includes base peak data for each scan.
+
+ Definition of how the chromatogram is read
+ First scan to read from. -1 for "all data"
+ Last scan to read from. -1 for "all data"
+
+
+ Chromatogram points
+
+
+
+
+ Convert from a range of scans to a time range.
+
+ First scan to read from. -1 for "from start of data"
+ Last scan to read from. -1 for "to end of data"
+ The retention time range of the supplied scans
+
+
+
+ Handle rule that either start or end can be -1, for "use limits from header"
+
+
+ run header info
+
+
+ start scan
+
+
+ end scan
+
+
+ true if the range is valid
+
+
+
+
+ Create a chromatogram from the data stream.
+ Extended version:
+ Parameters include option for component names.
+ Includes base peak data for each scan.
+
+ Definition of how the chromatogram is read
+ First scan to read from. -1 for "all data"
+ Last scan to read from. -1 for "all data"
+ For mass range or base peak chromatograms,
+ if the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses.
+ For example: with 5 ppm tolerance, the caller can pass a single mass value (same low and high) for each mass range,
+ and get chromatograms of those masses +/- 5 ppm.
+
+
+ Chromatogram points
+
+
+
+
+ The create MS chromatograms.
+
+ _s
+ The settings.
+
+
+ The tolerance options.
+
+
+ The start scan.
+
+
+ The end scan.
+
+
+ The .
+
+
+
+
+ Gets the unique compound names as arrays of strings by given filter.
+
+ The scan Filter.
+
+ The compound names
+
+
+
+
+ Gets the unique compound names as arrays of strings.
+
+
+ The Compound Names.
+
+
+
+
+ Gets an entry from the instrument error log.
+
+ Zero based index.
+ The number of records available is RunHeaderEx.ErrorLogCount
+
+ An interface to read a specific log entry
+
+
+
+
+ Get the filter (scanning method) for a scan number. This method is only defined for MS detectors.
+ Calling for other detectors or with no selected detector is a coding
+ error which may result in a null return or exceptions, depending on the implementation.
+
+
+ The scan number.
+
+
+ The .
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Requires the MS Device
+
+ The reason. (Calling method)
+ The mass spec device
+ Thrown if not an mass spec
+
+
+
+ Get a filter interface from a string, with a given mass precisions
+
+ The filter string.
+ Precisions of masses (number of decimal places)
+
+ An interface representing the filter fields, converted from the supplied string.
+
+
+
+
+ Get a filter interface from a string.
+
+ The filter string.
+
+ An interface representing the filter fields, converted from the supplied string.
+
+
+
+
+ Get filtered scan enumerator.
+
+ The filter.
+
+
+ An enumerator which can be used to foreach over all scans in a file, which match a given filter.
+ Note that each "step" through the enumerator will access further data from the file.
+ To get a complete list of matching scans in one call, the "ToArray" extension can be called,
+ but this will result in a delay as all scans in the file are analyzed to return this array.
+ For fine grained iterator control, including "back stepping" use
+
+
+
+
+ Get filtered scan enumerator.
+
+
+ The filter.
+
+
+ The start Time.
+
+
+ The End Time.
+
+
+ An enumerator which can be used to foreach over all scans in a time range, which match a given filter.
+ Note that each "step" through the enumerator will access further data from the file.
+ To get a complete list of matching scans in one call, the "ToArray" extension can be called,
+ but this will result in a delay as all scans in the time range are analyzed to return this array.
+ For fine grained iterator control, including "back stepping" use
+
+
+
+
+ Obtain an interface to iterate over a scans which match a specified filter.
+ The iterator is initialized at "scan 0" such that "GetNext" will return the first matching scan in the file.
+ This is a low level version of
+
+ The filter to match scans against
+ The iterator
+
+
+
+ Get scan dependents.
+ Returns a list of scans, for which this scan was the parent.
+
+
+ The scan number.
+
+
+ The filter precision decimals.
+
+
+ Information about how data dependent scanning was performed.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Gets the scan event for scan number.
+
+ The scan number.
+ The scan event for the given scan
+
+
+
+ Gets the scan event as a string for a scam
+
+ The scan number.
+
+ The event as a string.
+
+
+
+
+ Get the scan filters which match a compound name.
+ When implemented against raw files, this may have a performance impact on applications.
+ For files which have a programmed event table, this will be fast,
+ as the information can be taken directly from the events.
+ If there is no event table, then event data is checked for every scan in the file (slower).
+
+ The compound name.
+
+ The array of matching scan filters (in string format).
+
+
+
+
+ Get the scan filters which match each compound name.
+ When implemented against raw files, this may have a performance impact on applications.
+ For files which have a programmed event table, this will be fast,
+ as the information can be taken directly from the events.
+ If there is no event table, then event data is checked for every scan in the file (slower).
+
+ The compound names.
+
+ The arrays of matching scan filters (in string format) for each compound.
+
+
+
+
+ Gets the status log data, from all log entries, based on a specific position in the log.
+ For example: "position" may be selected from one of the key value pairs returned from
+ in order to create a trend plot of a particular value.
+ The interface returned has an array of retention times and strings.
+ If the position was selected by using , then the strings may be converted "ToDouble" to get
+ the set of numeric values to plot.
+
+ The position within the list of available status log values.
+
+ An interface containing the times and logged values for the selected status log field.
+
+
+
+
+ Gets a value indicating whether this file has MS data.
+
+
+
+
+ Gets the scan events.
+
+
+
+
+ Gets the labels and index positions of the status log items which may be plotted.
+ That is, the numeric items.
+ Labels names are returned by "Key" and the index into the log is "Value".
+
+
+
+
+ Test if a scan passes a filter.
+ If all matching scans in a file are required, consider using or
+
+ the scan number
+ the filter to test
+
+ True if this scan passes the filter
+
+
+
+
+ Test if a scan passes a filter.
+
+ the scan number
+ the filter to test
+
+ True if this scan passes the filter
+
+
+
+
+ Test if this file is from the Quantum family of MS
+
+ true if quantum style file
+
+
+
+ Gets the set of user labels
+
+
+
+
+ Gets the date when this data was created.
+
+
+
+
+ Gets the name of person creating data.
+
+
+
+
+ Gets the name of acquired file (excluding path).
+
+
+
+
+ Gets names of all instruments stored in the raw file's copy of the instrument method file.
+
+
+ The instrument names.
+
+
+
+
+ Calculate the filters for this raw file, and return as an array
+
+
+ Auto generated list of unique filters
+
+
+
+
+ Calculate the filters for this raw file within the range of scans supplied, and return as an array
+
+ First scan to analyze
+ Last scan to analyze
+
+ Auto generated list of unique filters
+
+
+
+
+ Return the filter strings for this file
+
+
+ A string for each auto filter from the raw file
+
+
+
+
+ Get the centroids saved with a profile scan
+
+ Scan number
+ determines if peaks flagged as ref should be returned
+
+ centroid stream for specified .
+
+
+
+
+ Get the advanced LT/FT formats data, such as the noise data, baseline data, label peaks and frequencies
+
+ The scan number.
+
+ Returns an IAdvancedPacketData object which contains noise data, baseline data, label peaks and frequencies for specified .
+ It might return empty arrays for scans which do not have these data.
+
+ Thrown if the selected device is not of type MS
+
+
+
+ Create a chromatogram from the data stream
+
+ Definition of how the chromatogram is read
+ First scan to read from. -1 for "all data"
+ Last scan to read from. -1 for "all data"
+ For mass range or base peak chromatograms,
+ if the ranges have equal mass values,
+ then are used to determine a band
+ subtracted from low and added to high to search for matching masses
+
+ Chromatogram points
+
+
+
+
+ Generate MS chromatograms, not returning base peak data.
+
+ Chromatogram settings
+ First scan in chromatogram
+ Last scan in chromatogram
+ Mass tolerance
+ The chromatogram
+
+
+
+ Create a chromatogram from the data stream
+
+ Definition of how the chromatogram is read
+ First scan to read from. -1 for "all data"
+ Last scan to read from. -1 for "all data"
+
+ Chromatogram points
+
+ Null settings argument.
+
+
+
+ Create simple MS chromatograms.
+
+
+ The settings.
+
+
+ The start scan.
+
+
+ The end scan.
+
+
+ The chromatogram data
+
+
+
+
+ Apply delays to chromatograms, where specified.
+
+
+ The settings.
+
+
+ The signal.
+
+
+
+
+ Get the number of instruments (data streams) of a certain classification.
+ For example: the number of UV devices which logged data into this file.
+
+ The device type to count
+
+ The number of devices of this type
+
+
+
+
+ Gets the definition of the selected instrument.
+
+
+ data about the selected instrument, for example the instrument name
+
+
+
+
+ Get the device type for an instrument data stream
+
+ The data stream
+ The device at type the index
+ thrown if index is negative or beyond
+ the device count
+
+
+
+ Get the scan statistics for a scan
+
+ scan number
+ Statistics for scan
+
+
+
+ Gets the type of the scan.
+
+ The scan number.
+ The scan type, as string
+
+
+
+ Gets the segment event table for the current instrument
+
+
+ A two dimensional array of events. The first index is segment index (segment number-1).
+ The second is event index (event number -1) within the segment.
+
+
+
+
+ Get a segmented scan. This is the primary scan from the raw file.
+ FT instrument files (such as Calcium) will have a second format of the scan (a centroid stream)
+
+ Scan number to read
+ statistics for the scan
+ The segmented scan
+
+
+
+ Require a device to have been selected.
+
+
+ The reason.
+
+ Thrown in no device has been selected
+
+
+
+
+ Require a chromatographic device to have been selected.
+
+
+ The reason.
+
+ Thrown in no chromatographic device has been selected
+
+
+
+
+ returns the number of entries in the current instrument's status log
+
+ the number of entries in the current instrument's status log
+
+
+
+ Gets the status log for retention time.
+
+ The retention time.
+
+ object containing status log information.
+
+
+
+
+ Returns the header information for the current instrument's status log
+
+
+ The headers (list of prefixes for the strings).
+
+
+
+
+ check for empty status log.
+
+
+ The log entries.
+
+
+ true if empty
+
+
+
+
+ Returns the Status log values for the current instrument
+
+ Index into table of status logs
+ true if they should be formatted (recommended for display).
+ Unformatted values can be returned with default precision (for float or double)
+ Which may be better for graphing
+
+ The status log values.
+
+
+
+
+ Gets the trailer extra header information. This is common across all scan numbers
+
+
+ The headers.
+
+
+
+
+ Gets the array of headers and values for this scan number. The values are formatted as per the header settings.
+
+ The scan for which this information is needed
+
+ Extra information about the scan
+
+
+
+
+ returns the Trailer Extra values for the specified scan number.
+
+ scan who's data is needed
+ If true, then the values will be formatted as per the header settings.
+ If false, then numeric values have default formatting (generally more precision)
+ string representation of the scan trailer information
+
+
+
+ returns the Trailer Extra value for a specific field in the specified scan number.
+ The object type depends on the field type.
+
+ scan who's data is needed
+ zero based filed number in the record, as per header
+ Value of requested field
+
+
+
+ returns the Trailer Extra values for all fields in the specified scan number.
+ The object types depend on the field types.
+
+ scan who's data is needed
+ Value of requested field
+
+
+
+ Gets the tune data.
+
+ Index of the tune data.
+ The tune data log
+
+
+
+ Gets the tune data values, as an array of objects
+ with types as per the tune data header.
+
+ Index of the tune data.
+ The tune data values (as objects)
+
+
+
+ Gets the (raw) status log data at a given index in the log.
+ Designed for efficiency, this method does not convert logs to display string format.
+
+ Index (from 0 to "RunHeaderEx.StatusLogCount"-1)
+ Log data at the given index
+
+
+
+ Gets the (raw) status log data at a given index in the sorted log.
+ The form of the log removes duplicate and out of order times
+ Designed for efficiency, this method does not convert logs to display string format.
+
+ Index (from 0 to "GetStatusLogEntriesCount() -1")
+ Log data at the given index
+
+
+
+ Gets the (raw) status log data at a given retention time in the log.
+ Designed for efficiency, this method does not convert logs to display string format.
+
+ Retention time/
+ Log data at the given time
+
+
+
+ return the number of tune data entries
+
+
+ The number of tune methods.
+
+
+
+
+ Return the header information for the current instrument's tune data
+
+
+ The format definition for tune data.
+
+
+
+
+ return tune data values for the specified index
+
+ index into tune tables
+ true if formatting should be done
+
+ The tune data.
+
+
+
+
+ Gets a value indicating whether the file is being acquired (not complete).
+
+
+
+
+ Gets or sets a value indicating whether reference and exception peaks should be returned (by default they are not)
+
+
+
+
+
+ Gets the number of instruments (data streams) in this file.
+
+
+
+
+ Gets an instrument method.
+
+ The index.
+
+ A text version of the method
+
+
+
+
+ Gets the number of instrument methods in this file.
+
+
+
+
+ Gets a value indicating whether this file has an instrument method.
+
+
+
+
+ Test if a scan is centroid format
+
+ Number of the scan
+
+ True if the scan is centroid format
+
+
+
+
+ Gets a value indicating whether the last file operation caused an error
+
+
+
+
+
+ Gets a value indicating whether the data file was successfully opened
+
+
+
+
+ Gets the path to original data. (path set when acquired)
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+
+ The .
+
+
+
+
+ Get the retention time (minutes) from a scan number
+
+ Scan number
+
+ Retention time (start time) of scan
+
+
+
+
+ Gets extended the run header details.
+
+
+
+
+ Gets the current instrument's run header
+
+
+
+
+ Gets various details about the sample (such as comments).
+
+
+
+
+ Get a scan number from a retention time
+
+ Retention time (minutes)
+
+ Scan number in the data stream for this time.
+
+
+
+
+ Gets the instrument as last set by a call to method.
+
+
+
+
+ Sets the current instrument in the raw file.
+ This method must be called before subsequent calls to access data specific
+ to an instrument (e.g. MS or UV data) may be made. All requests for data specific
+ to an instrument will be forwarded to the current instrument until the current
+ instrument is changed. The instrument number is used to indicate which instrument
+ to use if there are more than one registered instruments of the same type (e.g. multiple UV detectors).
+ Instrument numbers for each type are numbered starting at 1.
+
+ Type of instrument
+ Stream number
+ is out of range.
+
+
+
+ Count the number currently in the cache
+
+ Item type to count
+
+ The number of items in this cache
+
+
+
+
+ Clear items in the cache
+
+ item type to clear
+
+
+
+ Request the object to keep a cache of the listed item.
+ Setting the caching to "zero" disables further caching.
+
+ Item to cache
+ Limit of number of items to cache
+ (optional, default false) if set True, all values returned from the cache are unique (cloned) references.
+ By default, the cache just keeps references to the objects
+
+
+
+ When deciding what data should be read from a scan, centroids or regular scan
+ (or if the data is needed at all)
+ scan event data is needed.
+ This method permits events to be read as a block for a range of scans,
+ which may reduce overheads involved in requesting one by one.
+ Potentially, in some data models, the same "event" may apply to several scans
+ so it is permissible for the same reference to appear multiple times.
+
+ The first scan whose event is needed
+ The last scan
+
+ An array of scan events
+
+ firstScanNumber;First scan must not be below Last scan
+
+
+
+ This method is similar to GetCentroidStream in the IRawData interface.
+ The method returns only the mass and intensity values from
+ the "centroid stream" data for a scan. This is also known as "Label Stream"
+ Values for flags etc. are not returned, saving data space and improving efficiency.
+ This method never returns "reference and exception peak" data.
+ The method is designed for improved performance in custom XIC generators.
+
+ The scan who's mass intensity data are needed
+ Mass and intensity values from the scan "centroid data".
+
+
+
+ This method is similar to GetSegmentedScanFromScanNumber in the IRawData interface.
+ The method returns only the mass and intensity values from
+ the scan data for a scan.
+ Values for flags etc. are not returned, saving data space and improving efficiency.
+ This method never returns "reference and exception peak" data.
+ The method is designed for improved performance in custom XIC generators.
+
+ The scan who's mass intensity data are needed
+ Mass and intensity values from the scan.
+
+
+
+ Gets additional (binary) data from a scan.
+ The format of this data is custom (per instrument) and can be decoded into
+ objects by a specific decoder for the detector type.
+
+ Scan whose data is needed
+
+
+
+ Gets additional (binary) data from a scan.
+ The format of this data is custom (per instrument) and can be decoded into
+ objects by a specific decoder for the detector type.
+
+ Scan whose data is needed
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+
+
+
+ Permits derived (internal) classes to indicate that the loader is no longer needed,
+ without having to create public or protected access to the loader.
+
+
+
+
+ This static class contains factories to open raw files
+
+
+
+
+ Create an IRawDataExtended interface to read data from a raw file
+
+ File to open
+ Interface to read data from file
+
+
+
+ Open a raw file, which will be accessed from multiple threads.
+
+ File to open
+ Interface to create objects for each thread to use
+
+
+
+ Opens an Xcalibur family file, and returns information from the header.
+ The file is not kept open.
+ For example: Reads headers from .raw, .sld, .pmd files.
+
+ Name of the file.
+ Interface to read a file header
+ Thrown when there are problems with the file name
+ Only 64 bit applications are supported by this project
+
+
+
+ The memory map accessor.
+ Provides methods to access mapped file data.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The memory mapped raw file handler
+ The stream identifier.
+ The view accessor.
+ The initial offset.
+ The size of view.
+
+
+
+ Writes the structure.
+
+ Struct type
+ The offset.
+ The data.
+ Number of bytes written
+
+
+
+ Writes the structure.
+
+ Struct type
+ The offset.
+ The data.
+ The size of structure.
+ Number of bytes written
+
+
+
+ Writes the float to the memory mapped file.
+
+ The start position.
+ The value.
+ The number of bytes written (4)
+
+
+
+ Writes the double to the memory mapped file.
+
+ The start position.
+ The value.
+ the number of bytes written (8)
+
+
+
+ Writes the byte to the memory mapped file.
+
+ The start position.
+ The value.
+ The number of bytes written (1)
+
+
+
+ Writes the array of bytes to the memory mapped file.
+
+ The start position.
+ The value.
+ The number of bytes written
+
+
+
+ Writes the short to the memory mapped file.
+
+ The start position.
+ The value.
+ The number of bytes written (2)
+
+
+
+ Writes the integer to the memory mapped file.
+
+ The offset.
+ The value.
+ The number of bytes written (4)
+
+
+
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+ 2
+
+
+
+ The memory map reader.
+
+
+
+
+ Gets the accessor.
+
+
+
+
+ Gets or sets the memory mapped file.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The memory Mapped File.
+
+
+ The stream id.
+
+
+ The view accessor.
+
+
+ The initial offset.
+
+
+ The size of view.
+
+
+
+
+ Gets the initial offset.
+
+
+
+
+ Gets the size of view.
+
+
+ The size of view.
+
+
+
+
+ Gets the stream id.
+
+
+
+
+ Reads the structure array.
+
+ Type of structure
+ The offset into the map.
+ The number of bytes read.
+ Array of structures
+
+
+
+ The method reads a byte.
+
+
+ The offset into the map.
+
+
+ The .
+
+
+
+
+ The method reads an array of bytes.
+
+ Offset from start of memory map
+ The count.
+
+ The byte array.
+
+
+
+
+ The method reads a double.
+
+
+ The offset into the map.
+
+
+ The .
+
+
+
+
+ Reads an array of double.
+
+ The offset into the map.
+ The count.
+ The array of doubles
+
+
+
+ The method reads a float.
+
+
+ The offset into the map.
+
+
+ The .
+
+
+
+
+ Reads floats, as an array
+
+ The offset into the map.
+ The count.
+ The array of floats
+
+
+
+ The method reads an integer.
+
+
+ The offset into the map.
+
+
+ The .
+
+
+
+
+ Reads the integers, where count is typically small
+
+ The offset.
+ The count.
+
+ The array of integers
+
+
+
+
+ read unsigned long integers, as an array.
+
+
+ The offset into the map.
+
+
+ The count.
+
+
+ The array of unsigned long integers.
+
+
+
+
+ read unsigned integers.
+
+
+ The offset.
+
+
+ The count.
+
+
+ The array
+
+
+
+
+ Read a previous revision of a type and convert to latest.
+ Previous struct is assumed to be at the start of the latest struct
+ using sequential layout.
+
+
+ The offset.
+
+
+ The size of previous rev struct.
+
+ Type to return
+
+
+ The converted object.
+
+
+
+
+ Reads the short.
+
+ The offset into the memory map.
+ The short
+
+
+
+ read string.
+
+
+ The offset.
+
+
+ The number of bytes read.
+
+
+ The .
+
+
+
+
+ Read a number of wide characters, and convert to string.
+ If there is a '0' in the string, the string length will be adjusted.
+
+ The offset into the view.
+ The number of bytes read.
+ The converted string
+
+
+
+ Read a number of wide characters, and convert to string.
+ If there is a '0' in the string, the string length will be adjusted.
+
+ Offset into the view
+ Number of bytes read by this call (added to input value)
+ Number of 2 byte chars
+ converted string
+
+
+
+ read an array of wide (2 byte) char.
+
+
+ The offset.
+
+
+ The number of bytes read.
+
+
+ The string size.
+
+
+ The characters
+
+
+
+
+ read a list of strings
+
+
+ The offset.
+
+
+ The number bytes read.
+
+
+ The strings
+
+
+
+
+ Read a simple structure.
+ This must be a fixed size struct, with no embedded fixed arrays,
+ ref types or any other marshaled items.
+ Example: struct containing 2 doubles.
+
+
+ The offset.
+
+ type of struct
+
+
+ The structure
+
+
+
+
+ read simple structure array.
+ This must be a fixed size struct, with no embedded fixed arrays,
+ ref types or any other marshaled items.
+ Example: struct containing 2 doubles.
+
+
+ The offset into the memory map.
+
+
+ The count (array length).
+
+ type of struct
+
+
+ The struct array.
+
+
+
+
+ read an array of bytes from a view, expecting a large data array.
+ This uses 64 bit items, to cut down Marshalling overheads
+
+
+ The start position.
+
+ The count of bytes to read
+
+ The array
+
+
+
+
+ read structure.
+
+
+ The offset into the memory map.
+
+
+ The number of bytes read.
+
+ type of structure
+
+
+ The structure
+
+
+
+
+ read a structure.
+
+
+ The offset.
+
+
+ The number of bytes read.
+
+ Type to read
+
+
+ The object which was read
+
+
+
+
+ read unsigned integer.
+
+
+ The offset.
+
+
+ The .
+
+
+
+
+ read unsigned short.
+
+
+ The offset.
+
+
+ The .
+
+
+
+
+ The method converts an object to a structure.
+
+
+ The bytes array.
+
+
+ Structure to convert to.
+
+
+ The structure.
+
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ A helper class to provide common methods to release/close and get memory mapped file accessor, etc.
+
+
+
+
+ Releases and close the memory mapped file and viewer
+
+ The viewer.
+ if set to true [force to close MMF].
+
+
+
+ Gets the memory mapped viewer.
+
+ The viewer.
+ The loader identifier.
+ Name of the map.
+ The offset.
+ The size.
+ if set to true [in acquisition].
+ The access mode.
+ The type.
+ Memory mapped file accessor
+
+
+
+ Gets the memory mapped viewer.
+
+ The viewer.
+ The loader identifier.
+ Name of the map.
+ if set to true [in acquisition].
+ The access mode.
+ The type.
+ Memory mapped file accessor
+
+
+
+ Determines whether [is failed to map a zero length file] [the specified stream identifier].
+
+ The stream identifier.
+ The error messages
+ True tried to map a zero length file; false otherwise.
+
+
+
+ Determines whether [is failed to map a zero length file] [the specified stream identifier].
+
+ The stream identifier.
+ True tried to map a zero length file; false otherwise.
+
+
+
+ Constructs the stream identifier.
+
+ The identifier.
+ The name.
+ Memory mapped file ID
+
+
+
+ Memory Mapped File access mode
+
+
+
+
+ Open an existing memory mapped file
+
+
+
+
+ Create an memory mapped file
+
+
+
+
+ Allow to read
+
+
+
+
+ Allow to write
+
+
+
+
+ Prefixing a local namespace share memory mapped object name with a raw file loader ID
+
+
+
+
+ Prefixing the file mapping object names with "Global\" allows processes to communicate with each other
+ even if they are in different terminal server sessions. (use mainly in Acquisition)
+ This requires that the first process must have the SeCreateGlobalPrivilege privilege.
+ without prefixing the file mapping object names with "Global\", the sharing named memory is visible to
+ local process
+
+
+
+
+ The open read
+
+
+
+
+ The open read write
+
+
+
+
+ The open create read
+
+
+
+
+ The open create read write
+
+
+
+
+ The open read global
+
+
+
+
+ The open read write global
+
+
+
+
+ The open create read global
+
+
+
+
+ The open create read write global
+
+
+
+
+ The open read identifier
+
+
+
+
+ The open create read loader identifier
+
+
+
+
+ The open create read write loader identifier
+
+
+
+
+ Memory mapped file type
+
+
+
+
+ create a memory-mapped file that is mapped to an existing file on disk
+
+
+
+
+ create a memory-mapped file that is not mapped to an existing file on disk
+
+
+
+
+ The memory mapped file for viewing a raw file.
+
+
+
+
+ Prevents a default instance of the class from being created.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The loader identifier.
+ Name of the file.
+ The access mode.
+ The type.
+ The size.
+
+
+
+ Gets a value indicating whether this instance is open succeed.
+
+
+ true if this instance is open succeed; otherwise, false.
+
+
+
+
+ Gets a value indicating whether this is errors.
+
+
+ true if errors; otherwise, false.
+
+
+
+
+ Gets the currently mapped memory map file name.
+
+
+
+
+ Gets the stream id.
+
+
+
+
+ increment the ref count.
+
+
+
+
+ decrement the ref count.
+
+
+
+
+ get the ref count.
+
+
+ The reference count
+
+
+
+
+ The dispose method closes the memory mapped file.
+
+
+
+
+ Gets the random access viewer.
+ Create a view that starts at 0 offset (begin) and ends approximately at the end of the memory-mapped file.
+
+
+ The file Access.
+
+
+ Access to the mapped data
+
+
+
+
+ Gets the random access viewer.
+
+ The offset. The byte at which to start the view.
+ The size. The size of the view. Specify 0 (zero) to create a view that starts at offset and ends approximately at the end of the memory-mapped file.
+ The file access
+ Access to the mapped data
+
+
+
+ Gets the mapped file information.
+
+ Name of the file.
+ store the mapped disk file information.
+
+
+
+ create memory mapped file security token.
+ This is a slow method (needs to access user's permissions)
+ but can be static, as the user's permission doesn't change.
+
+
+ The .
+
+
+
+
+ Opens the exist memory mapped file.
+
+ Name of the map.
+ Name of the local map.
+ memory mapped file rights
+ The MMF.
+ map name
+
+
+
+ Creates the memory mapped file from file.
+
+ memory map access mode
+ The file path.
+ Name of the MMF with Global prefix.
+ Map name without the Global prefix
+ A reference of a memory mapped file object
+ Memory mapped file name
+
+
+
+ Creates a non persisted memory mapped file.
+
+ Memory mapped file access mode
+ Name of the map file with the Global prefix.
+ Name of the map file without the Global prefix
+ The size.
+ Memory mapped file object.
+ Map name
+
+
+
+ The singleton class tracks the memory mapped files that have been open.
+
+
+
+
+ Prevents a default instance of the class from being created.
+
+
+
+
+ Gets the instance.
+
+
+
+
+ The method disposes the memory mapped file and stops tracking it.
+
+
+ The stream id - serves as the key.
+
+ True close the specified memory mapped file even if it's reference to the map; false skip it if the reference count is more than zero.
+
+
+
+ Gets the random access viewer.
+
+ The identifier.
+ Name of the file.
+ if set to true [refresh memory map file].
+ The access mode.
+ The type.
+ Memory mapped file accessor.
+
+
+
+ Gets the random access viewer.
+
+ The loader identifier.
+ Name of the share memory mapped file.
+ The offset.
+ The size.
+ if set to true [refresh memory map file].
+ The access mode.
+ The type.
+ Memory mapped file accessor.
+
+
+
+ Determines whether the specified file path is open.
+
+ The file path.
+ true if open
+
+
+
+ Gets the errors.
+
+ Name of the file.
+ Error Message
+
+
+
+ Remove last errors. Cleans up the last errors for this stream id.
+
+
+ The stream id.
+
+
+
+
+ Gets the memory mapped file.
+
+ The loader identifier.
+ Name of the map.
+ The access mode.
+ The type.
+ The size.
+ The memory mapped file object
+
+
+
+ The reader extension methods.
+
+
+
+
+ read a byte, updating the position.
+
+
+ The viewer.
+
+
+ The start position.
+
+
+ The .
+
+
+
+
+ read a short, updating position.
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ The .
+
+
+
+
+ read double, updating position.
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ The .
+
+
+
+
+ read an integer, updating the start position
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ The .
+
+
+
+
+ read a float from a view, updating the start position
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ The .
+
+
+
+
+ read an unsigned short from a view, updating the start position
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ The .
+
+
+
+
+ read an unsigned integer from a view, updating the start position
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ The .
+
+
+
+
+ read a string from a view, updating the start position
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ The .
+
+
+
+
+ Read a number of wide characters, and convert to string.
+ If there is a '0' in the string, the string length will be adjusted.
+
+ The viewer.
+ Offset into the view.
+ Converted string
+
+
+
+ Read a structure ext, updating the position
+
+
+ The viewer.
+
+
+ The start position.
+
+ Type of struct
+
+
+ The struct which was read
+
+
+
+
+ Reads the previous revision and convert.
+
+ Current Type
+ Previous Type
+ The viewer.
+ The start position.
+ The object which was read
+
+
+
+ read an array of bytes from a view, updating the start position
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+ The count of bytes to read
+
+ The array
+
+
+
+
+ read an array of bytes from a view, expecting a large data array.
+ This uses 64 bit items, to cut down Marshalling overheads
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+ The count of bytes to read
+
+ The array
+
+
+
+
+ read an array of integer from a view, updating the start position
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ Data stored in integer array
+
+
+
+
+ read an array of unsigned integers from a view, updating the start position
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ Data stored in unsigned integer array
+
+
+
+
+ read an array of bytes from a view, updating the start position
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ The count of values to read.
+
+
+ Data stored unsigned integer array
+
+
+
+
+ Reads the doubles ext.
+
+ The viewer.
+ The start position.
+ Data stored in double array
+
+
+
+ Read a set of floats, and return as an array.
+
+
+ The viewer. (memory map)
+
+
+ The start position.
+
+
+ The count of objects to load.
+
+
+ The array
+
+
+
+
+ read an list of strings from a view, updating the start position
+
+
+ The viewer (memory map)
+
+
+ The start position.
+
+
+ The strings
+
+
+
+
+ Read struct array, updating the position.
+
+
+ The viewer.
+
+
+ The start position.
+
+ Type of array element
+
+
+ The array
+
+
+
+
+ load a raw file object, updating the start position.
+
+
+ The viewer.
+
+
+ The function to construct the type.
+
+
+ The file version.
+
+
+ The start position.
+
+ Type to load
+
+
+ The object loaded
+
+
+
+
+ load a raw file object array.
+
+
+ The viewer.
+
+
+ The file version.
+
+
+ The start position.
+
+ Type of data in array
+
+
+ The array of objects
+
+
+
+
+ load raw file object extended.
+
+
+ The viewer. (memory map)
+
+
+ The file version.
+
+
+ The start position.
+
+ Type of object to read
+
+
+ The object
+
+
+
+
+ The writer extension methods.
+
+
+
+
+ Writes the float.
+
+ The writer.
+ The value.
+ The start position.
+
+
+
+ Writes the double.
+
+ The writer.
+ The value.
+ The start position.
+
+
+
+ Writes the byte.
+
+ The writer.
+ The value.
+ The start position.
+
+
+
+ Writes the bytes.
+
+ The writer.
+ The value.
+ The start position.
+
+
+
+ Writes the short.
+
+ The writer.
+ The value.
+ The start position.
+
+
+
+ A strongly-typed resource class, for looking up localized strings, etc.
+
+
+
+
+ Returns the cached ResourceManager instance used by this class.
+
+
+
+
+ Overrides the current thread's CurrentUICulture property for all
+ resource lookups using this strongly typed resource class.
+
+
+
+
+ Looks up a localized string similar to Cannot convert device to MS Device!.
+
+
+
+
+ Looks up a localized string similar to File path is empty or null!.
+
+
+
+
+ Looks up a localized string similar to Invalid Accurate mass Type..
+
+
+
+
+ Looks up a localized string similar to Invalid Barcode Status Type..
+
+
+
+
+ Looks up a localized string similar to Invalid Device Type..
+
+
+
+
+ Looks up a localized string similar to The file name is invalid.
+
+
+
+
+ Looks up a localized string similar to Invalid Instrument type..
+
+
+
+
+ Looks up a localized string similar to Invalid instrument type index..
+
+
+
+
+ Looks up a localized string similar to Invalid Packet Type..
+
+
+
+
+ Looks up a localized string similar to Invalid Sample Type..
+
+
+
+
+ Looks up a localized string similar to Invalid tolerance unit..
+
+
+
+
+ Looks up a localized string similar to Invalid Virtual Device Type.
+
+
+
+
+ Looks up a localized string similar to Cannot map a zero-length file..
+
+
+
+
+ Looks up a localized string similar to Missing instrument id information.
+
+
+
+
+ Looks up a localized string similar to Missing raw file information..
+
+
+
+
+ Looks up a localized string similar to No instrument selected..
+
+
+
+
+ Looks up a localized string similar to This is not MS device..
+
+
+
+
+ Looks up a localized string similar to No open raw file..
+
+
+
+
+ Looks up a localized string similar to Null chromatogram settings argument.
+
+
+
+
+ Looks up a localized string similar to Null file header argument..
+
+
+
+
+ Looks up a localized string similar to Null instrument id argument..
+
+
+
+
+ Looks up a localized string similar to Null run header returned from RawFileReader.
+
+
+
+
+ Looks up a localized string similar to Null run header argument..
+
+
+
+
+ Looks up a localized string similar to Null scan index argument..
+
+
+
+
+ Looks up a localized string similar to Null sequence row argument..
+
+
+
+
+ Looks up a localized string similar to Null UV scan index argument..
+
+
+
+
+ Looks up a localized string similar to RawFileReaderTracer.
+
+
+
+
+ Local version of ScanDependentsDetails
+
+
+
+
+ Gets or sets the index of the scan.
+
+
+ The index of the scan.
+
+
+
+
+ Gets the filter string.
+
+
+ The filter string.
+
+
+
+
+ Gets or sets the precursor array.
+
+
+ The precursor mass array.
+ ]
+
+
+
+ Gets or sets the isolation width array.
+
+
+ The isolation width array.
+
+
+
+
+ Gets or sets the filter data.
+
+
+
+
+ The scan dependents. Provides information about the relationship between
+ data dependant scans and the scan, whose data triggered the dependant scan.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the type of the raw file instrument.
+
+
+ The type of the raw file instrument.
+
+
+
+
+ Gets or sets the scan dependent detail array.
+
+
+ The scan dependent detail array.
+
+
+
+
+ Local class to represent a scan header, to satisfy interfaces for Chromatogram generation.
+
+
+
+
+ Gets the Index for the scan
+
+
+
+
+ Gets the Index for the MS scan
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Scan number
+
+
+ Index data for scan
+
+
+
+
+ Gets the retention time (start time) of a scan
+
+
+
+
+ Gets the scan's number
+
+
+
+
+ Defines an implementation of "IScanWithSimpleData",
+
+
+
+
+ Gets or sets the scan event.
+
+
+
+
+ Gets or sets the data.
+
+
+
+
+ Class to read data from an SLD file
+
+
+
+
+ Create an ISequenceFileAccess interface to
+ read data from a sequence (SLD) file
+
+ File to open
+ Interface to read data from file
+
+
+
+ Loads a sequence (SLD) file.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Name of the file.
+
+
+
+ Gets the file header for the sequence
+
+
+
+
+ Gets a value indicating whether the last file operation caused an error
+
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets a value indicating whether true if a file was successfully opened.
+ Inspect "FileError" when false
+
+
+
+
+ Gets additional information about a sequence
+
+
+
+
+ Gets the set of samples in the sequence
+
+
+
+
+ The simple detector chromatogram builder.
+ Makes chromatograms from devices other than MS
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The device (to create chromatograms from).
+
+
+
+
+ Generate chromatograms for all detectors, except for MS
+
+ Input parameters
+ first scan in chromatogram
+ last scan in chromatogram
+ The Chromatogram
+
+
+
+ Builds the non MS chromatograms.
+
+ The settings.
+ The number of chromatograms
+ The number of scans.
+ The first scan.
+ The last scan.
+ The number of non mass range sum chromatograms.
+ The mass range array.
+ The number of mass ranges.
+ Chromatogram results
+
+
+
+ read data from scan.
+
+
+ The settings.
+
+
+ All results data.
+
+
+ The wavelength ranges.
+
+
+ The wavelength range count.
+
+
+ The scan data.
+
+
+ The scan index.
+
+
+ The scan number.
+
+
+ The first scan.
+
+
+
+
+ Builds the channel traces.
+ UV channels, or analog channels.
+
+ Parameters for the chromatograms.
+ Table of all chromatogram
+ The first scan.
+ The last scan.
+
+
+
+ For chromatograms which need the scan index data only, fill in the data.
+
+ Parameters for the chromatograms
+ Table of all chromatogram results
+ Data in scan
+ The scan number
+ The first scan
+ The number of non mass range sum chromatograms
+
+
+
+ Convert a channel number into a channel index
+ which is used to offset into a scan
+
+ Channel type
+ Channel index (0 to 7), or -1 if not a valid channel
+
+
+
+ Convert a set of data peaks into signal
+
+ Data to convert
+ Converted Signal
+
+
+
+ The chromatogram result (1 point in chromatogram).
+
+
+
+
+ Gets or sets the base peak.
+
+
+
+
+ Gets or sets the intensity.
+
+
+
+
+ Gets or sets a value indicating whether this point is saturated.
+
+
+
+
+ Gets or sets the time.
+
+
+
+
+ Gets or sets the scan number.
+
+
+
+
+ Wrapper class for using IOleStream.
+ For additional read/write examples see version in "foundation Apps" project.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The stream.
+
+
+
+
+ read char array from stream.
+ The stream is "wide characters" (unicode)
+
+ The number of bytes to read from stream.
+ The stream of bytes into a string
+
+
+
+ read an array from the stream.
+
+
+ The data.
+
+ Thrown when not able to read data
+
+
+
+
+ The auto sampler config.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the tray index.
+
+
+
+
+ Gets or sets the tray name.
+
+
+
+
+ Gets or sets the tray shape.
+
+
+
+
+ Gets or sets the vial index.
+
+
+
+
+ Gets or sets the vials per tray.
+
+
+
+
+ Gets or sets the vials per tray x.
+
+
+
+
+ Gets or sets the vials per tray y.
+
+
+
+
+ Gets the auto sampler configuration struct.
+
+
+
+
+ Loads the specified viewer.
+
+ The viewer.
+ The data offset.
+ The file revision.
+ The number of bytes read
+
+
+
+ Initializations this instance.
+
+
+
+
+ The error log.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+ The run header.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+ The file revision.
+
+
+ The run header.
+
+
+
+
+ Gets the file revision.
+
+
+
+
+ Gets the header file map name.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ The get item.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ Load (from file).
+
+ The viewer (memory map into file).
+ The data offset (into the memory map).
+ The file revision.
+
+ The number of bytes read
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+ True refresh succeed, false otherwise.
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ The error log item.
+
+
+
+
+ Gets the retention time.
+
+
+
+
+ Gets the error text.
+
+
+
+
+ Initializes a new instance of the class.
+ The error is a list of text strings indexed by the retention time.
+
+
+ The retention time.
+
+
+ The text.
+
+
+
+
+ Compare the current instance's retention time with another object of the same type.
+
+
+ The other instance.
+
+
+ -1 indicates the RT of the current instance is less than another object,
+ 0 indicates same,
+ 1 indicates the RT of the current instance is greater than another object.
+
+
+
+ The file header.
+
+
+
+
+ Initializes a new instance of the FileHeader class.
+ Sets default file type to raw file and some other defaults.
+
+
+
+
+ Copy constructor
+ Initializes a new instance of the FileHeader class to the values of an existing IFileHeader object.
+
+ The IFileHeader object.
+
+
+
+ Wrap a file header struct.
+
+ File header to wrap.
+ An object which wraps the given struct.
+
+
+
+ Creates an initial header file object for file writing (i.e. raw file, sequence file, method file, etc.)
+ with the specified file type and description.
+ This method will also initialize the internal fields, such as set the creation/modified date to current date time,
+ and set the who created/modified to be the person who is currently logged on to the Windows OS.
+
+ File type, i.e. raw file, sequence file, method file, etc.
+ [Optional] The description about the file.
+ The file header object.
+
+
+
+ Gets the type of the file.
+
+ Type of the file.
+ True the file type is known type; false otherwise.
+
+
+
+ Gets or sets the format revision of this file.
+ Note: this does not refer to revisions of the content.
+ It defines revisions of the binary files structure.
+
+
+
+
+ The is signature valid.
+
+
+ The .
+
+
+
+
+ Gets or sets the file description.
+
+
+
+
+ Gets the check sum.
+
+
+
+
+ Gets or sets the number of times modified.
+
+
+ The number of times the file has been modified.
+
+
+
+
+ Gets or sets the number of times calibrated.
+
+
+ The number of times calibrated.
+
+
+
+
+ Gets or sets the who created id.
+
+
+
+
+ Gets or sets the who created logon.
+
+
+
+
+ Gets or sets the who modified id.
+
+
+
+
+ Gets or sets the who modified logon.
+
+
+
+
+ Gets or sets the file type.
+
+
+
+
+ Gets or sets the creation date.
+
+
+
+
+ Gets or sets the modified date.
+
+
+
+
+ Calculates and updates the checksum for the file header. Will calculate using the header written to the stream of the binary writer.
+ Requires the header to be previously written to the binary writer stream.
+
+ Binary writer with the written file header
+ Any errors that occur during calculation
+ True if successful
+
+
+
+ Updates the file header checksum.
+
+ The root storage.
+ Stores the last error information.
+ True if successful; otherwise false.
+
+
+
+ Gets the file header struct, only needed internally for writing file header.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Initialize fields and properties, on load.
+
+
+
+
+ Gets the check sum seed.
+
+ Check sum seed value.
+
+
+
+ Determines whether this is a valid revision.
+
+ True it's a valid file revision; false otherwise.
+
+
+
+ Test if this may be a valid file but with a newer format.
+
+ true: if the file version > the version complied into of the software that's running.
+
+
+
+ The resets the checksum in the header to 0.
+
+
+
+
+ The generic data collection. The generic data collection has two parts. The data descriptors and the generic
+ data. The class creates a memory mapped stream view of the data.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+ The data descriptors.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Loader ID
+ Name of the header map file.
+ Name of the data map file.
+ The number data.
+ The file revision.
+
+
+
+ Initializes a new instance of the class.
+
+ Due to the fact that some generic data collection's descriptors and data are not stored in contiguous
+ blocks, we cannot automatically set the memory mapped stream's current position (e.g. the MS device's
+ Trailer data's descriptor is written before the tune data and the trailer data themselves are written after
+ the trailer scan events).
+
+
+ The loader ID
+ The number of elements.
+ The new MMF offset.
+
+
+
+ Gets the data descriptors.
+
+
+
+
+ Gets the total size of the data collection. In the case where the data descriptors and the
+ data collections are written in contiguous blocks, the container will have to update its viewer
+ position because the data entries may not have been read.
+
+
+
+
+ Gets the file revision.
+
+
+
+
+ Gets the header file map name.
+ It's only meaningful in Generic data.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ Gets the number of elements function.
+
+
+
+
+ The method loads the generic collection from file by getting the descriptors and setting
+ up the structures.
+
+
+ The view stream.
+
+
+ The starting position of the collection - this is used to create a local memory mapped stream.
+
+
+ The number of elements.
+
+
+ The number of bytes loaded.
+
+
+
+
+ load data descriptors.
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The number of bytes loaded.
+
+
+
+
+ The method calls to get an
+ object for the memory mapped view stream that represents the status log's "blob". It will then
+ divide the blob into individual status log entries without actually reading in the status log items.
+
+ View into memory map
+
+
+ The starting dataOffset of the collection - this is used to create a local memory mapped stream.
+
+
+ The number of elements.
+
+
+ Thrown if there is a problem getting the binary collectionStreamViewer for the memory mapped view stream.
+
+
+ The position after all the records
+
+
+
+
+ remove all data.
+
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+
+ The .
+
+
+
+
+ The descriptor for a generic data item. It contains information
+ (e.g. label, type, size, item offset, etc) for loading the
+ data from the raw file.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The label.
+
+
+ The data type.
+
+
+ The string length or precision.
+
+
+
+
+ Gets the data type.
+
+
+
+
+ Gets a value indicating whether to use scientific notation.
+
+
+
+
+ Gets the size of the data item in bytes.
+
+
+
+
+ Gets the label for the data item.
+
+
+
+
+ Gets the length (for strings) or precision (for floats and doubles).
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The get internal generic data item struct.
+
+
+ The .
+
+
+
+
+ The method sets the flag.
+
+
+
+
+ The method sets the size and and the precision/length of the data.
+
+
+
+
+ The collection of data descriptors.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The capacity.
+
+
+
+
+ Gets the total size of the data blob being described.
+
+
+
+
+ Gets the offset from the start of a data block to a specific field
+ permitting individual fields to be decoded.
+
+
+
+
+ Gets the "all valid" table.
+ Fields may have optional validity flags (per record)
+ When that feature is not used, all fields are valid.
+ This internal array is initialized to "all values valid'
+ so it does not have to be recreated each scan
+
+
+
+
+ Loads from the specified viewer.
+
+ The viewer.
+ The data offset.
+ The file revision.
+ The number of bytes reader
+
+
+
+ add an item.
+
+
+ The item.
+
+
+
+
+ Calculate the buffer size. (The size of a record).
+
+
+ The size of one record.
+
+
+
+
+ The convert data entry to byte array.
+
+ The log entries.
+ The buffer for storing the log entries in byte array.
+ The number of log entries do not match the header definitions
+
+
+
+ The singleton class to calculate data sizes.
+
+
+
+
+ Prevents a default instance of the class from being created.
+
+
+
+
+ Gets the instance.
+
+
+
+
+ The method calculates the of the type size in byes.
+
+
+ The type.
+
+
+ The count - optional for string types.
+
+
+ The size in bytes.
+
+
+ Thrown if there is an error calculating size (e.g. the type does not exist).
+
+
+
+
+ Encapsulates the generic value structure that is read from the raw file .
+
+
+
+
+ Initializes a new instance of the class. The value is set
+ to an empty string.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The descriptor.
+
+
+ The value.
+
+
+
+
+ Gets the value.
+
+
+
+
+ The method returns the string representation of value. For floats and doubles, it uses the
+ data descriptor's precision value to determine the value format.
+
+
+ The representation of value.
+
+
+
+
+ The to string.
+
+
+ The if formatted.
+
+
+ The .
+
+
+
+
+ The log decoder interface is used to decode values for all generic logs.
+
+
+
+
+ Get the value of a field, with minimal decoding
+
+ offset into map
+ definition of type
+ The value as an object
+
+
+
+ Decipher a value.
+
+
+ The data offset.
+
+
+ The data descriptor.
+
+
+ The value, as an object
+
+
+
+
+ The class encapsulates a blob that contains a list of label value pairs.
+ This holds information about where to find the binary record.
+ the records can be "decoded once" similar to a Lazy pattern, and saved in a cache.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The log reader.
+
+
+ The offset.
+
+
+ The descriptors.
+
+
+
+
+ Returns all the values, no formatting.
+
+ The values, as the nearest .net type
+
+
+
+ The method gets the object at the specified index.
+
+
+ The index.
+
+
+ The object or null if the index exceeds the
+ number of elements in the collection.
+
+
+
+
+ Returns the value of a specific field.
+
+ Field number
+ The value, as the nearest .net type
+
+
+
+ The method checks the cache to see if the label value pairs have been read. If not, it will read them and
+ use the to decipher them, cache them, and returns them.
+
+
+ The of label value pairs.
+
+
+ Thrown if the descriptors are empty - there is no way to interpret the blob.
+
+
+
+
+ Test if this is a valid item number.
+
+
+ The index of the required item.
+
+
+ True if this is a valid item.
+
+
+
+
+ Validate descriptors.
+
+ on null descriptors
+
+
+
+
+ decode which log items are valid.
+
+
+ The start position on the view.
+
+
+ .// array of valid item flags
+
+
+
+
+ The class that represents the label value pair - normally used in status log entries.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The label.
+
+
+ The value.
+
+
+
+
+ Gets the label.
+
+
+
+
+ Gets the object containing the value.
+
+
+
+
+ The to string.
+
+
+ The .
+
+
+
+
+ Decodes values in logs (status logs, tune method logs, etc.)
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The viewer.
+
+
+
+
+ Get the value of a field, with minimal decoding
+
+ offset into map
+ definition of type
+ The value as an object
+
+
+
+ Decipher a value.
+
+
+ The data offset.
+
+
+ The data descriptor.
+
+
+ The value, as an object
+
+
+
+
+ Decode char string.
+
+
+ The data offset.
+
+
+ The data descriptor.
+
+
+ The decoded string
+
+
+
+
+ Decode a wide char string.
+
+
+ The data offset.
+
+
+ The data descriptor.
+
+
+ The decoded string.
+
+
+
+
+ The ion ratio.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The ion ratio test settings
+
+
+
+
+ The ion ratio test info. struct when file rev >=56
+
+
+
+
+ The ion ratio test 55. struct when file rev less than 56
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Gets the Mass to be tested
+
+
+
+
+ Gets the Expected ratio
+ The ratio of the qualifier ion response to the component ion response.
+ Range: 0 - 200%
+
+
+
+
+ Gets the Window to determine how accurate the match must be
+ The ratio must be +/- this percentage.
+
+
+
+
+ The (calibration or QC) level.
+
+
+
+
+ The level info.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Gets replicate data, as saved in a PMD file
+
+
+
+
+ Gets the name for this calibration level
+
+
+
+
+ Gets the amount of calibration compound (usually a concentration) for this level
+
+
+
+
+ Gets the QC test standard: 100 * (yobserved-ypredicted)/ypreditced
+
+
+
+
+ The (NIST) library search constraints.
+
+
+
+
+ The constraints info.
+
+
+
+
+ The individual constraints info.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ The individual constraint wrapper, to return data as required interface.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The info.
+
+
+
+
+ Gets the condition on this element (greater, less or equal to value)
+
+
+
+
+ Gets the comparison value for this element constraint.
+ Used in a a test as per "ElementCondition"
+
+
+
+
+ Gets the element to constrain
+
+
+
+
+ The ion constraint info.
+
+
+
+
+ The ion constraint info wrapper, to implement the required interface
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The info.
+
+
+
+
+ Gets the method of ion constraint
+
+
+
+
+ Gets the mass to charge ratio of the constraint
+
+
+
+
+ Gets the from value of the constraint
+
+
+
+
+ Gets the To value of the constraint
+
+
+
+
+ Gets the Ion Constraints (see NIST documentation for details)
+
+
+
+
+ Gets the individual element constraints (limits on specific elements)
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Gets a value indicating whether molecular weight constraint is enabled
+
+
+
+
+ Gets the minimum molecular weight
+
+
+
+
+ Gets the maximum molecular weight
+
+
+
+
+ Gets a value indicating whether name fragment constraint is enabled
+
+
+
+
+ Gets a value indicating whether DB constraint is enabled
+
+
+
+
+ Gets a value indicating whether Fine constraint is enabled
+
+
+
+
+ Gets a value indicating whether EPA (Environmental Protection Agency) constraint is applied
+
+
+
+
+ Gets a value indicating whether NIH (National Institute of Health) constraint is applied
+
+
+
+
+ Gets a value indicating whether TSCA (Toxic Substances Control Act) constraint is applied
+
+
+
+
+ Gets a value indicating whether USP (United States Pharmacopoeia) constraint is applied
+
+
+
+
+ Gets a value indicating whether EINECS (European Inventory of Existing Commercial Chemical Substances) constraint is applied
+
+
+
+
+ Gets a value indicating whether RTECS (Registry of Toxic Effects of Chemical Substances) constraint is applied
+
+
+
+
+ Gets a value indicating whether HODOC (Handbook of Data on Organic Compounds) constraint is applied
+
+
+
+
+ Gets a value indicating whether IR constraint is applied
+
+
+
+
+ Gets a value indicating whether Elements constraint is applied
+
+
+
+
+ Gets the element constraint method (used when ElementsEnabled)
+
+
+
+
+ Gets a value indicating whether Ion Constraints are enabled
+
+
+
+
+ Gets the method of Ion Constraints (used when IonConstraintsEnabled)
+
+
+
+
+ Gets the name fragment constraint
+
+
+
+
+ Gets the Element constraint
+
+
+
+
+ The library search options, as contained in an Xcalibur PMD file.
+
+
+
+
+ The lib search info version 1.
+
+
+
+
+ The (NIST) lib search info.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Load, (from file)
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The number of bytes loaded.
+
+
+
+
+ Gets the list of libraries to search
+
+
+
+
+ Gets the name of the user library (for append operation)
+
+
+
+
+ Gets the similarity setting for NIST search
+
+
+
+
+ Gets the identity mode for NIST search
+
+
+
+
+ Gets the type of NIST search
+
+
+
+
+ Gets the molecular weight
+
+
+
+
+ Gets a value indicating whether search with Molecular Weight is enabled
+
+
+
+
+ Gets a value indicating whether reverse search is enabled
+
+
+
+
+ Gets a value indicating whether to append to the user library
+
+
+
+
+ Gets the search molecular weight
+
+
+
+
+ Gets the maximum number of reported search hits
+
+
+
+
+ Gets the match factor
+
+
+
+
+ Gets the reverse match factor
+
+
+
+
+ Gets the Probability Percent (match limit)
+
+
+
+
+ Gets a value indicating whether mass defect should be applied
+
+
+
+
+ Gets the mass defect for the low mass
+
+
+
+
+ Gets the mass defect for the High mass
+
+
+
+
+ Gets the mass at which "DefectAtMass1" applies
+
+
+
+
+ Gets the mass at which "DefectAtMass2" applies
+
+
+
+
+ The instrument method.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The method header (not the raw file header).
+
+
+ The method file location.
+
+
+
+
+ Gets the file header.
+
+
+
+
+ Gets the method size.
+
+
+
+
+ Gets the original storage name.
+
+
+
+
+ Gets the starting offset.
+
+
+
+
+ Gets or sets the storage descriptions.
+
+
+
+
+ Gets the method info struct, only needed internally for writing raw file.
+
+
+
+
+ Save instrument method file.
+
+ Access to the raw file bytes
+
+ The method file path.
+
+
+ Force over write. If true, and file already exists, attempt to delete existing file first.
+ If false: UnauthorizedAccessException will occur if there is an existing read only file.
+
+
+
+
+ Loads the instrument method from the memory mapped raw file viewer passed in.
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The .
+
+
+
+
+ Gets the storage description.
+
+ The viewer.
+ The start position.
+ The storage description
+ List of StorageDescription
+
+
+
+ The save method bytes to file.
+
+
+ The map.
+
+
+ The offset.
+
+
+ The .
+
+
+
+
+ The audit data, from legacy LCQ files.
+
+
+
+
+ Gets or sets the comment.
+
+
+ The comment.
+
+
+
+
+ Gets or sets the what changed.
+
+
+
+
+ Gets or sets the time changed.
+
+
+
+
+ Gets the audit data struct.
+
+
+
+
+ Load (from file).
+
+ The viewer (memory map into file).
+ The data offset (into the memory map).
+ The file revision.
+ The number of bytes read
+
+
+
+ The audit trail from legacy LCQ files
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the audit data info.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The auto sampler settings from legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The axis parameters, from legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The chromatogram trace, from legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Defines a custom report, as in an Xcalibur PMD file
+
+
+
+
+ Determines when a report is active
+
+
+
+
+ Never make report.
+
+
+
+
+ Always make report.
+
+
+
+
+ Report when blank sample.
+
+
+
+
+ Report when calibration sample.
+
+
+
+
+ Report when unknown sample.
+
+
+
+
+ Report when QC or standard.
+
+
+
+
+ The action code.
+
+
+
+
+ Do nothing.
+
+
+
+
+ Run an excel macro.
+
+
+
+
+ Run a program.
+
+
+
+
+ Export only.
+
+
+
+
+ The report export types.
+
+
+
+
+ No export.
+
+
+
+
+ Export as XLS.
+
+
+
+
+ Export as text.
+
+
+
+
+ Export as CSV.
+
+
+
+
+ The export content.
+
+
+
+
+ Do not export
+
+
+
+
+ Export the results.
+
+
+
+
+ Export the quantitation.
+
+
+
+
+ The custom report info.
+
+
+
+
+ Load data
+
+
+ The viewer (memory map)
+
+
+ The data offset into the map.
+
+
+ The file revision.
+
+
+ The .
+
+
+
+
+ The GC method, from legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The ICIS status log, for legacy LCQ files.
+
+
+
+
+ Gets the ICIS status log.
+
+
+ The ICIS status log.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The inlet methods, for legacy LCQ files
+
+
+
+
+ Gets the inlet methods info.
+
+
+
+
+ Gets the GC method info.
+
+
+
+
+ Gets the LC method info.
+
+
+
+
+ Gets the auto sampler info.
+
+
+
+
+ Gets the probe info info.
+
+
+
+
+ Gets the syringe info.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The instrument method column info, from legacy LCQ files
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The instrument method solvent, from legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Legacy instrument configuration data (LCQ data system)
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the inlet type -- either "ESI" or "APCI"
+
+
+
+
+ Gets the MS Model
+
+
+
+
+ Gets the UV detector model
+
+
+
+
+ Gets the DAD (Diode array detector) model.
+
+
+
+
+ Gets the LC pump model.
+
+
+
+
+ Gets the auto sampler model.
+
+
+
+
+ Gets the AD converter model.
+
+
+
+
+ Gets the MS model number
+
+
+
+
+ Gets the MS serial number.
+
+
+
+
+ Gets the LC pump model number.
+
+
+
+
+ Gets the LC pump serial number.
+
+
+
+
+ Gets the Detector model number (unused now)
+
+
+
+
+ Gets the Detector serial number (unused now)
+
+
+
+
+ Gets the Auto sampler model number
+
+
+
+
+ Gets the Auto sampler serial number
+
+
+
+
+ Gets the External detector channels 1-4
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Test if the ext detector is in use.
+
+
+ The index.
+
+
+ true if in use
+
+
+
+
+ The instrument file, from old LCQ
+
+
+
+
+ Gets the audit trail information.
+
+
+
+
+ Gets the instrument configuration.
+
+
+
+
+ Gets the MS method information.
+
+
+
+
+ Gets the real time chromatogram information.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The instrument run info data from legacy LCQ files
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The instrument status log, from legacy LCQ files.
+
+
+
+
+ Gets the instrument status struct info.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The number of items.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The ITCL settings, for legacy LCQ files.
+
+
+
+
+ Gets the acquisition time.
+
+
+
+
+ Gets the tune method.
+
+
+
+
+ Gets the ITCL procedure.
+
+
+
+
+ Gets the MS segments.
+
+
+
+
+ Gets the variable lists.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The LC detector information
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The LC event, from legacy LCQ files
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The LC method (from legacy LCQ files)
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The LCQ converter. Convert from legacy LCQ format to current raw data.
+
+
+
+
+ LCQs the write Xcalibur trailer header.
+
+ The converted data descriptors
+
+
+
+ converts The LCQ tune method header to Data Descriptor format.
+
+
+ The .
+
+
+
+
+ create xcalibur status log header from LCQ format log.
+ To generate the trailer extra header for inclusion to the Xcalibur data file.
+
+ if set to true include the auto sampler data.
+ if set to true include the LC data.
+ The converted log definition
+
+
+
+ LCQs the trailer to xcalibur scan event.
+
+ precision for formatting mass
+ The trailer information.
+ index into scans
+ The scan event
+
+
+
+ Convert boolean value to "on off" and cast to byte.
+
+
+ The value.
+
+
+ The .
+
+
+
+
+ Converts the LCQ scan event to Xcalibur scan event.
+ To construct an Xcalibur scan event from a given LCQ scan event
+
+ The LCQ scan event.
+ The converted event
+
+
+
+ LCQs the index of the write xcalibur scan.
+
+ The writer.
+ The trailer information.
+ The i.
+ if set to true [has experiment method].
+ The offset.
+
+
+
+ LCQs the index of the write xcalibur UV scan.
+
+
+ The writer.
+
+
+ The trailer information.
+
+
+ The MS analog channels used count.
+
+
+ The i.
+
+
+ The offset.
+
+
+
+
+ write xcalibur UV channel data.
+
+
+ The writer.
+
+
+ The UV analog input.
+
+
+ The MS analog channels used.
+
+
+ The offset.
+
+
+
+
+ Write the xcalibur trailer extra.
+
+ Where the data is written
+ The trailer information.
+ Offset into memory map
+
+
+
+ LCQs the write xcalibur tune data.
+
+
+ The writer.
+
+
+ The tune data struct.
+
+
+ The offset.
+
+
+
+
+ convert byte to zero or one.
+
+
+ The byte.
+
+
+ either 0 or 1
+
+
+
+
+ Write the xcalibur status log.
+ To generate the trailer extra header for inclusion to the Xcalibur data file.
+
+
+ The writer.
+
+
+ The instrument status structure information.
+
+
+ if set to true include the auto sampler data.
+
+
+ if set to true include the LC data.
+
+
+ Size of the block.
+
+
+ The offset.
+
+
+
+
+ encode a status message.
+
+
+ The status code.
+
+
+ The status strings.
+
+
+ The max length.
+
+
+ The message as encoded bytes
+
+
+
+
+ The LCQ scan header.
+
+
+
+
+ Gets the trailer struct info.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The number items.
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The LC table, from legacy LCQ files
+
+
+
+
+ Gets the start percent.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The MS dependent data, for legacy LCQ files
+
+
+
+
+ Gets or sets the mode or the largest.
+
+
+
+
+ Gets or sets the index of the largest.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The MS method, from legacy LCQ files
+
+
+
+
+ Gets the MS method info.
+
+
+
+
+ Gets the dump value info.
+
+
+
+
+ Gets the fraction collector info.
+
+
+
+
+ Gets the ITCL info.
+
+
+
+
+ Gets the non ITCL info.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The MS scan event, from legacy LCQ files
+
+
+
+
+ Gets the MS scan event struct info.
+
+
+
+
+ Gets the MS dependent data info.
+
+
+
+
+ Gets the reactions info.
+
+
+
+
+ Gets the mass ranges info.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The MS segment.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the minimum segment time.
+ minimum segment time (to correct old methods)
+ On 3/14/96, the min MS Segment time was increased to 0.1 -- compensate while loading
+
+
+ The minimum segment time.
+
+
+
+
+ Gets the MS scan events.
+
+
+
+
+ Gets the acquisition time.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The non ITCL data from legacy LCQ files.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the minimum MS run time.
+ Minimum MS run time (to correct old methods)
+
+
+ The minimum MS run time.
+
+
+
+
+ Gets the number segments.
+
+
+ The number segments.
+
+
+
+
+ Gets the mass rejects.
+
+
+
+
+ Gets the mass precursors.
+
+
+
+
+ Gets the MS segments.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Force all specified masses to be within the mass range of the instrument
+
+
+
+
+ The old LCQ file.
+
+
+
+
+ Prevents a default instance of the class from being created.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The raw file loader.
+ raw File Loader
+
+
+
+ Gets the audit trail information.
+
+
+
+
+ Decodes the old LCQ file.
+ This object is being converted or read from disk and therefore the data needs
+ needs to read from either the mapped file or some other mechanism. This function
+ is only intended for use with old LCQ data files.
+
+ The viewer.
+ The data offset.
+ The file revision.
+ True able to decode the old LCQ file, false otherwise
+ This is an old file type, the file version is less than 25
+
+
+
+ Constructs the scan event segments.
+
+ The LCQ instrument file.
+ The LCQ tune data.
+ The mass spec device.
+
+
+
+ Gets the mass spec analog channels used count.
+
+ if set to true [has experiment method].
+ The LCQ instrument file.
+ The mass spec analog channels used count.
+ The mass spec analog channels used.
+ Used count
+
+
+
+ Releases unmanaged and - optionally - managed resources.
+
+ true to release both managed and unmanaged resources; false to release only unmanaged resources.
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ The probe info, from legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The real time chromatogram information, from legacy LCQ files
+
+
+
+
+ Gets the real time chromatogram info struct info.
+
+
+
+
+ Gets the x axis parameters.
+
+
+
+
+ Gets the y axis parameters.
+
+
+
+
+ Gets the real time chromatogram norm info.
+
+
+
+
+ Gets the real time chromatogram label info.
+
+
+
+
+ Gets the real time chromatogram other info.
+
+
+
+
+ Gets the real time chromatogram style info.
+
+
+
+
+ Gets the chromatogram trace info.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The real time spec information, from legacy LCQ files.
+
+
+
+
+ Gets the real time spec info struct info.
+
+
+
+
+ Gets the x axis parameters.
+
+
+ The x axis parameters.
+
+
+
+
+ Gets the y axis parameters.
+
+
+ The y axis parameters.
+
+
+
+
+ Gets the z axis parameters.
+ label offset flag and amount are ignored (they don't apply)
+
+
+ The z axis parameters.
+
+
+
+
+ Gets the filter info.
+
+
+
+
+ Gets the real time spectrum normalization info.
+
+
+
+
+ Gets the real time spectrum color info.
+
+
+
+
+ Gets the real time spectrum label info.
+
+
+
+
+ Gets the real time spectrum other info.
+
+
+
+
+ Gets the real time spectrum ranges info.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The real time chromatogram label options from legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The real time chromatogram normalization options for legacy LCQ files.
+
+
+
+
+ Gets or sets a value indicating whether the y axis scale is fixed.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The real time chromatogram other data, for legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The real time chromatogram style, for legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The real time spec color for legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The real time spec label options.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The Real Time spec normalization settings, from legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The real time spec other settings, for legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The real time spec ranges, from legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The syringe, for legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The temperature table, from legacy LCQ files
+
+
+
+
+ Gets the temp table info.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ read temperature table struct.
+
+
+ The viewer.
+
+
+ The bytes to read.
+
+
+ The data offset.
+
+
+ The temperature table
+
+
+
+
+ The tune data, from legacy LCQ files.
+
+
+
+
+ Gets the tune data struct info.
+
+
+
+
+ Gets the norm. UNUSED -- RF DAC for normal scan rate
+
+
+
+
+ Gets the AGC. UNUSED -- RF DAC for AGC scan rate
+
+
+
+
+ Gets the high res. UNUSED -- RF DAC for high-res scan rate
+
+
+
+
+ Gets the fast. UNUSED -- RF DAC for fast scan rate
+
+
+
+
+ Gets the vernier. UNUSED -- RF DAC for vernier
+
+
+
+
+ Gets the cal q 1. UNUSED -- RF DAC for static operation at cal q 1
+
+
+
+
+ Gets the cal q 2. UNUSED -- RF DAC for static operation at cal q 2
+
+
+
+
+ Gets the norm Resonance ejection amplitude. UNUSED -- Resonance ejection amplitude for normal scan rate
+
+
+
+
+ Gets the AGC REA. UNUSED -- Resonance ejection amplitude for AGC scan rate
+
+
+
+
+ Gets the high res REA. UNUSED -- Resonance ejection amplitude for High Res scan rate
+
+
+
+
+ Gets the fast REA. UNUSED -- Resonance ejection amplitude for Fast scan rate
+
+
+
+
+ Gets the isolation waveform amp. UNUSED -- Isolation waveform amplitude
+
+
+
+
+ Gets the injection RF. UNUSED: Ion injection RF frequency slope and intercept
+
+
+
+
+ Gets the tube cal voltages. UNUSED -- Tube lens calibration voltages. Presented to the user as 2x10 2-d array.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ fix up tune data defaults.
+
+
+ The file revision.
+
+
+
+
+ The variable list, from legacy LCQ files.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The Adjustable Scan Rate profile index.
+ For scans (especially PDA) when the data is only intensity values
+ and the scan rate (x axis step, such as time, wavelength etc.) between values
+ is "adjusted" to the rate indicated by the index record.
+
+
+
+
+ Load ASR Profile index data (from file).
+
+ The viewer (memory map into file).
+ The data offset (into the memory map).
+ The file revision.
+
+ The number of bytes read
+
+
+
+
+ Gets or sets the Absorbance Unit's scale.
+
+
+
+
+ Gets the Absorbance Unit's offset.
+
+
+
+
+ Gets the data position.
+
+
+
+
+ Gets a value indicating whether is valid scan.
+
+
+
+
+ Gets the number of packets.
+
+
+
+
+ Gets the time wave length start.
+
+
+
+
+ Gets the time wave length step.
+
+
+
+
+ Gets the wave length end.
+
+
+
+
+ Gets the wave length start.
+
+
+
+
+ The AdjustableScanRate profile packet.
+ This defines a simple scan type, where the scan data is just an "array of int".
+ This is used for PDA detector data, where the "intensity" data is absorbance values
+ The index indicates the start wavelength (wavelength of the first intensity)
+ and the wavelength step, between readings.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The viewer.
+
+ offset from start of memory map
+
+ The file format version.
+
+
+ The scan index.
+
+
+
+
+ Gets the scan index.
+
+
+
+
+ Gets the segment peaks.
+
+
+
+
+ Gets the indices.
+
+
+
+
+ create packet (scan data).
+
+
+ The viewer.
+
+ Offset into memory map
+
+ The file format version.
+
+ The scan number
+
+ The .
+
+
+
+
+ Peak information (can be profile point, centroid etc).
+ Because a raw file can contain over 100 million profile points
+ this must be a "struct" not a "class", or we drive the garbage collector wild
+ and massively degrade performance on large files.
+
+
+
+
+ Initializes a new instance of the struct.
+
+
+ The label peak.
+
+
+
+
+ Initializes a new instance of the struct.
+ With a given mass and intensity.
+
+
+ The mass.
+
+
+ The intensity.
+
+
+
+
+ Initializes a new instance of the struct.
+ With a given mass and 0 intensity.
+
+
+ The mass.
+
+
+
+
+ Initializes a new instance of the struct.
+ With a given mass intensity and frequency.
+
+
+ The mass.
+
+
+ The intensity.
+
+
+ The frequency.
+
+
+
+
+ Initializes a new instance of the struct.
+ With a given mass and frequency.
+ The "bool" parameter is a performance trick needed in C#.
+ Since there is already a version with "double, double" adding a third (unused parameter)
+ creates an overload.
+ This is more efficient that using the 3 parameter constructor and
+ passing "0.0" for intensity, as an additional assignment is needed.
+ This overload is called millions of times from AddZeroPackets
+
+
+ The mass.
+
+
+ The frequency.
+
+
+ The intensity.
+
+
+
+
+ Gets the position. This value must be set by a constructor
+
+
+
+
+ Gets or sets the intensity.
+
+
+
+
+ Gets or sets the options.
+
+
+
+
+ Gets the frequency. Must be set by constitution.
+
+
+
+
+ Gets a value indicating whether this peak is reference or exception.
+
+
+
+
+ Gets a value indicating whether this peak is saturated.
+
+
+
+
+ Copies a set of FT code flags (see usage)
+
+ Data peak value
+
+
+
+ The high resolution spectrum data packet.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ Index of the scan.
+ The file revision.
+ if set to true [include reference peaks].
+
+
+
+ Gets the scan index.
+
+
+
+
+ Compress the scan to binary format for writing to a raw file
+
+ The segmented scan.
+ The compressed segmented scans in byte array
+ segmented Scan
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Converts the specified number index structure.
+
+ The number index structure.
+ The size of high resolution spectrum type structure.
+ if set to true [include reference peaks].
+ The profile BLOB.
+ Data for the scan
+
+
+
+ Map peak options to flag bytes, with a static table
+
+
+ The table of bytes for each combination of options
+
+
+
+
+ Expands the profile blob.
+
+ The low mass.
+ The high mass.
+ The converted data
+
+
+
+ The low resolution spectrum data packet.
+
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ Index of the scan.
+ The file revision.
+
+
+
+ Gets the scan index.
+
+
+
+
+ Called when [compress].
+
+ The segmented scan.
+ The compressed segmented scans in byte array
+ segmented Scan
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Expands the profile BLOB.
+
+
+ The low Mass.
+
+
+ The high Mass.
+
+
+ The profile data
+
+
+
+
+ The low res spectrum data packet 2.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ Index of the scan.
+ The file revision.
+
+
+
+ Gets the scan index.
+
+
+
+
+ Called when [compress].
+
+ The segmented scan.
+ The compressed segmented scans in byte array
+ segmented Scan
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Map peak options to flags, with a static table
+
+
+ The table of bytes for each combination of options
+
+
+
+
+ Expands the profile BLOB.
+
+ The profile data
+
+
+
+ The low resolution spectrum data packet 3.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ Index of the scan.
+ The file revision.
+
+
+
+ Gets the scan index.
+
+
+
+
+ Compresses the low resolution spec data packet #3 segmented scan.
+
+ The segmented scan.
+ The compressed segmented scans in byte array.
+ segmented Scan
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Expands the profile BLOB.
+
+ The expanded data
+
+
+
+ Called when [convert].
+
+ The mass intensity pairs.
+ The mi start position.
+ The number PKTS.
+ The converted data
+
+
+
+ The low resolution spectrum data packet 4.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ The number index structure. How many PROF_INDEX_DATA_PKT structures we have in the spectrum,
+ note that we have (nNumIndexStructures - 1) scan segments in the spectrum
+ The file revision.
+
+
+
+ Gets the scan index.
+
+
+
+
+ Compresses the low resolution spec data packet #4 segmented scan.
+
+ The segmented scan.
+ The compressed segmented scans in byte array.
+ segmented Scan
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Expands the profile BLOB.
+
+
+ The profile data
+
+
+
+
+ Called when [convert].
+
+ The mass intensity pairs.
+ The mi start position.
+ The flags.
+ The flag start position.
+ The number PKTS.
+ Data for the scan
+
+
+
+ Profile Index Data Packet
+
+
+
+
+ Gets or sets the data position.
+ Offset into MS scan data
+
+
+ The data position.
+
+
+
+
+ Gets the low mass.
+
+
+ The low mass.
+
+
+
+
+ Gets the high mass.
+
+
+ The high mass.
+
+
+
+
+ Gets the mass tick.
+ This is the mass step between profile points.
+
+
+ The mass tick.
+
+
+
+
+ Gets or sets the number of packets.
+
+
+ The number packets.
+
+
+
+
+ Gets or sets the total packets.
+
+
+ The total packets.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ The MS Packet interface.
+
+
+
+
+ Gets the label peaks.
+
+
+
+
+ Gets the noise and baselines.
+
+
+
+
+ Gets the debug data for a scan.
+
+
+
+
+ Gets the debug data for a scan.
+
+
+
+
+ The Packet interface.
+
+
+
+
+ Gets the segmented peaks.
+
+
+
+
+ Gets the scan index.
+
+
+
+
+ The label peak information.
+ Use struct here for performance:
+ Since there are "many per scan" and "many scans per file"
+ Over 10 million of these objects can be created per second
+ when processing raw files, so if "class" is used
+ This would cause frequent garbage collection, and kills parallel code
+
+
+
+
+ Gets or sets the mass.
+
+
+
+
+ Gets or sets the intensity.
+
+
+
+
+ Gets or sets the resolution.
+
+
+
+
+ Gets or sets the baseline.
+
+
+
+
+ Gets or sets the noise.
+
+
+
+
+ Gets or sets the charge.
+
+
+
+
+ Gets a value indicating whether the peak is an exception.
+
+
+
+
+ Gets a value indicating whether the peak is a reference.
+
+
+
+
+ Gets or sets the flags.
+
+
+
+
+ The class contains label peaks and noise info.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the Centroid peaks.
+
+
+
+
+ Gets or sets a value indicating whether noise has been updated.
+
+
+
+
+ Set the label peaks.
+
+
+ The _labelPeaks.
+
+
+
+
+ The set noise info packets.
+
+
+ The noise info packets.
+
+
+
+
+ Interpolate noise or baseline value.
+
+
+ The current value.
+
+
+ The previous value.
+
+
+ The current mass.
+
+
+ The previous mass.
+
+
+ The slope.
+
+
+ The interpolated value.
+
+
+
+
+ The update noise.
+
+
+
+
+ The Advanced packet base.
+ This class defines base features of a mass spectrometry scan format
+ used by advanced instruments, such as "Linear Trap" or Orbitrap.
+ These detectors may store much more than just mass and intensity.
+ They may store both profile and centroid data for the same scans.
+ Centroid data may have additional fields, such as "resolution".
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The viewer.
+
+ Index to scan to read
+ Raw file version
+
+ The include ref peaks.
+
+ Defines what optional data should be decoded
+
+
+
+ Gets the scan index.
+
+
+
+
+ Gets the label peaks.
+
+
+
+
+ Gets the noise and baselines.
+
+
+
+
+ Gets the segment peaks.
+
+
+
+
+ Gets the centroid counts.
+
+
+
+
+ Gets the header.
+
+
+
+
+ Gets a value indicating whether to include ref peaks.
+
+
+
+
+ Gets the profile blob.
+
+
+
+
+ Gets the Debug blob.
+
+
+
+
+ Gets the extended scan data
+
+
+
+
+ Gets the reference peak array.
+
+
+
+
+ Gets the segment peak list.
+
+
+
+
+ Gets a value indicating whether use ft profile sub segment.
+
+
+
+
+ Gets the default feature word.
+
+
+
+
+ Gets a value indicating whether the data has accurate mass centroids.
+
+
+
+
+ Gets or sets a value indicating whether the data has peak widths.
+
+
+
+
+ Gets the packet scan data features.
+
+
+
+
+ Gets the debug data for this scan.
+ If there is no data, returns an empty array.
+
+
+
+
+ class to define a safe data structure for "no data"
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Class to decode additional data saved with a scan
+
+
+
+
+ Gets the transients
+
+
+
+
+ Gets the data segments
+
+
+
+
+ Debug segment contains sub segments.
+ Each has a header, followed by a block of data
+
+
+
+
+ Gets the header, which can be ued in an instrument specific way to decode this data
+
+
+
+
+ Gets the data in this segment
+
+
+
+
+ Gets the data from the raw file.
+
+
+
+
+ Initialize this object, to lazy read the data
+
+
+
+
+
+
+
+ Gets a transient from the raw file
+
+
+
+
+ Gets an instrument specific transient header
+
+
+
+
+ Gets the data for this transient
+
+
+
+
+ Gets transient data from the raw file.
+
+
+
+
+ Create a lazy loader for this data
+
+ access to the raw file
+ offset into the view
+ Size of the data in 32 bit words.
+
+
+
+ constructs a class to get extended scan data
+
+ view itto the raw file
+ offset into the view
+ length of the data in 32 bit words
+
+
+
+ Prepare to return charge envelopes and centroid annotations. Call this once and in advance of accessing properties.
+
+ The byte buffer being marked as debug section in the orbitrap scan
+ offset into view for this data
+ number of 32 bit words in this data
+ Returns true on success, false if the data structure doesn't match the demands. Keep in mind that missing APD info is fine.
+
+
+
+ Compresses the centroid data into packet buffer.
+ The assumption of this routine is that the CRawScan that is passed in does contain
+ centroid data. The profile information (if any) will be dropped from the writing
+ in this routine.
+
+ The mass spec instrument data.
+ The compressed packet in byte array.
+
+
+
+ Calculates the labels per segment.
+
+ The number segments.
+ The label peaks.
+ The mass ranges.
+ The centroid segments counter.
+
+
+
+ Copies the centroid to packet buffer.
+
+ The centroid segments counter.
+ The number segments.
+ The centroid peaks.
+ The bytes.
+ The data offset.
+ The number of bytes copied to the packet buffer.
+
+
+
+ Copies the labels to packet buffer.
+
+ The number label peaks.
+ The bytes.
+ The data offset.
+ The features.
+ if set to true [has widths].
+ The widths.
+ The number of bytes copied to the packet buffer.
+
+
+
+ Copies the mass ranges to packet buffer.
+
+ The mass ranges.
+ The bytes.
+ The start position.
+ The number of bytes copied to the packet buffer.
+
+
+
+ Copies the noise information to packet buffer.
+
+ The number noise packets.
+ The noise data.
+ The packet buffer.
+ The start position.
+ The number of bytes copied to the packet buffer
+
+
+
+ Copies the packet header to packet buffer.
+
+ The packet header information.
+ The bytes.
+ The start position.
+ The number of bytes copied to the packet buffer.
+
+
+
+ Creates an empty segmented scan object.
+
+ An empty segmented scan with one profile point with zero values.
+
+
+
+ Creates the packet buffer.
+
+ The number segments.
+ The packet header information.
+ A byte array for storing packet data.
+
+
+
+ Initializes the packet header.
+
+ The number segments.
+ The number label peaks.
+ The number centroid data.
+ The number noise packets.
+ The total profile points.
+ The total sub segments.
+ if set to true [has widths].
+ Default feature word.
+ Size of profile sub-segment struct - FT Profile is 12 and LT Profile is 8
+ The packet header struct object.
+
+
+
+ Extracts the labels information.
+
+ The label peaks.
+ if set to true [has widths].
+ The features.
+ The widths.
+
+
+
+ Gets the coefficient values.
+
+ The scan event.
+ The coefficient value 0.
+ The coefficient value 1.
+ The coefficient value 2.
+ The coefficient value 3.
+
+
+
+ Gets the label peaks.
+
+ The centroid data.
+ if set to true [has widths].
+ The label peaks.
+
+
+
+ The method reads the centroid "blob" and transforms them to objects.
+
+
+
+
+ create default flag set, from the packed bits.
+
+
+ The default flags (bit fields).
+
+
+ A DataPeak which has been initialized with the default peak flags
+
+
+
+
+ apply flags to peak.
+
+
+ The feature.
+
+
+ The limit.
+
+
+ The centroid peaks.
+
+
+ The refs found so far.
+
+
+ The is ref peak.
+
+
+ The (updated) number of reference peaks found
+
+
+
+
+ The method checks the flags in the default
+ feature word to determine if we should
+ continue processing label data.
+
+
+ True to continue processing.
+
+
+
+
+ The method converts a set of centroid structures to label peaks.
+
+
+ The centroid structures count.
+
+
+ The blob index.
+
+
+ The label peaks.
+
+ index for this segment in returned data
+
+ The default charge state.
+
+
+ The default flags.
+
+
+ The resolution index.
+
+
+ The .
+
+
+
+
+ The method converts a set of centroid structures to label peaks.
+
+
+ The centroid structures count.
+
+
+ The blob index.
+
+
+ The label peaks.
+
+ index for this segment in returned data
+
+ The default charge state.
+
+
+ The default flags.
+
+
+ The resolution index.
+
+
+ The .
+
+
+
+
+ The expand label peaks - the label peak structure is actually the
+ Centroid structure. If this is a profile packet type, the centroid data
+ peaks are stored in the object.
+
+
+
+
+ The method sets flags.
+
+
+ The feature.
+
+
+ The flags.
+
+
+ True if the feature is a reference or exception.
+
+
+
+
+ The method sets the flags and the charge state.
+
+
+ The feature.
+
+
+ The flags.
+
+
+ nThe charge state.
+
+
+
+
+ The FT centroid packet.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ Index to the scan
+ Raw file revision
+ The include ref peaks.
+ True if noise and baseline data is required
+
+
+
+ The FTMS profile packet.
+
+
+
+
+ The half zero packets.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The viewer.
+
+ Index to scam
+
+ The mass calibrators.
+
+ Raw file version
+
+ The include ref peaks.
+
+ True if noise and baseline data is required
+
+ Thrown if not enough mass calibrators was passed.
+
+
+
+
+ The create data peak delegate is used to convert from un-calibrated data
+ to calibrated mass/intensity values
+
+
+ The mass offset.
+
+ The frequency
+ The mass converted peak
+
+
+
+ Gets the segment peaks.
+
+
+
+
+ Compresses the FT Profiles.
+ The following algorithm assumes that:
+ - The packet buffer is not compressed (ALL packets in the DataPeak buffer match one in the packet buffer).
+ - Each segment contains exactly one sub segment which in turn contains all data points of this segment.
+ - The position of a DataPeak and a packet share the same unit (mass), i.e. no conversion (e.g. mass to frequency) is necessary.
+ - The low mass of the segment's mass range is == the base abscissa of the segment.
+ - The position of the first packet in the mass range == base abscissa + 1 * abscissa spacing.
+
+ This is true with Endeavor spectra (up to now, at least) but not with spectra from
+ Jupiter (does compression, stores frequencies, multiple sub segments).
+ Therefore this function must be re-implemented in the FT_PROF packet class.
+
+ The mass spec instrument data.
+ The compressed packet in byte array.
+ Compress Profile
+
+
+
+ add zeros with correction for out of order mass
+
+
+ The calibrated mass delegate.
+
+
+ The base abscissa.
+
+
+ The abscissa spacing.
+
+
+ The data peaks.
+
+
+ The start packet index.
+
+
+ The mass offset.
+
+
+ The min mass.
+
+
+ The frequency.
+
+
+ The end packet.
+
+
+ The mass of the last zero
+
+
+
+
+ Computes the profile points.
+
+ The sub segments counter.
+ The comp buffer profile sub segments.
+ The segment's sub segment profile points counter.
+ The profile segment information.
+ The frequencies.
+ The profile sub segments.
+ Start index of the profile packet.
+ The intensities.
+ The comp profile points.
+
+
+
+ Copies the FT profile to packet buffer.
+
+ The total profile points.
+ The sub segments counter.
+ The comp buffer profile sub segments.
+ The comp profile points.
+ The profile segment information.
+ The bytes.
+ The data offset.
+ The number of bytes copied to the packet buffer.
+
+
+
+ Ensure that as zero pad values are added, the mass increases.
+
+ Minimum mass: The Mass of last accepted peak, or zero
+ New value for minimum mass
+
+
+
+ Initializes the profile segment information.
+
+ The segment's sub segment profile points counter.
+ Index of the segment.
+ The profile segment information.
+ The number sub segments.
+ The frequencies.
+
+
+
+ The method adds zero packets.
+
+
+ Delegate to create a mass from the peak index, using calibration data
+
+
+ The base abscissa (start frequency)
+
+
+ The abscissa (frequency) spacing between samples
+
+
+ The data peaks.
+
+
+ The start packet index.
+
+
+ The end packet index.
+
+ Mass offset of the profile segment
+
+ minimum valid mass, so that masses are not added out of order
+
+ The is appending.
+
+
+ The .
+
+
+
+
+ Creates the data peak.
+
+ The mass offset.
+ The frequency
+ The (frequency to mass) converted peak
+
+
+
+ Creates the data peak without coefficient 3.
+
+ The mass offset.
+ The frequency
+ The (frequency to mass) converted peak
+
+
+
+ Expand the profile blob.
+
+
+
+
+ flag reference peaks with "reference" or "exception", where the profile is part of
+ an identified reference.
+
+
+ The data peaks.
+
+
+ The reference peak.
+
+
+ The start peak index.
+
+
+ The number of data peaks.
+
+
+
+
+ The method processes the sub-segments.
+
+ Delegate to create a peak
+
+ The segment.
+
+
+ The blob index.
+
+
+ The segment index.
+
+
+ The data peaks.
+
+
+ The reference peak index.
+
+ Minimum mass (or last mass processed) to prevent out of order data
+
+ Item1: The mass offset of the last sub-segment. Item2: The profile index after the last added value
+ Item3 the updated minMass
+ Item4: the updated reference peak index
+
+
+
+
+ The Linear Trap centroid packet.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The viewer.
+
+
+ The index.
+
+
+ The file revision.
+
+
+ The include ref peaks.
+
+
+ The packet scan data features.
+
+
+
+
+ Gets the segmented peaks. retrieve a DataPeak from the profile packet buffer.
+
+
+
+
+ The Linear Trap profile packet.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ index to scan whose data is needed
+ Raw file version
+ The include ref peaks.
+ True if noise and baseline data is required
+
+
+
+ Gets the segmented peaks. retrieve a DataPeak from the profile packet buffer.
+
+
+
+
+ Copies the lt profile to packet buffer.
+
+ The total profile points.
+ The segmented profile points counter.
+ The profile segment information.
+ The bytes.
+ The data offset.
+ The comp profile sub segments number words.
+ The comp profile points.
+ The number of bytes copied to the packet buffer.
+
+
+
+ Compresses the LT Profiles.
+ The following algorithm assumes that:
+ - The packet buffer is not compressed (ALL packets in the DataPeak buffer match one in the packet buffer).
+ - Each segment contains exactly one sub segment which in turn contains all data points of this segment.
+ - The position of a DataPeak and a packet share the same unit (mass), i.e. no conversion (e.g. mass to frequency) is necessary.
+ - The low mass of the segment's mass range is == the base abscissa of the segment.
+ - The position of the first packet in the mass range == base abscissa + 1 * abscissa spacing.
+
+ This is true with Endeavor spectra (up to now, at least) but not with spectra from
+ Jupiter (does compression, stores frequencies, multiple sub segments).
+ Therefore this function must be re-implemented in the LT_PROF packet class.
+
+ The mass spec instrument data.
+ The compressed packet in byte array.
+ Compress Profile
+
+
+
+ Expands the profile data.
+
+
+
+
+ The profile sub-segment.
+
+
+
+
+ Gets or sets the profile points.
+
+
+
+
+ Gets or sets the mass offset.
+
+
+
+
+ Initializes a new instance of the class.
+ Create a sub-segment from data read from raw file
+
+
+ Number of profile points
+
+
+ Segment mass offset
+
+
+
+
+ The packet constants.
+
+
+
+
+ The number of zero intensity packets to restore depends
+ on the smoothing limits in Xcalibur (currently 15).
+
+
+
+
+ Helper functions for peak packet types, such as:
+ identifying profile versus centroid scans
+ testing if label data exists
+
+
+
+
+ Helper functions for identifying profile versus centroid scans
+
+ Type of the packet.
+ Additional flags about the packet type
+ True if this is a centroid scan
+
+
+
+ Determines whether [has label peaks].
+
+ Type of the packet.
+ true if the scan has label peaks
+
+
+
+ The channel UV packet. (one or more channels of UV data)
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ The file revision.
+ Index of the scan.
+ The channel number.
+
+
+
+ Gets the index.
+
+
+ The index.
+
+
+
+
+ Gets the segmented peaks.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Expands the profile BLOB.
+
+ The index.
+ The data for the scan
+
+
+
+ The MS analog packet.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ The file revision.
+ Index of the scan.
+ The channel number.
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Gets the segmented peaks.
+
+
+
+
+ Gets the scan index.
+
+
+
+
+ Expands the profile BLOB.
+
+ The short wave.
+ The long wave.
+ Data for the scan
+
+
+
+ Profile spectrum packet
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The viewer.
+
+
+ The scan index.
+
+
+ The file revision.
+
+
+
+
+ Gets the scan index.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Expand the profile blob.
+
+
+ The expanded data
+
+
+
+
+ The profile spectrum packet type 2.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ Index to scan who's data is needed
+ The file revision.
+
+
+
+ Gets the scan index.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Expands the profile BLOB.
+
+ The profile data
+
+
+
+ The profile spectrum packet 3.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ Index to scan whose data is needed
+ The file revision.
+
+
+
+ Gets the scan index.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Expands the profile BLOB.
+
+ The expanded data
+
+
+
+ The segment data.
+
+
+
+
+ Gets or sets the data peaks.
+
+
+
+
+ Gets or sets the mass range.
+
+
+
+
+ find peak position.
+
+
+ The mass.
+
+
+ The index of the mass
+
+
+
+
+ Low resolution data never has noise peaks, label data etc.
+ Handle this in a base object
+
+
+
+
+ Gets or sets the lazy segment peaks.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the label peaks.
+
+
+
+
+ Gets the debug data for a scan.
+ Always empty for simple packets
+
+
+
+
+ Gets the debug data for a scan.
+ Always empty for simple packets
+
+
+
+
+ Gets the noise and baselines.
+
+
+
+
+ Gets the segmented peaks.
+
+
+
+
+ The standard accuracy packet.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ Index of the scan.
+ The file revision.
+ if set to true [include reference peaks].
+
+
+
+ Gets the scan index.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Converts the specified number index structure.
+
+ The number index structure.
+ The size of high resolution spectrum type structure.
+ mass calibration data
+ The profile blob.
+ Data for the scan
+
+
+
+ Expands the profile blob.
+
+ The low mass.
+ The high mass.
+ The converted data
+
+
+
+ The xcalibur display (peak labeling) flags.
+
+
+
+
+ label with retention time.
+
+
+
+
+ label with scan number.
+
+
+
+
+ The label with area.
+
+
+
+
+ label with base peak.
+
+
+
+
+ label with height.
+
+
+
+
+ label with internal standard response.
+
+
+
+
+ label with signal to noise.
+
+
+
+
+ label with saturation.
+
+
+
+
+ label should be boxed.
+
+
+
+
+ label should be rotated.
+
+
+
+
+ The peak display options (as used in PMD files).
+
+
+
+
+ The peak options info.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Gets a value which extends (display) width so that peak is shown "not at edge"
+
+
+
+
+ Gets a value indicating whether to label peaks with RT
+
+
+
+
+ Gets a value indicating whether to label peaks with scan number
+
+
+
+
+ Gets a value indicating whether to label peaks with area
+
+
+
+
+ Gets a value indicating whether to label peaks with base peak
+
+
+
+
+ Gets a value indicating whether to label peaks with height
+
+
+
+
+ Gets a value indicating whether to label peaks with internal standard response
+
+
+
+
+ Gets a value indicating whether to label peaks with signal to noise
+
+
+
+
+ Gets a value indicating whether to label peaks with saturation
+
+
+
+
+ Gets a value indicating whether to rotate peak label text
+
+
+
+
+ Gets a value indicating whether to draw a box around peak labels
+
+
+
+
+ Defines the peak purity settings, as used in an Xcalibur PMD.
+
+
+
+
+ The peak purity info.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Load (from file)
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The number of bytes loaded
+
+
+
+
+ Gets the % of the detected baseline for which we want to compute PeakPurity
+
+
+
+
+ Gets a value indicating whether we want to compute Peak Purity
+
+
+
+
+ Gets a value indicating whether we want to use
+ the enclosed wavelength range, not the total scan
+
+
+
+
+ Gets the high limit of the scan over which to compute
+
+
+
+
+ Gets the low limit of the scan over which to compute
+
+
+
+
+ Gets the max of a scan must be greater than this to be included
+
+
+
+
+ Class to import PMD file Options
+
+
+
+
+ Gets a value indicating whether the standards are internal or external.
+
+
+
+
+ Gets a value indicating whether calibration is performed on concentration or amount
+
+
+
+
+ Gets a value determining how void time is calculated.
+
+
+
+
+ Gets a value determining whether amounts or concentrations are reported.
+
+
+
+
+ Gets a value determining how chromatography was performed.
+
+
+
+
+ Gets a value indicating whether outliers (on a cal curve) should be rejected.
+
+
+
+
+ Gets the added time of void volume, where void time is set to "Value"
+
+
+
+
+ Gets the permitted % deviation from an expected standard amount.
+
+
+
+
+ Gets the search window for the expected time of a peak.
+
+
+
+
+ Gets the minimum number of expected scans in a baseline
+ Genesis: MinScansInBaseline
+
+
+
+
+ Gets a scale factor for the noise level in chromatographic peaks.
+
+
+
+
+ Gets the limit on baseline noise
+
+
+
+
+ Gets the background width (scans)
+
+
+
+
+ Gets the baseline noise rejection factor
+
+
+
+
+ Gets a value indicating whether the "alternate Percent RDS calculation" should be performed.
+
+
+
+
+ Gets a value indicating whether there was a "manual change" to calibration levels.
+
+
+
+
+ Read the table of dilution levels
+
+ The dilution levels
+
+
+
+ Gets a copy of the dilution target component factors table
+
+ The dilution target component factors table
+
+
+
+ Gets the low intensity cutoff
+
+
+
+
+ The options version 1.
+
+
+
+
+ The options version 12.
+
+
+
+
+ The options.
+
+
+
+
+ The (calibration) level info.
+
+
+
+
+ Gets or sets the base amount.
+
+
+
+
+ Gets or sets the test percent.
+
+
+
+
+ Gets or sets the level name
+
+
+
+
+ The target component factor.
+
+
+
+
+ Gets or sets the base amount.
+
+
+
+
+ Gets or sets the target component name.
+
+
+
+
+ Load (from file)
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The number of bytes loaded.
+
+
+
+
+ Class to import PMD file "standard reports"
+
+
+
+
+ The standard report info version 1.
+
+
+
+
+ Current structure for standard report data
+
+
+
+
+ Load (from file)
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Gets a value indicating whether the Analysis Unknown report is needed
+
+
+
+
+ Gets a value indicating whether the Component Unknown report is needed
+
+
+
+
+ Gets a value indicating whether the Method Unknown report is needed
+
+
+
+
+ Gets a value indicating whether the Log Unknown report is needed
+
+
+
+
+ Gets a value indicating whether the Analysis Calibration report is needed
+
+
+
+
+ Gets a value indicating whether the Component Calibration report is needed
+
+
+
+
+ Gets a value indicating whether the Method Calibration report is needed
+
+
+
+
+ Gets a value indicating whether the Log Calibration report is needed
+
+
+
+
+ Gets a value indicating whether the Analysis QC report is needed
+
+
+
+
+ Gets a value indicating whether the Component QC report is needed
+
+
+
+
+ Gets a value indicating whether the Method QC report is needed
+
+
+
+
+ Gets a value indicating whether the Log QC report is needed
+
+
+
+
+ Gets a value indicating whether the Analysis Other report is needed
+
+
+
+
+ Gets a value indicating whether the Component Other report is needed
+
+
+
+
+ Gets a value indicating whether the Method Other report is needed
+
+
+
+
+ Gets a value indicating whether the Log Other report is needed
+
+
+
+
+ Gets a value indicating whether the Sample Information report is needed
+
+
+
+
+ Gets a value indicating whether the Run Information report is needed
+
+
+
+
+ Gets a value indicating whether the Chromatogram report is needed
+
+
+
+
+ Gets a value indicating whether the PeakComponent report is needed
+
+
+
+
+ Gets a value indicating whether the Tune report is needed
+
+
+
+
+ Gets a value indicating whether the Experiment report is needed
+
+
+
+
+ Gets a value indicating whether the Processing report is needed
+
+
+
+
+ Gets a value indicating whether the Status report is needed
+
+
+
+
+ Gets a value indicating whether the Error report is needed
+
+
+
+
+ Gets a value indicating whether the Audit report is needed
+
+
+
+
+ Gets a value indicating whether the Open Access report is needed
+
+
+
+
+ Gets a value indicating which of the two types of chromatogram analysis report is needed.
+
+
+
+
+ Gets a value indicating whether the Survey report is needed
+
+
+
+
+ Gets a value indicating whether to include a signature line in reports
+
+
+
+
+ Represent a "program" to be called (as part of reporting) from an Xcalibur PMD file
+
+
+
+
+ The program info.
+
+
+
+
+ Load data (from file).
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Gets the name of the program
+
+
+
+
+ Gets parameters to the program
+
+
+
+
+ Gets the action of this program (such as run exe, or export)
+
+
+
+
+ Gets the file save format of the export
+
+
+
+
+ Gets a value indicating whether report is enabled
+
+
+
+
+ Gets a value indicating whether report is enabled for standards
+
+
+
+
+ Gets a value indicating whether report is enabled for QCs
+
+
+
+
+ Gets a value indicating whether report is enabled for Unknowns
+
+
+
+
+ Gets a value indicating whether report is enabled for Other sample types
+
+
+
+
+ Gets a value indicating whether to synchronize this action.
+ If false, other programs may be run in parallel with this.
+
+
+
+
+ The qualitative peak detection settings from a processing method.
+
+
+
+
+ The peak detection info version 1.
+
+
+
+
+ The peak detection info version 12.
+
+
+
+
+ The peak detection info version 34.
+
+
+
+
+ The peak detection info version 42.
+
+
+
+
+ The peak detection info version 43.
+
+
+
+
+ The peak detection info version 44.
+
+
+
+
+ The peak detection info.
+
+
+
+
+ The falcon event. Structure for a single event
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the initial events.
+
+
+ The events
+
+
+
+
+ Gets the component name
+
+
+
+
+ Gets or sets the mass ranges info.
+
+
+
+
+ Gets the scan filter, as an interface.
+ This same data is available in string form
+ in the ChromatogramSettings property
+
+
+
+
+ Gets or sets the mass ranges 2.
+
+
+
+
+ Gets or sets the falcon events.
+
+
+
+
+ Gets a value indicating whether peak detection is enabled.
+ Note: This property is not used in product "Xcalibur"
+
+
+
+
+ Gets the number of masses required to maximize
+
+
+
+
+ Gets the percentage of masses which must maximize
+
+
+
+
+ Gets the minimum peak separation (time) for Mass-Maximizing detection
+
+
+
+
+ Gets the number of scans in the max-masses window
+
+
+
+
+ Gets the box filter width for Mass-Maximizing detection
+
+
+
+
+ Gets the number of scans averaged for a background
+
+
+
+
+ Gets the number of smoothing points, for background analysis
+ This setting is common to all integrators
+
+
+
+
+ Gets the width of display window for the peak (in seconds)
+ This is for presentation only
+
+
+
+
+ Gets a value indicating whether peak limits are enabled
+
+
+
+
+ Gets a value indicating whether to Select top peak by area or height
+
+
+
+
+ Gets the number of "top peaks" to select
+
+
+
+
+ Gets a value indicating whether "relative peak height threshold" is enabled
+
+
+
+
+ Gets the percent of the largest peak, which is used for filtering
+ peak detection results, when "IsRelativePeakEnabled"
+
+
+
+
+ Gets a the "percent of component peak" (limit)
+ Only valid when PeakPercent is set to PercentOfComponentPeak
+
+
+
+
+ Gets a value indicating how peak percentages are specified
+ (unused in product Xcalibur)
+
+
+
+
+ Gets the Algorithm to use (Genesis, ICIS etc.)
+
+
+
+
+ Gets or sets the mass options.
+
+
+
+
+ Gets Number of decimals used in defining mass values
+
+
+
+
+ Gets tolerance used for mass
+
+
+
+
+ Gets units of mass tolerance
+
+
+
+
+ convert LCQ tolerance units.
+
+
+ The to convert.
+
+
+ The converted units
+
+
+
+
+ Gets the (Avalon) integrator events
+
+
+
+
+ Gets the number of scans in the baseline window.
+ Each scan is checked to see if it should be considered a baseline scan.
+ This is determined by looking at a number of scans (BaselineWindow) before
+ and after the a data point. If it is the lowest point in the group it will be
+ marked as a "baseline" point.
+ Range: 1 - 500
+ Default: 40
+
+
+
+
+ Gets the area noise factor.
+
+
+
+
+ Gets the peak noise factor.
+
+
+
+
+ Gets a value indicating whether to constrain the peak width of a detected peak (remove tailing)
+ width is then restricted by specifying a peak height threshold and a tailing factor.
+
+
+
+
+ Gets the percent of the total peak height (100%) that a signal needs to be above the baseline
+ before integration is turned on or off.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.0 to 100.0%.
+
+
+
+
+ Gets the tailing factor.
+
+
+
+
+ Gets the minimum peak width.
+
+
+
+
+ Gets the multiplet resolution.
+
+
+
+
+ Gets the area scan window.
+
+
+
+
+ Gets the area tail extension.
+
+
+
+
+ Gets a value indicating whether noise is calculated using an RMS method
+
+
+
+
+ Gets a value which indicates how the ICIS peak detector determines which signals are noise.
+ The selected points can determine a noise level, or be fed into an RMS calculator,
+ depending on the RMS setting.
+
+
+
+
+ Gets the settings for the ICIS integrator
+
+
+
+
+ Gets a value indicating whether a peak's width (the tail) must be constrained.
+ This flag allows you to constrain the peak width of a detected peak (remove tailing)
+ width is then restricted by specifying a peak height threshold and a tailing factor.
+
+
+
+
+ Gets the width of a typical peak in seconds.
+ This controls the minimum width that a peak is expected to have
+ if valley detection is enabled.
+ Integrator converts this to expectedPeakHalfWidth (minutes) by dividing by 120.
+ With valley detection enabled,
+ any valley points nearer than the expectedPeakHalfWidth (which is [expected width]/2)
+ to the top of the peak are ignored.
+ If a valley point is found outside the expected peak width,
+ Genesis terminates the peak at that point.
+ Genesis always terminates a peak when the signal reaches the baseline,
+ independent of the value set for the expectedPeakHalfWidth.
+
+
+
+
+ Gets a constraint on peak height.
+ The percent of the total peak height (100%) that a signal needs to be above the baseline
+ before integration is turned on or off.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.0 to 100.0%.
+
+
+
+
+ Gets the minimum acceptable signal to noise of a peak.
+ Genesis ignores all chromatogram peaks that have signal-to-noise values
+ that are less than the S/N Threshold value
+
+
+
+
+ Gets the peak tailing factor.
+ This controls how Genesis integrates the tail of a peak.
+ This factor is the maximum ratio of the trailing edge to the leading side of a constrained peak.
+ This applies only when the is true.
+ The valid range is 0.5 through 9.0.
+
+
+
+
+ Gets a value indicating whether valley detection is performed.
+ This parameter must be set to true when performing base to base integration
+
+
+
+
+ Gets the Peak Signal ToNoise Ratio Cutoff.
+ The peak edge is set to values below this defined S/N.
+ This test assumes an edge of a peak is found when the baseline adjusted height of the edge is less than
+ the ratio of the baseline adjusted apex height and the peak S/N cutoff ratio.
+ If the S/N at the apex is 500 and the peak S/N cutoff value is 200,
+ Genesis defines the right and left edges of the peak when the S/N reaches a value less than 200.
+ Range: 50.0 to 10000.0.
+ Technical equation:if height < (1/PeakSignalToNoiseRatioCutoff)*height(apex) => valley here
+
+
+
+
+ Gets the multiplier of the valley bottom
+ that the peak trace can rise above a baseline (before or after the peak).
+ If the trace exceeds ValleyThreshold,
+ Genesis applies valley detection peak integration criteria.
+ This method drops a vertical line from the apex of the valley between unresolved
+ peaks to the baseline.
+ The intersection of the vertical line and the baseline defines the end of the first
+ peak and the beginning of the second peak.
+ This test is applied to both the left and right edges of the peak.
+ The ValleyThreshold criteria is useful for integrating peaks with long tails.
+ Useful range: 1.001 to 1.5
+ Note: Appears on product UI converted from factor to percentage as "Rise percentage".
+ For example: 1.1 = 10%
+ Code tests similar to the following:
+ if ((currentSignal-baseline) > ((valleyBottom-baseline) * ValleyThreshold))
+ {
+ side of peak has bottomed out, and risen above minimum
+ }
+
+
+
+
+
+ Gets or the S/N range is 1.0 to 100.0. for valley detection.
+ Technical equation:height(here +/- VALLEY_WIDTH) > ValleyDepth*SNR+height(here) => valley here
+
+
+
+
+ Gets a value indicating whether to enable RMS noise calculation.
+ If not set, noise is calculated peak to peak.
+ It is set by default.
+
+
+
+
+ Gets a noise limit, where the code stops attempting to find a better baseline.
+ controls how the baseline is drawn in the noise data.
+ The higher the baseline noise tolerance value,
+ the higher the baseline is drawn through the noise data.
+ The valid range is 0.0 to 1.0.
+
+
+
+
+ Gets the minimum number of scans that Genesis uses to calculate a baseline.
+ A larger number includes more data in determining an averaged baseline.
+ The valid range is 2 to 100.
+
+
+
+
+ Gets a factor which controls the width of the RMS noise band above and below the peak detection baseline
+ and is applied to the raw RMS noise values to raise the effective RMS noise during peak detection.
+ The left and right peak boundaries are assigned above the noise and, therefore,
+ closer to the peak apex value in minutes.
+ This action effectively raises the peak integration baseline above the RMS noise level.
+ Range: 0.1 to 10.0.
+ Default: 2.0.
+
+
+
+
+ Gets the number of minutes between background scan recalculations.
+ Baseline is refitted each time this interval elapses.
+
+
+
+
+ Gets a limit for the "baseline signal to noise ratio".
+ A peak is considered ended if the following condition is met:
+ height <= (BaseNoise * BaseSignalToNoiseRatio))
+ Where BaseNoise is the calculated noise on the fitted baseline,
+ and height is the height above baseline.
+
+
+
+
+ Gets the minimum acceptable percentage of the largest peak.
+ Do not return peaks which have a height less than this % of the highest peak above baseline.
+
+
+
+
+ Gets a value indicating whether filtering of peaks is by relative signal height
+
+
+
+
+ Gets or sets the options.
+
+
+
+
+ Gets the settings for the Genesis integrator
+ Note: This property is under review.
+ May return an alternative interface
+
+
+
+
+ Gets the settings for creating a chromatogram
+
+
+
+
+ Gets the scan filter.
+ This determines which scans are included in the chromatogram.
+
+
+
+
+ Gets the chromatogram settings.
+ This defines how data for a chromatogram point is constructed from a scan.
+
+
+
+
+ Convert mass ranges.
+
+
+ The mass ranges info.
+
+
+ The converted ranges.
+
+
+
+
+ Gets the chromatogram settings
+ When there is a trace operator set,
+ This defines how data for a chromatogram point is constructed from a scan for the chromatogram
+ to be added or subtracted.
+
+
+
+
+ Gets the device type.
+ This defines which data stream within the raw file is used.
+
+
+
+
+ Gets the trace operator.
+ If the operator is not "None" then a second chromatogram can be added to or subtracted from the first.
+
+
+
+
+ Gets or sets the filter string.
+
+
+
+
+ Gets the manual noise range settings
+
+
+
+
+ Gets a value indicating whether manual noise should be used
+
+
+
+
+ Gets the manual noise region (time range in minutes)
+
+
+
+
+ Gets settings for the maximizing masses algorithm
+ Note: This algorithm is not used by product "Xcalibur"
+
+
+
+
+ Gets settings to limit (filter) the list of returned peaks
+ after integration
+
+
+
+
+ Gets the time range, over which qualitative processing is done.
+ Only peaks detected within this range are processed further
+ (for example, library searched)
+
+
+
+
+ Gets the manual noise region (intensity range)
+ These values are not used by Xcalibur
+
+
+
+
+
+
+
+ read from file, and give read access to all settings in "component" in a PMD file.
+ Organizes the many fields into groups (interfaces)
+
+
+
+
+ The xcalibur component type.
+
+
+
+
+ All types.
+
+
+
+
+ Target compound.
+
+
+
+
+ Internal standard.
+
+
+
+
+ Undefined. Component not defined
+
+
+
+
+ The retention time reference.
+
+
+
+
+ Surrogate component.
+
+
+
+
+ The response index. Determines if peak height or area is
+ used for the peak's response.
+
+
+
+
+ Use area.
+
+
+
+
+ Use height.
+
+
+
+
+ The origin index. Defines how calibration curve origin is used.
+
+
+
+
+ Ignore the origin.
+
+
+
+
+ Force through origin.
+
+
+
+
+ Include (extra point) at origin.
+
+
+
+
+ The calibration curve regression index.
+
+
+
+
+ Use first order fit.
+
+
+
+
+ Use second order fit.
+
+
+
+
+ Use first order log-log fit.
+
+
+
+
+ Use second order log-log fit.
+
+
+
+
+ Use average response factor fit.
+
+
+
+
+ Use point to point fit.
+
+
+
+
+ Use cubic spline fit.
+
+
+
+
+ locally weighted regression
+
+
+
+
+ The component info.
+
+
+
+
+ The component info version 5.
+
+
+
+
+ The component info version 4.
+
+
+
+
+ The component info version 3.
+
+
+
+
+ The component info version 2.
+
+
+
+
+ The component info version 1.
+
+
+
+
+ The mass intensity pair.
+
+
+
+
+ Gets the (Avalon) integrator events
+
+
+
+
+ Gets mass tolerance for this component
+
+
+
+
+ load from file
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The offset into view after load
+
+ Method using Surrogate
+
+
+
+
+ read calibration and qc levels.
+
+
+ The viewer.
+
+
+ The file revision.
+
+
+ The start position.
+
+
+ The position after reading
+
+
+
+
+ Gets or sets the falcon events.
+
+
+
+
+ Gets or sets the internal standard units.
+
+
+
+
+ Gets the retention time reference component.
+ Adjust the retention time, using this component as a reference
+
+
+
+
+ Gets the name of this component
+
+
+
+
+ Gets or sets the filter string.
+
+
+
+
+ Gets or sets the scan filter.
+
+
+
+
+ Gets a value indicating whether manual noise should be used
+
+
+
+
+ Gets the manual noise region (time range in minutes)
+
+
+
+
+ Gets the manual noise region (intensity range)
+ These values are not used by Xcalibur
+
+
+
+
+ Gets the number of scans in the baseline window.
+ Each scan is checked to see if it should be considered a baseline scan.
+ This is determined by looking at a number of scans (BaselineWindow) before
+ and after the a data point. If it is the lowest point in the group it will be
+ marked as a "baseline" point.
+ Range: 1 - 500
+ Default: 40
+
+
+
+
+ Gets a noise level multiplier.
+ This determines the peak edge after the location of the possible peak,
+ allowing the peak to narrow or broaden without affecting the baseline.
+ Range: 1 - 500
+ Default multiplier: 5
+
+
+
+
+ Gets a noise level multiplier (a minimum S/N ratio).
+ This determines the potential peak signal threshold.
+ Range: 1 - 1000
+ Default multiplier: 10
+
+
+
+
+ Gets a value indicating whether to constrain the peak width of a detected peak (remove tailing)
+ width is then restricted by specifying a peak height threshold and a tailing factor.
+
+
+
+
+ Gets the percent of the total peak height (100%) that a signal needs to be above the baseline
+ before integration is turned on or off.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.0 to 100.0%.
+
+
+
+
+ Gets the Tailing Factor.
+ This controls how Genesis integrates the tail of a peak.
+ This factor is the maximum ratio of the trailing edge to the leading side of a constrained peak.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.5 through 9.0.
+
+
+
+
+ Gets the minimum number of scans required in a peak.
+ Range: 0 to 100.
+ Default: 3.
+
+
+
+
+ Gets the minimum separation in scans between the apexes of two potential peaks.
+ This is a criterion to determine if two peaks are resolved.
+ Enter a larger number in a noisy environment when the signal is bouncing around.
+ Range: 1 to 500.
+ Default: 10 scans.
+
+
+
+
+ Gets the number of scans on each side of the peak apex to be allowed.
+ Range: 0 to 100.
+ Default: 0 scans.
+ 0 specifies that all scans from peak-start to peak-end are to be included in the area integration.
+
+
+
+
+ Gets the number of scans past the peak endpoint to use in averaging the intensity.
+ Range: 0 to 100.
+ Default: 5 scans.
+
+
+
+
+ Gets a value indicating whether noise is calculated using an RMS method
+
+
+
+
+ Gets an value which indicates how the ICIS peak detector determines which signals are noise.
+ The selected points can determine a noise level, or be fed into an RMS calculator,
+ depending on the RMS setting.
+
+
+
+
+ Gets settings for the ICIS peak integrator
+
+
+
+
+ Gets a value indicating whether a peak's width (the tail) must be constrained.
+ This flag allows you to constrain the peak width of a detected peak (remove tailing)
+ width is then restricted by specifying a peak height threshold and a tailing factor.
+
+
+
+
+ Gets the width of a typical peak in seconds.
+ This controls the minimum width that a peak is expected to have
+ if valley detection is enabled.
+ Integrator converts this to expectedPeakHalfWidth (minutes) by dividing by 120.
+ With valley detection enabled,
+ any valley points nearer than the expectedPeakHalfWidth (which is [expected width]/2)
+ to the top of the peak are ignored.
+ If a valley point is found outside the expected peak width,
+ Genesis terminates the peak at that point.
+ Genesis always terminates a peak when the signal reaches the baseline,
+ independent of the value set for the expectedPeakHalfWidth.
+
+
+
+
+ Gets a constraint on peak height.
+ The percent of the total peak height (100%) that a signal needs to be above the baseline
+ before integration is turned on or off.
+ This applies only when the ConstrainPeak is true.
+ The valid range is 0.0 to 100.0%.
+
+
+
+
+ Gets the minimum acceptable signal to noise of a peak.
+ Genesis ignores all chromatogram peaks that have signal-to-noise values
+ that are less than the S/N Threshold value
+
+
+
+
+ Gets the peak tailing factor.
+ This controls how Genesis integrates the tail of a peak.
+ This factor is the maximum ratio of the trailing edge to the leading side of a constrained peak.
+ This applies only when the is true.
+ The valid range is 0.5 through 9.0.
+
+
+
+
+ Gets a value indicating whether valley detection is performed.
+ This parameter must be set to true when performing base to base integration
+
+
+
+
+ Gets the Peak Signal ToNoise Ratio Cutoff.
+ The peak edge is set to values below this defined S/N.
+ This test assumes an edge of a peak is found when the baseline adjusted height of the edge is less than
+ the ratio of the baseline adjusted apex height and the peak S/N cutoff ratio.
+ If the S/N at the apex is 500 and the peak S/N cutoff value is 200,
+ Genesis defines the right and left edges of the peak when the S/N reaches a value less than 200.
+ Range: 50.0 to 10000.0.
+ Technical equation:if height < (1/PeakSignalToNoiseRatioCutoff)*height(apex) => valley here
+
+
+
+
+ Gets the multiplier of the valley bottom
+ that the peak trace can rise above a baseline (before or after the peak).
+ If the trace exceeds ValleyThreshold,
+ Genesis applies valley detection peak integration criteria.
+ This method drops a vertical line from the apex of the valley between unresolved
+ peaks to the baseline.
+ The intersection of the vertical line and the baseline defines the end of the first
+ peak and the beginning of the second peak.
+ This test is applied to both the left and right edges of the peak.
+ The ValleyThreshold criteria is useful for integrating peaks with long tails.
+ Useful range: 1.001 to 1.5
+ Note: Appears on product UI converted from factor to percentage as "Rise percentage".
+ For example: 1.1 = 10%
+ Code tests similar to the following:
+ if ((currentSignal-baseline) > ((valleyBottom-baseline) * ValleyThreshold))
+ {
+ side of peak has bottomed out, and risen above minimum
+ }
+
+
+
+
+
+ Gets or the S/N range is 1.0 to 100.0. for valley detection.
+ Technical equation:height(here +/- VALLEY_WIDTH) > ValleyDepth*SNR+height(here) => valley here
+
+
+
+
+ Gets a value indicating whether to enable RMS noise calculation.
+ If not set, noise is calculated peak to peak.
+ It is set by default.
+
+
+
+
+ Gets a noise limit, where the code stops attempting to find a better baseline.
+ controls how the baseline is drawn in the noise data.
+ The higher the baseline noise tolerance value,
+ the higher the baseline is drawn through the noise data.
+ The valid range is 0.0 to 1.0.
+
+
+
+
+ Gets the minimum number of scans that Genesis uses to calculate a baseline.
+ A larger number includes more data in determining an averaged baseline.
+ The valid range is 2 to 100.
+
+
+
+
+ Gets a factor which controls the width of the RMS noise band above and below the peak detection baseline
+ and is applied to the raw RMS noise values to raise the effective RMS noise during peak detection.
+ The left and right peak boundaries are assigned above the noise and, therefore,
+ closer to the peak apex value in minutes.
+ This action effectively raises the peak integration baseline above the RMS noise level.
+ Range: 0.1 to 10.0.
+ Default: 2.0.
+
+
+
+
+ Gets the number of minutes between background scan recalculations.
+ Baseline is refitted each time this interval elapses.
+
+
+
+
+ Gets a limit for the "baseline signal to noise ratio".
+ A peak is considered ended if the following condition is met:
+ height <= (BaseNoise * BaseSignalToNoiseRatio))
+ Where BaseNoise is the calculated noise on the fitted baseline,
+ and height is the height above baseline.
+
+
+
+
+ Gets the minimum acceptable percentage of the largest peak.
+ Do not return peaks which have a height less than this % of the highest peak above baseline.
+
+
+
+
+ Gets a value indicating whether filtering of peaks is by relative signal height
+
+
+
+
+ Gets settings for the genesis peak integrator
+
+
+
+
+ Gets a value indicating whether the retention time should be adjusted based on a reference peak.
+
+
+
+
+ Gets the expected time, as in the method (before any adjustments)
+
+
+
+
+ Gets a value which determine how a single peak is found from the list of
+ returned peaks from integrating the chromatogram.
+ For example: Highest peak in time window.
+
+
+
+
+ Gets the window, centered around the peak, in minutes.
+ The located peak must be within a window of expected +/- width.
+
+
+
+
+ Gets the baseline and noise window.
+ This setting is used to restrict the chromatogram.
+ Only scans within the range "adjusted expected RT" +/- Window are processed.
+ For example: a 1 minute window setting implies 2 minutes of data.
+
+
+
+
+ Gets the settings for finding a peak based on spectral fit
+
+
+
+
+ Gets the signal to noise rejection parameter for peaks
+
+
+
+
+ Gets the forward threshold for find algorithm.
+
+
+
+
+ Gets the match threshold for find algorithm
+
+
+
+
+ Gets the reverse threshold for find algorithm
+
+
+
+
+ Gets or sets the spec points.
+
+
+
+
+ Gets the spec points.
+
+ The spec points.
+
+
+
+ Get a copy of the find spectrum
+
+
+ The spectrum to find
+
+
+
+
+ Gets the scan filter.
+ This determines which scans are included in the chromatogram.
+
+
+
+
+ Gets the chromatogram settings.
+ This defines how data for a chromatogram point is constructed from a scan.
+
+
+
+
+ Gets the chromatogram settings
+ When there is a trace operator set,
+ This defines how data for a chromatogram point is constructed from a scan for the chromatogram
+ to be added or subtracted.
+
+
+
+
+ Convert mass ranges.
+
+
+ The mass ranges info.
+
+
+ The range array.
+
+
+
+
+ Gets the device type.
+ This defines which data stream within the raw file is used.
+
+
+
+
+ Gets the trace operator.
+ If the operator is not "None" then a second chromatogram can be added to or subtracted from the first.
+
+
+
+
+ Gets or sets the mass ranges info.
+
+
+
+
+ Gets or sets the mass ranges info 2.
+
+
+
+
+ Gets or sets the calibration units.
+
+
+
+
+ Gets or sets the internal standard reference.
+
+
+
+
+ Gets or sets the calibration levels.
+
+
+
+
+ Gets or sets the qc levels.
+
+
+
+
+ Gets (custom) keys about this component
+ This is treated as a comment field.
+ Not used for any "built-in" calculations
+ but may be used to annotate reports etc.
+
+
+
+
+ Gets the settings for a manual noise region
+
+
+
+
+ Gets settings for peak location (expected retention time)
+
+
+
+
+ Gets settings for the spectral find algorithm.
+
+
+
+
+ Gets settings for creating the component chromatogram
+
+
+
+
+ Gets component calibration settings (including level tables)
+
+
+
+
+ Gets settings for the system suitability algorithm
+
+
+
+
+ Gets settings for the PDA peak purity algorithm
+
+
+
+
+ Gets the table of calibration levels
+
+
+
+
+ Gets the table of QC levels
+
+
+
+
+ Gets the calibration curve fitting method
+
+
+
+
+ Gets the weighting for calibration curve
+
+
+
+
+ Gets the calibration curve origin mode
+
+
+
+
+ Gets a value which determines how the response should be measured (using either peak height or peak area).
+
+
+
+
+ Gets the Unit for calibration
+
+
+
+
+ Gets the name of the internal standard for this component
+
+
+
+
+ Gets the isotopic contribution of the internal standard to the target compound
+
+
+
+
+ Gets the isotopic contribution of the target compound to the internal standard
+
+
+
+
+ Gets a value indicating whether resolution checks will be performed
+
+
+
+
+ Gets the Resolution Threshold.
+ The threshold value determines if a peak's resolution or ok or not.
+ The default value is 90%.
+ Resolution is defined as the ratio:
+ 100 × V/P
+ where:
+ V = depth of the Valley: the difference in intensity from the chromatogram at the apex of the target peak
+ to the lowest point in the valley between the target peak and a neighboring peak
+ P = Peak height: the height of the target peak, above the peak's baseline
+
+
+
+
+ Gets a value indicating whether peak symmetry checks are to be performed.
+ Symmetry is determined at a specified peak height
+ and is a measure of how even-sided a peak is
+ about a perpendicular dropped from its apex.
+
+
+
+
+ Gets the Peak Height at which symmetry is measured.
+ The default value is 50%. You can enter any value within the range 0% to 100%.
+
+
+
+
+ Gets the Symmetry Threshold.
+ The SOP defined Symmetry Threshold is > 70% at 50% peak height.
+ This represents a realistic practical tolerance for capillary GC data.
+ You can enter any value within the range 0% to 100%.
+ The default value is 80% at 50% peak height.
+ The algorithm determines symmetry at the SymmetryPeakHeight
+ For the purposes of the test, a peak is considered symmetrical if:
+ (Lesser of L and R) × 100 / (Greater of L and R) > Symmetry Threshold %
+ where:
+ L = the distance from the left side of the peak to
+ the perpendicular dropped from the peak apex
+ R = the distance from the right side of the peak to
+ the perpendicular dropped from the peak apex
+ Measurements of L and R are taken from the raw file without smoothing.
+
+
+
+
+ Gets a value indicating whether peak classification checks are to be run
+
+
+
+
+ Gets the Peak Height at which the suitability calculator tests the width of target peaks.
+ You can enter any value within the range 0% to 100%. The default value is 50%.
+
+
+
+
+ Gets the minimum peak width, at the specified peak height, for the peak width suitability test.
+ The default value is 1.8. You can set any value in the range 0 to 30 seconds.
+
+
+
+
+ Gets the maximum peak width, at the specified peak height, for the peak width suitability test.
+ The default value is 3.6. You can set any value in the range 0 to 30 seconds.
+
+
+
+
+ Gets the Peak Height at which the algorithm measures the tailing of target peaks.
+ The default SOP value is 10%. You can enter any value within the range 0% to 100%.
+
+
+
+
+ Gets the failure threshold for the tailing suitability test.
+ The default SOP defined failure threshold is %lt 2 at 10% peak height. The valid range is 1 to 50.
+ Tailing is calculated at the value defined in .
+ For the purposes of the test, a peak is considered to be excessively tailed if:
+
+ R / L > Failure Threshold %
+ where:
+ L = the distance from the left side of the peak to the perpendicular dropped from the peak apex
+ R = the distance from the right side of the peak to the perpendicular dropped from the peak apex
+ Measurements of L and R are taken from the raw file without smoothing.
+
+
+
+
+ Gets the Peak Height at which the algorithm measures column overloading.
+ The default SOP value is 50%. You can enter any value within the range 0% to 100%.
+
+
+
+
+ Gets the failure threshold value for the column overload suitability test.
+ The default SOP defined threshold is 1.5 at 50% peak height. The valid range is 1 to 20.
+ A peak is considered to be overloaded if:
+
+ L / R > Failure Threshold %
+ where:
+ L = the distance from the left side of the peak to the perpendicular dropped from the peak apex
+ R = the distance from the right side of the peak to the perpendicular dropped from the peak apex
+ Measurements of L and R are taken from the raw file without smoothing.
+
+
+
+
+ Gets the Number of Peak Widths for Noise Detection testing parameter for
+ the baseline clipping system suitability test.
+ The default value is 1.0 and the permitted range is 0.1 to 10.
+ A peak is considered to be baseline clipped if there is no signal
+ (zero intensity) on either side of the peak within the specified
+ number of peak widths. The range is truncated to the quantitation window
+ if the specified number of peak widths extends beyond the window’s edge.
+
+
+
+
+ Gets the threshold for system suitability testing
+ of the signal-to-noise ratio. The default value is 20 and the
+ permitted range is 1 to 500. The algorithm calculates the signal-to-noise ratio
+ within the quantitation window using only baseline signal.
+ Any extraneous, minor, detected peaks are excluded from the calculation.
+
+
+
+
+ Gets the % of the detected baseline for which we want to compute PeakPurity
+
+
+
+
+ Gets a value indicating whether we want to compute Peak Purity
+
+
+
+
+ Gets a value indicating whether we want to use
+ the enclosed wavelength range, not the total scan
+
+
+
+
+ Gets the high limit of the scan over which to compute
+
+
+
+
+ Gets the low limit of the scan over which to compute
+
+
+
+
+ Gets the max of a scan must be greater than this to be included
+
+
+
+
+ Gets or sets the options.
+
+
+
+
+ Gets or sets the peak detection.
+
+
+
+
+ Gets the amount of internal standard. Not used in any calculation yet.
+
+
+
+
+ Gets the units for the internal standard
+
+
+
+
+ Gets the target compound settings.
+
+ The target compound settings.
+
+
+
+ Gets the internal standard settings.
+
+ The internal standard settings.
+
+
+
+ Gets a value which determines if this component is a target compound or an internal standard
+
+
+
+
+ Gets "Fit Threshold" defined as
+ Min fit threshold (0-1.0) for detection by spectral fit.
+ This value is believed to be not currently used in Xcalibur code (may be for an older fit algorithm)?
+ Returned for completeness only.
+
+
+
+
+ Gets the calibration and quantification data.
+
+
+
+
+ Gets the detection threshold limits.
+
+
+
+
+ Gets a value indicating whether this is used as a RT Reference for another component.
+
+
+
+
+ Gets the number of points to be averaged in peak detection and integration.
+
+
+
+
+ Gets the suggested view width for displaying the chromatogram (seconds)
+
+
+
+
+ Gets a value which determines which peak detector to use with the component
+
+
+
+
+ Gets the carry over limit threshold.
+
+ The carry over limit threshold.
+
+
+
+ Gets the detection limit threshold.
+
+ The detection limit threshold.
+
+
+
+ Gets the linearity limit threshold.
+
+ The linearity limit threshold.
+
+
+
+ Gets the quantitation limit threshold.
+
+ The quantitation limit threshold.
+
+
+
+ Gets the R squared threshold.
+
+ The R squared threshold.
+
+
+
+ Gets the limit of reporting
+ A value should only be reported if it is >= the limit of reporting.
+ This value is used to calculate the ReportingLimitPassed flag.
+
+
+
+
+ Gets the Area limit threshold.
+
+ The Area limit threshold.
+
+
+
+ Gets the height limit threshold.
+
+ The height limit threshold.
+
+
+
+ Gets a value indicating whether IRC tests are enabled
+
+
+
+
+ Gets the "standard" used
+
+
+
+
+ Gets the Ion Ratio method
+
+
+
+
+ Gets the ion ratio window type
+
+
+
+
+ Gets the qualifier ion co-elution limits (minutes)
+
+
+
+
+ Gets the table of masses for ion ratio testing
+
+
+
+
+ Gets the settings for Ion Ration Confirmation
+
+
+
+
+
+
+
+ The raw file info.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Unique id for this instance
+ The file path.
+ The file revision.
+ True if in the process of acquiring raw file
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+
+
+ Gets the blob size.
+
+
+
+
+ Gets the blob start.
+
+
+
+
+ Gets or sets the computer name.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets the file revision.
+
+
+
+
+ Gets a value indicating whether this file has detected an error.
+ If this is false: Other error properties in this interface have no meaning.
+
+
+
+
+ Gets a value indicating whether has experiment method.
+
+
+
+
+ Gets the header file map name.
+
+
+
+
+ Gets or sets a value indicating whether is in acquisition.
+
+
+
+
+ Gets or sets the MS data offset.
+
+
+
+
+ Gets the next available controller index.
+
+
+
+
+ Gets the number of virtual controllers.
+
+
+
+
+ Gets or sets the raw file info struct.
+ Setting only needed during raw file save. Refreshes controller data on set.
+
+
+
+
+ Gets the time stamp.
+
+
+
+
+ Gets the user labels.
+
+
+
+
+ Gets the virtual controller data.
+
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ Loads the raw file info structure from the mapped memory raw file using the viewer.
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The .
+
+
+
+
+ The number of virtual controllers of type.
+
+
+ The type.
+
+
+ The .
+
+
+
+
+ try to reload, without remapping.
+
+
+ throw exception on Error (else return false)
+
+
+ true if can reload
+
+
+ Bad data loaded
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+
+ The .
+
+
+
+
+ Updates the virtual controller.
+
+ The number of virtual controllers.
+ The virtual data offset
+ The offset.
+ Index of the virtual device.
+ Type of the virtual device.
+
+
+
+ Saves the RawFileInfo to the provided binary writer.
+
+ Writer to use to save
+ Any error information that occurred
+ True is successful
+
+
+
+ The populate virtual controller data.
+
+
+
+
+ Validates the virtual controller data.
+
+ True if valid
+
+
+
+ A calibration replicate, as read from an Xcalibur PMD file.
+
+
+
+
+ The replicate info.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Gets or sets the result file name.
+
+
+
+
+ Gets the amount of target compound in calibration or QC standard.
+
+
+
+
+ Gets the Ratio of target peak height to ISTD peak height in result file.
+
+
+
+
+ Gets the Ratio of target peak area to ISTD peak area in result file.
+
+
+
+
+ Gets a value indicating whether to exclude this data point from calibration curve.
+
+
+
+
+ Gets the raw file name for the replicate
+
+
+
+
+ The sample report, from PMD files.
+
+
+
+
+ The report template info.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Gets the name of the report
+
+
+
+
+ Gets a value indicating whether report is enabled
+
+
+
+
+ Gets a value indicating whether report is enabled for standards
+
+
+
+
+ Gets a value indicating whether report is enabled for QCs
+
+
+
+
+ Gets a value indicating whether report is enabled for Unknowns
+
+
+
+
+ Gets a value indicating whether report is enabled for Other sample types
+
+
+
+
+ Gets the file save format of the report
+
+
+
+
+ Defines filter data, as may be embedded in a processing method, or chromatogram settings
+
+
+
+
+ Gets the masses. Masses for each MS step
+
+
+ The masses.
+
+
+
+
+ Gets the precursor mass ranges. Precursor mass range(s)
+
+
+ The precursor mass ranges.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the name. event name - for named filters as an alternative to scan filters
+
+
+ The name.
+
+
+
+
+ Gets or sets the mass ranges. Mass range(s) for final scan
+
+
+ The mass ranges.
+
+
+
+
+ Gets or sets the source fragmentations.
+
+
+
+
+ Gets a value used to indicate which m_SourceFragmentationInfo values are valid.
+
+
+
+
+ Gets the source fragmentation mass ranges.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ fix up filter defaults, for a given raw file version.
+
+
+ The file revision.
+
+
+
+
+ Sets the number of (precursor) masses.
+
+
+ The number of masses.
+
+
+
+
+ Gets the accurate mass type.
+
+
+
+
+ Gets the compensation voltage.
+
+
+
+
+ Gets the compensation voltage type.
+
+
+
+
+ Gets the corona value.
+
+
+
+
+ Gets the dependent data.
+
+
+
+
+ Gets the Detector value.
+
+
+
+
+ Gets the detector value.
+
+
+
+
+ Gets the electron capture dissociation.
+
+
+
+
+ Gets the electron capture dissociation type.
+
+
+
+
+ Gets the electron transfer dissociation.
+
+
+
+
+ Gets the electron transfer dissociation type.
+
+
+
+
+ Gets the enhanced.
+
+
+
+
+ Gets the free region.
+
+
+
+
+ Gets the higher energy CID.
+
+
+
+
+ Gets the higher energy cid type.
+
+
+
+
+ Gets the ionization mode.
+
+
+
+
+ Gets a value indicating whether the scan event is custom - true if trailer
+ scan event should be used.
+
+
+
+
+ Gets a value indicating whether the scan event is valid.
+
+
+
+
+ Gets the lock.
+
+
+
+
+ Gets the MS order.
+
+
+
+
+ Gets the mass analyzer type.
+
+
+
+
+ Gets the mass calibrators.
+
+
+
+
+ Gets the mass ranges.
+
+
+
+
+ Gets the multi photon dissociation.
+
+
+
+
+ Gets the multi photon dissociation type.
+
+
+
+
+ Gets the multi state activation.
+
+
+
+
+ Gets the multiplex.
+
+
+
+
+ Gets the parameter a.
+
+
+
+
+ Gets the parameter b.
+
+
+
+
+ Gets the parameter f.
+
+
+
+
+ Gets the parameter k.
+
+
+
+
+ Gets the parameter r.
+
+
+
+
+ Gets the parameter v.
+
+
+
+
+ Gets the photo ionization.
+
+
+
+
+ Gets the polarity.
+
+
+
+
+ Gets the pulsed q dissociation.
+
+
+
+
+ Gets the pulsed q dissociation type.
+
+
+
+
+ Gets the reactions.
+
+
+
+
+ Gets the scan data type.
+
+
+
+
+ Gets the scan type.
+
+
+
+
+ Gets the scan type index. Scan Type Index indicates the segment/scan event for this filter scan event.
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ Gets the sector scan.
+
+
+
+
+ Gets the source fragmentation.
+
+
+
+
+ Gets the source fragmentation mass ranges.
+
+
+
+
+ Gets value to indicate how source fragmentation values are interpreted.
+
+
+
+
+ Gets or sets the source fragmentations.
+
+
+
+
+ Gets the supplemental activation.
+
+
+
+
+ Gets the turbo scan.
+
+
+
+
+ Gets the ultra.
+
+
+
+
+ Gets the wideband.
+
+
+
+
+ Convert to automatic filter string.
+
+ The scan event.
+ The mass precision.
+ The chars maximum.
+ The energy precision.
+ The filter string
+
+
+
+ get the run header filter mass precision.
+
+
+ The .
+
+
+
+
+ create reaction.
+
+
+ The reaction number.
+
+
+ The .
+
+
+
+
+ The filter scan event class is an internal class which hosts certain features
+ of both filters and scan events.
+ It supports the sorting code needing to "auto filter" a set of scan events.
+ Scan events are conceptually immutable (records of what occurred).
+ This class is mutable.
+ The class is created internally by the "Filter string parser" and by "Scan Event".
+ The class is exposed externally though "WrappedScanFilter" which has the (limited) public
+ interface to read and modify a filter.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The scan event.
+
+
+ The from scan.
+
+
+
+
+ Gets the table of compensation voltages valid.
+
+
+
+
+ Gets or sets the filter mass precision.
+
+
+ The filter mass precision.
+
+
+
+
+ Gets or sets the filter mass resolution.
+
+
+ The filter mass resolution.
+
+
+
+
+ Gets or sets the name of the locale.
+
+
+ The name of the locale.
+
+
+
+
+ Gets or sets the meta filters. {hcd, etd, cid}
+
+
+
+
+ Gets the table of source CID valid.
+
+
+
+
+ Gets the total source values, which is all CID and CV.
+
+
+
+
+ Compares the current object with another object of the same type.
+ Exact compare for specialized qsort. Standard CompareTo considers items within an "instrument tolerance" as the same.
+ This version uses 1.0E-6 for the tolerance.
+
+ An object to compare with this object.
+
+ A value that indicates the relative order of the objects being compared. The return value has the following
+ meanings: Value Meaning Less than zero This object is less than the parameter.Zero This
+ object is equal to . Greater than zero This object is greater than
+ .
+
+
+
+
+ Compares the current object with another object of the same type.
+
+ An object to compare with this object.
+
+ A value that indicates the relative order of the objects being compared. The return value has the following
+ meanings: Value Meaning Less than zero This object is less than the parameter.Zero This
+ object is equal to . Greater than zero This object is greater than
+ .
+
+
+
+
+ create reactions table
+
+
+
+
+ Indicates whether the current object is equal to another object of the same type.
+
+ An object to compare with this object.
+
+ true if the current object is equal to the parameter; otherwise, false.
+
+
+
+
+ Gets the filter string.
+
+ The filter mass precision.
+ The filter as a string
+
+
+
+ Count the number of compensation voltage values.
+
+ The number of compensation voltage values
+
+
+
+ Numbers the source fragmentation information values.
+
+ the number of values
+
+
+
+ Check if this object has the parent mass as another.
+
+ The other.
+ true if the same
+
+
+
+ Check if this object has the parent mass as another.
+
+ The other.
+ true if the same
+
+
+
+ set compensation voltage type.
+
+
+ The type.
+
+
+
+
+ when we set the number of digits to display in the filter masses,
+ let's also set the comparison value to use in comparing filters.
+ This value used to be 0.4 AMU
+ Sets the filter mass resolution.
+
+
+ Mass Resolution to apply
+
+
+
+
+ Sets the filter mass resolution by mass precision.
+
+ The n.
+
+
+
+ set (precursor) masses.
+
+
+ The index.
+
+
+ The value.
+
+
+
+
+ Set the number of precursor masses.
+
+
+ The number of masses.
+
+
+
+
+ set precursor energy.
+
+
+ The index to the precursor table.
+
+
+ The energy.
+
+
+
+
+ set precursor energy is valid ex.
+
+
+ The index to the precursor table.
+
+
+ The extended energy valid flags.
+
+
+
+
+ set source fragmentation type.
+
+
+ The type.
+
+
+
+
+ Returns a that represents this instance.
+
+
+ A that represents this instance.
+
+
+
+
+ Sets the "i" indexed Compensations voltage information value.
+ Skips over any items which have already been set for SID mode.
+
+ The i.
+ The d value.
+
+
+
+ Sets the number of compensation voltage info values.
+
+
+ The number.
+
+
+
+
+ Sets The number of source fragmentation info values.
+
+
+ The number.
+
+
+
+
+ Sets the "i" indexed Compensations voltage information value.
+ Skips over any items which have already been set for SID mode.
+
+ The i.
+ The d value.
+
+
+
+ Compares the reactions.
+
+ The other reactions.
+ The filter mass resolution.
+ Standard comparison result
+
+
+
+ converts the event to filter.
+
+ The scan event.
+ True when this is data from a scan. False when it is typed filter text
+
+
+
+ Count the number of volt values used for a voltage type
+
+ Style of voltage values
+ All voltages in the scan event
+ The number of voltages
+
+
+
+ Filter sorting, designed to match same ordering as previous Xcalibur code.
+
+
+
+
+ Sort a list of events, using the qsort algorithm.
+ This code is needed to precisely match results from legacy fileio.
+
+ scan events to sort
+
+
+
+ Sort a small list of filters in a simple manner (about 8 items)
+
+ Low index to sort from
+ High index to sort to
+ Data array to sort
+
+
+
+ Exchange two array elements
+
+ First to exchange
+ Second to exchange
+ Array of data
+
+
+
+ This class parses a filter string.
+
+
+
+
+ Lookup table of valid precursor activation codes
+
+
+
+
+ Parsing states for a mass range
+
+
+
+
+ Expect low mass
+
+
+
+
+ Expect comma or dash (separator)
+
+
+
+
+ Expect high mass
+
+
+
+
+ Expect an energy value (after "@")
+
+
+
+
+ Expect a common or "]"
+
+
+
+
+ Found "]"
+
+
+
+
+ Parsing states for a simple double "123.456"
+
+
+
+
+ Digits before decimal point
+
+
+
+
+ Decimal point
+
+
+
+
+ Digits after decimal point
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The scan event.
+
+
+
+
+ Gets or sets the energy precision.
+
+
+
+
+ Gets or sets the meta filters. (ETD, CID, HCD)
+
+
+
+
+ Sets the mass precision.
+
+
+
+
+ Get filter from string (by parsing a string)
+
+
+ The filter sting to parse
+
+
+ The parsed filter
+
+
+
+
+ Parses the filter structure string.
+
+ The filter string.
+
+ true if parse is valid
+
+
+
+ Convert to type IFilterScanEvent
+
+
+ true if this came from a scan's event.
+
+
+ Converted object
+
+
+
+
+ Search for open and close parenthesis, or a given style
+
+
+ The filter string.
+
+
+ The open parenthesis index.
+
+
+ The close parenthesis index.
+
+
+ The open match count.
+
+
+ The close match count.
+
+
+ The filter length.
+
+
+ The open parenthesis character.
+
+
+ The close parenthesis character.
+
+
+
+
+ Parse The ion mode.
+
+
+ The token.
+
+
+ The index into the token.
+
+
+ The .
+
+
+
+
+ Parse one token
+
+ The token.
+ if set to true [set flag].
+ The names.
+ The set mode.
+ updated parse state
+
+
+
+ Initialize internal properties.
+
+
+ The scan event.
+
+
+
+
+ Initialize the parser (before reading the filter string)
+
+
+
+
+ Calculate the total number of activations.
+
+
+ The total.
+
+
+
+
+ Gets the SIM compensation voltage, at a given index
+
+
+ The index.
+
+
+ The energy.
+
+
+ The energy type
+
+
+
+
+ Get SIM source CID at a given index.
+
+
+ The index.
+
+
+ The energy.
+
+
+ The energy type
+
+
+
+
+ Parse a filter string
+
+
+ The filter string.
+
+
+ The state (Bad on failure to parse)
+
+
+
+
+ Parse the next (white space separated) token.
+
+
+ The parse state.
+
+
+ The token.
+
+
+ The updated parse state.
+
+
+
+
+ Parse for segment and scan event.
+
+
+ The filter string characters.
+
+
+ The parse state
+
+
+
+
+ Decode an integer. Must be less than 8 digits
+
+ the text to parse
+ index into token
+ positive value or zero, if no digits. -1 on >=8 digits
+
+
+
+ Parse a mass ranges.
+
+
+ The token to parse
+
+
+ The parse state.
+
+
+
+
+ Parses the mass ranges, plus energy
+ parse mass ranges -- double or double-double separated by ','
+ max of 50 ranges
+ '[' nnn.n [- nnn.n] [, [nnn.n [- nnn.n] ....] ']'
+
+ The mass ranges array.
+ parse state
+
+
+
+ parse a "simple" double value: no e-notation
+ "123.4" or "123".
+ Optionally permit leading sign
+
+ The mass ranges array.
+ The start position.
+ The value.
+ Mass precision
+ True if value may have + or -
+ Parse state: Bad if too many digits, or Next otherwise
+
+
+
+ parse a double value, i.e., no e-notation
+ Always permits sign. "123.4", "+123.4" or "-123".
+ Only permits trailing sign if it is specified as a "range separator".
+
+ Text to parse
+ Index of first char to parse
+ Value decoded
+ True if trailing space is permitted
+ Permitted precision
+ Character which may appear between two numbers representing a range
+ Parse state, which can be bad on invalid, Next otherwise
+
+
+
+ parse a double value range, i.e., no e-notation
+ "+123.4@200.34" or "-123@-345"
+ First value is a mass, second is energy.
+
+
+ text to parse
+
+
+ next char to parse
+
+
+ set if '@; found
+
+
+ Precursor mass
+
+
+ Activation energy
+
+
+ set is '-' '+' permitted
+
+
+ Set if number after '@' permitted to be signed
+
+ The updated parse state
+
+
+
+
+ Test that the mass range in limits.
+
+
+ The index.
+
+
+ The high or low. (0 for low, 1 for high)
+
+
+ The mass.
+
+
+ true when valid.
+
+
+
+
+ Parse meta filters.
+
+
+ The token.
+
+
+ The parse state.
+
+
+
+
+ set SIM source CID for a given index.
+
+
+ The index.
+
+
+ The value.
+
+
+
+
+ parse dissociation, such as mpd@value
+
+
+ The token.
+
+
+ The set flag.
+
+
+ The names.
+
+
+ The set mode.
+
+
+ The parse state
+
+
+
+
+ Parse source fragmentation (SID)
+
+
+ The token.
+
+
+ in: True if this has been set already
+ out: set to true when token is found
+
+
+ The names.
+
+
+ the parse state
+
+
+
+
+ parse compensation voltage.
+
+
+ The token.
+
+
+ True if this item has already been parsed
+
+
+ The names.
+
+
+ The parse result
+
+
+
+
+ parse a simplified double value range, i.e., no e-notation.
+ "+123.4-200.34" or "-123--345"
+
+ text to parse
+ start of text to parse (updated to next unparsed char)
+ index into text of separator
+ Low value found in range
+ High value found in range (same as low, when no second value)
+ True if trailing spaces are valid
+ Decimal precision
+ Parse state. Will be Bad on parse error, Next on valid parse
+
+
+
+ convert the scan mode
+ in the syntax most of these are followed by an MS order, some not
+ for example: Q1MS is always MS1
+
+
+ The token.
+
+
+ The set flag.
+
+
+ The names.
+
+
+ The parse state
+
+
+
+
+ set MS order and number of precursor masses.
+
+
+ The order.
+
+
+ The masses.
+
+
+
+
+ Parse multiplex.
+
+
+ The token.
+
+
+ The possible names.
+
+
+ The parse state
+
+
+
+
+ Parse the MS order (ms, ms2 etc.)
+
+
+ The token.
+
+
+ The parse state.
+
+
+
+
+ Parse detector. det=
+
+
+ The token.
+
+
+ The names.
+
+
+ The parse state
+
+
+
+
+ Look for a precursor mass, plus activation codes
+
+ token like "1234.56@ecd35.6@hcd44.4"
+ Parse private state
+
+
+
+ Set a precursor mass.
+
+
+ The index.
+
+
+ The mass.
+
+
+
+
+ Set precursor energy at a given index.
+
+
+ The index.
+
+
+ The energy.
+
+
+
+
+ The update mass ranges 2.
+
+
+
+
+ Get precursor energy ex.
+
+
+ The index.
+
+
+ The activation energy
+
+
+ The 'valid' bit plus the activation mode .
+
+
+
+
+ The multiple activations for MS n order.
+
+
+ The i.
+
+
+ The number of MA in the extra array for this MS n Order
+
+
+
+
+ given the previous MA for this MS/MS Order, find the next
+
+
+ The order.
+
+
+ The last multi activation.
+
+
+ The .
+
+
+
+
+ get precursor energy extra.
+
+
+ The index.
+
+
+ The energy.
+
+
+ The energy code
+
+
+
+
+ The precursor activation.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets a value indicating whether it is a multiple activation.
+
+
+
+
+ Gets or sets the mode of activation.
+
+
+
+
+ Gets or sets a value indicating whether the precursor energy is valid.
+ If it is valid, it is shown as "@energy"
+
+
+
+
+ Gets or sets the precursor energy.
+
+
+
+
+ Gets or sets the MS order.
+
+
+
+
+ Convert to energy ex.
+
+
+ The converted value
+
+
+
+
+ The filter string tokens, as used by filer parser.
+
+
+
+
+ Gets the meta filter token values.
+
+
+
+
+ Gets the meta filter token names.
+
+
+
+
+ Gets the ionization mode token names.
+
+
+
+
+ Gets the ionization mode token values.
+
+
+
+
+ Gets the mass analyzer token names.
+
+
+
+
+ Gets the mass analyzer token values.
+
+
+
+
+ Gets the sector scan token names.
+
+
+
+
+ Gets the sector scan token values.
+
+
+
+
+ Gets the lock token names.
+
+
+
+
+ Gets the lock token values.
+
+
+
+
+ Gets the free region token names.
+
+
+
+
+ Gets the free region token values.
+
+
+
+
+ Gets the ultra token names.
+
+
+
+
+ Gets the ultra token values.
+
+
+
+
+ Gets the enhanced token names.
+
+
+
+
+ Gets the enhanced token values.
+
+
+
+
+ Gets the parameter a token names.
+
+
+
+
+ Gets the parameter a token values.
+
+
+
+
+ Gets the parameter b token names.
+
+
+
+
+ Gets the parameter b token values.
+
+
+
+
+ Gets the parameter f token names.
+
+
+
+
+ Gets the parameter f token values.
+
+
+
+
+ Gets the SPS multi notch token names.
+
+
+
+
+ Gets the SPS multi notch token values.
+
+
+
+
+ Gets the parameter r token names.
+
+
+
+
+ Gets the parameter r token values.
+
+
+
+
+ Gets the parameter v token names.
+
+
+
+
+ Gets the parameter v token values.
+
+
+
+
+ Gets the multi photon dissociation token names.
+
+
+
+
+ Gets the multi photon dissociation token values.
+
+
+
+
+ Gets the electron capture dissociation token names.
+
+
+
+
+ Gets the electron capture dissociation token values.
+
+
+
+
+ Gets the photo ionization token names.
+
+
+
+
+ Gets the photo ionization token values.
+
+
+
+
+ Gets the polarity token names.
+
+
+
+
+ Gets the polarity token values.
+
+
+
+
+ Gets the scan data type token names.
+
+
+
+
+ Gets the scan data type token values.
+
+
+
+
+ Gets the corona token names.
+
+
+
+
+ Gets the corona token values.
+
+
+
+
+ Gets the source fragmentation token names.
+
+
+
+
+ Gets the source fragmentation token values.
+
+
+
+
+ Gets the compensation voltage token names.
+
+
+
+
+ Gets the compensation voltage token values.
+
+
+
+
+ Gets the data dependent token names.
+
+
+
+
+ Gets the data dependent token values.
+
+
+
+
+ Gets the wide band token names.
+
+
+
+
+ Gets the wide band token values.
+
+
+
+
+ Gets the supplemental activation token names.
+
+
+
+
+ Gets the supplemental activation token values.
+
+
+
+
+ Gets the multi state activation token names.
+
+
+
+
+ Gets the multi state activation token values.
+
+
+
+
+ Gets the accurate mass token names.
+
+
+
+
+ Gets the accurate mass token values.
+
+
+
+
+ Gets the turbo scan token names.
+
+
+
+
+ Gets the turbo scan token values.
+
+
+
+
+ Gets the scan mode token names.
+
+
+
+
+ Gets the scan mode token values.
+
+
+
+
+ Gets the multiplex token names.
+
+
+
+
+ Gets the multiplex token values.
+
+
+
+
+ Gets the detector token names.
+
+
+
+
+ Gets the detector token values.
+
+
+
+
+ Initializes static members of the class.
+
+
+
+
+ Filter sorting, designed to match same ordering as previous Xcalibur code.
+
+
+
+
+ Sort a list of events, using the qsort algorithm.
+ This code is needed to precisely match results from legacy fileio.
+
+ scan events to sort
+
+
+
+ Sort a slice of a list of events, using the qsort algorithm.
+ This code is needed to precisely match results from legacy fileio.
+
+ scan events to sort
+ first element to sort
+ last element to sort
+
+
+
+ Sort a small list of filters in a simple manner (about 8 items)
+
+ Low index to sort from
+ High index to sort to
+ Data array to sort
+
+
+
+ Exchange two array elements
+
+ First to exchange
+ Second to exchange
+ Array of data
+
+
+
+ The reaction class defines one reaction in a chain of MS/MS reactions.
+ A reaction descibes which ion was acted on, with what methods, to produce the
+ next level MS/MS fragments.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The precursor mass.
+
+
+ The isolation width.
+
+
+ The collision energy.
+
+
+ The collision energy valid.
+
+
+ The range is valid.
+
+
+ The first precursor mass.
+
+
+ The last precursor mass.
+
+
+ The isolation width offset.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Clone from interface.
+
+
+
+
+ Gets a value indicating whether is multiple activation.
+
+
+
+
+ Gets the collision energy valid value from the structure.
+
+
+
+
+ Gets a value indicating whether the collision energy is valid. this is set to true
+ to use in scan filtering.
+
+
+
+
+ Gets a value indicating whether is precursor energies valid.
+
+
+
+
+ Gets a value indicating whether use named activation.
+
+
+
+
+ Gets the named activation type.
+
+
+
+
+ Gets the collision energy.
+
+
+
+
+ Gets the first precursor mass. If == TRUE, this value defines the start of the
+ precursor isolation range.
+
+
+
+
+ Gets a value indicating whether is range valid. If TRUE, is still the center mass but the
+ and
+ are also valid.
+
+
+
+
+ Gets the isolation width.
+
+
+
+
+ Gets the isolation width offset.
+
+
+
+
+ Gets the last precursor mass.
+
+
+
+
+ Gets the precursor mass.
+
+
+
+
+ compare details (excludes parent mass).
+
+
+ The y.
+
+
+ less than zero if before, zero if same, positive if after.
+
+
+
+
+ The comparison implementation of .
+
+
+ The object to compare.
+
+
+ Return an that has one of three values:
+
+
+ Value
+ Meaning
+
+ Less than zero
+ The current instance precedes the object specified by the CompareTo method in the sort order.
+ Zero
+ This current instance occurs in the same position in the sort order as the object specified by the CompareTo method.
+ Greater than zero
+ This current instance follows the object specified by the CompareTo method in the sort order.
+
+
+
+
+
+ The comparison implementation of .
+
+
+ The object to compare.
+
+
+ True if the objects are equal.
+
+
+
+
+ Deeps the clone.
+
+ copy of this object
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ initial fields from a reaction.
+
+
+ The reaction to copy from.
+
+
+
+
+ initialize valid flags.
+
+
+
+
+ The scan event.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The scan event.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The header.
+ Index of the unique scan event.
+
+
+
+ Initializes a new instance of the class.
+
+ The filter mass precision.
+ Index of the unique scan event.
+
+
+
+ Sets the dependent data as byte.
+ (Used in conversion of legacy LCQ files)
+
+
+
+
+ Gets the header filter mass precision.
+
+
+
+
+ Sets the scan data type. Internal method for converting old file revisions
+
+
+
+
+ Gets or sets the scan event info.
+ Note that this is a struct, so code which needs
+ to modify needs to follow a get, modify, set pattern
+
+
+
+
+ Gets or sets the index of the unique scan event.
+
+
+ The index of the unique scan event.
+
+
+
+
+ Gets or sets the scan type Location.
+ This determines where the scan was found within the
+ segment and event table.
+ This is similar data to "ScanTypeIndex"
+ but not shown in "ToString"
+ HIWORD == segment, LOWORD == event number
+
+
+
+
+ compare to.
+
+
+ The other.
+
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared.
+ The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+
+
+ The method compares two objects.
+
+
+ The other object.
+
+
+ True if equal.
+
+
+
+
+ Gets the accurate mass type.
+
+
+
+
+ Gets the compensation voltage.
+
+
+
+
+ Gets the compensation voltage type.
+
+
+
+
+ Gets the corona value.
+
+
+
+
+ Gets the dependent data.
+
+
+
+
+ Gets the Detector value.
+
+
+
+
+ Gets the detector value.
+
+
+
+
+ Gets the electron capture dissociation.
+
+
+
+
+ Gets the electron capture dissociation type.
+
+
+
+
+ Gets the electron transfer dissociation.
+
+
+
+
+ Gets the electron transfer dissociation type.
+
+
+
+
+ Gets the enhanced.
+
+
+
+
+ Gets the free region.
+
+
+
+
+ Gets the higher energy CID.
+
+
+
+
+ Gets the higher energy CID type.
+
+
+
+
+ Gets the ionization mode.
+
+
+
+
+ Gets a value indicating whether the scan event is custom - true if trailer
+ scan event should be used.
+
+
+
+
+ Gets a value indicating whether the scan event is valid.
+
+
+
+
+ Gets the lock.
+
+
+
+
+ Gets the mass analyzer type.
+
+
+
+
+ Gets the mass calibrators.
+
+
+
+
+ Gets or sets the mass ranges.
+
+
+
+
+ Gets the MS order.
+
+
+
+
+ Gets the multi photon dissociation.
+
+
+
+
+ Gets the multi photon dissociation type.
+
+
+
+
+ Gets the multiplex.
+
+
+
+
+ Gets the multi state activation.
+
+
+
+
+ Gets or sets the name.
+
+
+
+
+ Gets the parameter a.
+
+
+
+
+ Gets the parameter b.
+
+
+
+
+ Gets the parameter f.
+
+
+
+
+ Gets the parameter r.
+
+
+
+
+ Gets the parameter v.
+
+
+
+
+ Gets the photo ionization.
+
+
+
+
+ Gets the polarity.
+
+
+
+
+ Gets the pulsed q dissociation.
+
+
+
+
+ Gets the pulsed q dissociation type.
+
+
+
+
+ Gets or sets the reactions.
+
+
+
+
+ Gets the scan data type.
+
+
+
+
+ Gets the scan type.
+
+
+
+
+ Gets the scan type index.
+ When specified, it will show as {segment,event} in a filter string.
+ Scan Type Index indicates the segment/scan event for this
+ scan event.
+ HIWORD == segment, LOWORD == scan type
+ -1 for "not in fixed table"
+
+
+
+
+ Gets the sector scan.
+
+
+
+
+ Gets the source fragmentation.
+
+
+
+
+ Gets the source fragmentation mass ranges.
+
+
+
+
+ Gets or sets the source fragmentations.
+
+
+
+
+ Gets value to indicate how source fragmentation values are interpreted.
+
+
+
+
+ Gets the parameter k.
+
+
+
+
+ Gets the supplemental activation.
+
+
+
+
+ Gets the turbo scan.
+
+
+
+
+ Gets the ultra.
+
+
+
+
+ Gets the wideband.
+
+
+
+
+ get run header filter mass precision.
+
+
+ The mass precision
+
+
+
+
+ Convert to auto filter string.
+
+
+ The scan event.
+
+
+ The mass precision.
+
+
+ The chars max.
+
+
+ The energy precision.
+
+
+ The .
+
+
+
+
+ Load (from file).
+
+ The viewer (memory map into file).
+ The data offset (into the memory map).
+ The file revision.
+
+ The number of bytes read
+
+
+
+
+ Gets the accurate mass setting.
+
+
+
+
+ Gets Compensation Voltage Option setting.
+
+
+
+
+ Gets Compensation Voltage type setting.
+
+ See for possible values
+
+
+
+ Gets the corona scan setting.
+
+
+
+
+ Gets the dependent scan setting.
+
+
+
+
+ Gets the detector scan setting.
+
+ See for possible values
+
+
+
+ Gets the detector value.
+
+ Floating point detector value
+
+
+
+ Gets the electron capture dissociation setting.
+
+
+
+
+ Gets the electron capture dissociation value.
+
+ Floating point electron capture dissociation value
+
+
+
+ Gets the electron transfer dissociation setting.
+
+
+
+
+ Gets the electron transfer dissociation value.
+
+ Floating point electron transfer dissociation value
+
+
+
+ Gets the enhanced scan setting.
+
+
+
+
+ Gets the field free region setting.
+
+ See for possible values
+
+
+
+ Gets the higher energy cid setting.
+
+
+
+
+ Gets the higher energy cid value.
+
+ Floating point higher energy cid value
+
+
+
+ Gets the ionization mode scan setting.
+
+ See for possible values
+
+
+
+ Gets a value indicating whether this is a custom event.
+ A custom event implies that any scan derived from this event could be different.
+ The scan type must be inspected to determine the scanning mode, and not the event.
+
+
+
+
+ Gets a value indicating whether this event is valid.
+
+
+
+
+ Gets the lock scan setting.
+
+
+
+
+ Gets the mass analyzer scan setting.
+
+ See for possible values
+
+
+
+ Gets the mass calibrator count.
+
+
+
+
+ Gets number of masses
+
+ The size of mass array
+
+
+
+ Gets the number of mass ranges for final scan
+
+ The size of mass range array
+
+
+
+ Gets the scan power setting.
+
+ See for possible values
+
+
+
+ Gets the Multi notch (Synchronous Precursor Selection) type
+
+
+
+
+ Gets the multi-photon dissociation setting.
+
+
+
+
+ Gets the multi-photon dissociation value.
+
+ Floating point multi-photon dissociation value
+
+
+
+ Gets the Multiplex type
+
+
+
+
+ Gets MultiStateActivation type setting.
+
+
+
+
+ Gets the event Name.
+
+
+
+
+ Gets the parameter a.
+
+
+
+
+ Gets the parameter b.
+
+
+
+
+ Gets the parameter f.
+
+
+
+
+ Gets the parameter r.
+
+
+
+
+ Gets the parameter v.
+
+
+
+
+ Gets the photo ionization setting.
+
+
+
+
+ Gets the polarity scan setting.
+
+ See for possible values
+
+
+
+ Gets pulsed dissociation setting.
+
+
+
+
+ Gets the pulsed dissociation value.
+
+ Floating point pulsed dissociation value
+
+
+
+ Gets the scan data.
+
+
+
+
+ Gets the scan type setting.
+
+ See for possible values
+
+
+
+ Gets encoded form of segment and scan event number.
+
+ HIWORD == segment, LOWORD == scan type
+
+
+
+ Gets the sector scan setting.
+
+ See for possible values
+
+
+
+ Gets source fragmentation scan setting.
+
+
+
+
+ Gets the number of source fragmentation info values
+
+ The size of source fragmentation info array
+
+
+
+ Gets the source fragmentation mass range count.
+
+
+
+
+ Gets the source fragmentation type setting.
+
+ See for possible values
+
+
+
+ Gets supplemental activation type setting.
+
+
+
+
+ Gets the turbo scan setting.
+
+
+
+
+ Gets the ultra scan setting.
+
+
+
+
+ Gets the wideband scan setting.
+
+
+
+
+ Retrieves activation type at 0-based index.
+
+
+ Use to get the count of activations.
+
+
+ Index of activation to be retrieved
+
+
+ activation of MS step;
+ See for possible values
+
+
+
+
+ Retrieves precursor(collision) energy value for MS step at 0-based index.
+
+
+ Use to get the count of energies.
+
+
+ Index of precursor(collision) energy to be retrieved
+
+
+ precursor(collision) energy of MS step
+
+
+
+
+ Retrieves precursor(collision) energy validation flag at 0-based index.
+
+
+ Use to get the count of precursor(collision) energy validations.
+
+
+ Index of precursor(collision) energy validation to be retrieved
+
+
+ precursor(collision) energy validation of MS step;
+ See for possible values
+
+
+
+
+ Gets the first precursor mass.
+
+
+ The index.
+
+
+ The first mass
+
+
+
+
+ Retrieves multiple activations flag at 0-based index of masses.
+
+
+ Use to get the count of masses.
+
+
+ Index of flag to be retrieved
+
+
+ true if mass at given index has multiple activations; false otherwise
+
+
+
+
+ Get the isolation width.
+
+
+ The index.
+
+
+ The isolation width
+
+
+
+
+ Get the isolation width offset.
+
+
+ The index.
+
+
+ The isolation width offset
+
+
+
+
+ Gets the last precursor mass.
+
+
+ The index.
+
+
+ The last mass
+
+
+
+
+ Retrieves mass value for MS step at 0-based index.
+
+
+ Use to get the count of mass values.
+
+
+ Index of mass value to be retrieved
+
+
+ Mass value of MS step
+
+ Will be thrown when index >= MassCount
+
+
+
+ Get the mass calibrator, at a given index.
+
+
+ The index, which should be from 0 to MassCalibratorCount -1
+
+
+ The mass calibrator.
+
+ Thrown when requesting calibrator above count
+
+
+
+ Retrieves mass range for final scan at 0-based index.
+
+
+ Use to get the count of mass ranges.
+
+
+ Index of mass range to be retrieved
+
+
+ Mass range for final scan at 0-based index
+
+ Will be thrown when index >= MassRangeCount
+
+
+
+ Determine if a precursor range is valid.
+
+
+ The index.
+
+
+ true if valid
+
+
+
+
+ Gets the reaction data for the mass at 0 based index
+ Equivalent to calling GetMass, GetEnergy, GetPrecursorRangeValidity, GetFirstPrecursorMass
+ GetLastPrecursorMass,GetIsolationWidth,GetIsolationWidthOffset,GetEnergyValid
+ GetActivation, GetIsMultipleActivation.
+ Depending on the implementation of the interface, this call may be more efficient
+ that calling several of the methods listed.
+
+ index of reaction
+ reaction details
+
+
+
+ Retrieves a source fragmentation info value at 0-based index.
+
+
+ Use to get the count of source
+ fragmentation info values.
+
+
+ Index of source fragmentation info to be retrieved
+
+
+ Source Fragmentation info value at 0-based index
+
+ Will be thrown when index >= SourceFragmentationInfoCount
+
+
+
+ Get the source fragmentation mass range, at a give index.
+
+
+ The index.
+
+
+ The mass range.
+
+ Will be thrown when index >= SourceFragmentationMassRangeCount
+
+
+
+ Convert to string.
+
+
+ The converted scanning method.
+
+
+
+
+ Pack the "non array" items from an event into
+ the "scan event information" structure.
+
+
+ The scan event.
+
+
+ The .
+
+
+
+
+ Construct from event, from an interface.
+ This can permit an application to build a scan filter
+ Use "ScanEventBuilder" to make an event
+ the use an IRawDataPlus method "event to filter"
+ which internally calls this, then uses code already done
+ to map "ScanEvent" to "WrappedScanFilter"
+
+
+ The old event.
+
+
+ The .
+
+
+
+
+ Calculate hash codes, for faster sort
+
+
+
+
+ table of mass range
+
+
+ The object to copy into.
+
+
+ Function to get item to copy.
+
+
+ The length of the table.
+
+
+
+
+ Compares items in this event, up to the reactions tests.
+ Reaction tests are done differently by various callers.
+
+ The source.
+ The other.
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared.
+ The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+
+
+ Compares items in this event, after the reactions tests.
+ Reaction tests are done differently by various callers.
+
+ The other.
+ compare names as final test (not needed for auto filter)
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared.
+ The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+
+
+ Compares items in this event, after the reactions tests.
+ Reaction tests are done differently by various callers.
+ Skips items which are fouud equal in hash3
+
+ The other.
+ compare names as final test (not needed for auto filter)
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared.
+ The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+
+
+ Compares items in this event, after the reactions tests.
+ Reaction tests are done differently by various callers.
+ Skips items which are fouud equal in hash3 and hash4
+
+ The other.
+ compare names as final test (not needed for auto filter)
+
+ A 32-bit signed integer that indicates the relative order of the objects being compared.
+ The return value has the following meanings:
+ Value Meaning
+ Less than zero This object is less than the parameter.
+ Zero This object is equal to .
+ Greater than zero This object is greater than .
+
+
+
+
+ create editable (mutable) scan event.
+
+
+ The .
+
+
+
+
+ Convert the internal scan event info struct to byte array.
+
+ This method is intended to return the internal scan event info struct as "byte array", such that
+ we don't have to be encoded from the properties, when exporting to a new file.
+
+
+ The byte array from the internal scan event info struct
+
+
+
+
+ The method returns the string representation of the scan event object.
+
+
+ The representation of the scan event object.
+
+
+
+
+ The method compares two lists of doubles.
+
+
+ The first list of doubles.
+
+
+ The second list of doubles.
+
+
+ The tolerance for equivalence.
+
+
+ Return an that has one of three values:
+
+
+ Value
+ Meaning
+
+ Less than zero
+ The current instance precedes the object specified by the CompareTo method in the sort order.
+ Zero
+
+ This current instance occurs in the same position in the sort order as the object specified by the
+ CompareTo method.
+
+ Greater than zero
+ This current instance follows the object specified by the CompareTo method in the sort order.
+
+
+
+
+
+ The method compares two lists of mass ranges.
+ This version uses "default" tolerance
+
+
+ The first list of mass ranges.
+
+
+ The second list of mass ranges.
+
+
+ Return an that has one of three values:
+
+
+ Value
+ Meaning
+
+ Less than zero
+ The current instance precedes the object specified by the CompareTo method in the sort order.
+ Zero
+
+ This current instance occurs in the same position in the sort order as the object specified by the
+ CompareTo method.
+
+ Greater than zero
+ This current instance follows the object specified by the CompareTo method in the sort order.
+
+
+
+
+
+ The method compares two lists of mass ranges.
+ Tolerance is half of the passed in "filter mass resolution"
+
+
+ The first list of mass ranges.
+
+
+ The second list of mass ranges.
+
+ Resolution (tolerance) for comparison
+
+ Return an that has one of three values:
+
+
+ Value
+ Meaning
+
+ Less than zero
+ The current instance precedes the object specified by the CompareTo method in the sort order.
+ Zero
+
+ This current instance occurs in the same position in the sort order as the object specified by the
+ CompareTo method.
+
+ Greater than zero
+ This current instance follows the object specified by the CompareTo method in the sort order.
+
+
+
+
+
+ The method compares two lists of reactions.
+
+
+ The first list of reaction.
+
+
+ The other list of reactions.
+
+
+ Return an that has one of three values:
+
+
+ Value
+ Meaning
+
+ Less than zero
+ The current instance precedes the object specified by the CompareTo method in the sort order.
+ Zero
+
+ This current instance occurs in the same position in the sort order as the object specified by the
+ CompareTo method.
+
+ Greater than zero
+ This current instance follows the object specified by the CompareTo method in the sort order.
+
+
+
+
+
+ formulate auto filter string.
+
+
+ The scan event.
+
+
+ The default mass precision format.
+
+
+ The mass precision.
+
+
+ The max number of chars
+
+
+ The energy precision.
+
+
+ The filter as a string
+
+
+
+
+ copy arrays from this to "copy"
+
+
+ The copy.
+
+
+
+
+ The method appends the specified string to the result.
+
+
+ The result.
+
+
+ The parameter.
+
+
+ The string to append.
+
+
+
+
+ The method appends the specified string to the result.
+
+
+ The result.
+
+
+ The parameter.
+
+
+ The string to append.
+
+
+
+
+ duplicate a list of mass range.
+
+
+ The data to copy.
+
+
+ A new list which is a copy of the old list.
+ If the old list is null: a new empty list.
+
+
+
+
+ The format accurate mass type.
+
+
+ The result.
+
+ Type to format
+
+
+
+ The format compensation voltage.
+
+
+ The result.
+
+ The scan event to format
+ Precision for energy values
+
+
+
+ The method formats the dependent data flag.
+
+
+ The result.
+
+ The value to format
+
+
+
+ The method formats the detector string.
+
+
+ The result.
+
+ Scan event to format
+ Precision for energy values
+ Indicates that the string is for an Auto Filter.
+
+
+
+ The method format electron capture dissociation type.
+
+
+ The result.
+
+ event to format
+ precision for energy values
+
+
+
+ The method formats the free region.
+
+
+ The result.
+
+ Free region code
+
+
+
+ The method formats the ionization mode.
+
+
+ The result.
+
+ The ionization mode
+
+
+
+ The method formats the mass ranges.
+
+
+ The result.
+
+ The event to format
+ Precision for precursor mass
+ Precision for energy
+
+
+
+ The method formats the MS order.
+
+
+ The result.
+
+ The event to format
+ Mass precision to use
+ Precision for activation energy
+
+
+
+ The method formats the multi photon dissociation type.
+
+
+ The result.
+
+ Event to format
+ Precision for energy
+
+
+
+ The method formats the polarity.
+
+
+ The result.
+
+ Polarity to format
+
+
+
+ The method formats the scan type.
+
+
+ The result.
+
+ Type to format
+
+
+
+ The method formats the scan type index.
+
+
+ The result.
+
+ Type to format
+
+
+
+ The method formats the sector scan.
+
+
+ The result.
+
+ Value to format
+
+
+
+ The method formats the source fragmentation.
+
+
+ The result.
+
+ Event to format
+ Format for energy values
+
+
+
+ format a voltage feature.
+
+
+ The result.
+
+
+ The energy precision format.
+
+
+ The source fragmentations.
+
+ offet from start of fragmentations array
+
+ The volt enable.
+
+
+ The volt type.
+
+
+ The code.
+
+
+
+
+ The method formulates auto filter reaction.
+
+
+ The result.
+
+
+ The reaction.
+
+
+ Format for precursor mass
+
+
+ Format for collision energy
+
+
+
+
+ The method formats the scan data type.
+
+
+ The result.
+
+ Value to format
+
+
+
+ Gets the mass analyzer type filter string.
+
+ The mass analyzer types.
+ the mass analyzer type filter string
+
+
+
+ Convert the mass range to string.
+
+
+ The index into the table of ranges.
+
+
+ The range.
+
+
+ The is dissociation.
+
+
+ The source fragmentation values.
+
+
+ The mass precision format.
+
+
+ The energy precision format.
+
+
+ The .
+
+
+
+
+ Safely Count items in a list. Count is zero for a null list.
+
+ List to count
+ Count of items in the list
+
+
+
+ This method fixes up defaults.
+
+
+ The file version.
+
+
+
+
+ The method reads the reactions array.
+
+
+ The viewer.
+
+
+ Offset into memory map
+
+
+ The file version.
+
+
+ The number of bytes read.
+
+
+
+
+ The method reads the structure.
+
+
+ The viewer.
+
+
+ Offset into memory map
+
+
+ The file version.
+
+
+ The number of bytes read.
+
+
+
+
+ The scan event decorator.
+
+
+
+
+ Gets the (decorated) scan event
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The scan event.
+
+
+
+
+ To the automatic filter string.
+
+ The scan event.
+ The mass precision.
+ The chars maximum.
+ The energy precision.
+ Auto filter string.
+
+
+
+ Gets the run header filter mass precision.
+
+ the run header filter mass precision
+
+
+
+ Gets the base scan event.
+
+
+ The base scan event.
+
+
+
+
+ Gets or sets the dependent data flag.
+
+
+
+
+ Gets or sets the wide band.
+
+
+
+
+ Gets or sets the supplemental activation.
+
+
+
+
+ Gets or sets the multi state activation.
+
+
+
+
+ Gets or sets the accurate mass type.
+
+
+
+
+ Gets or sets the detector.
+
+
+
+
+ Gets or sets the source fragmentation.
+
+
+
+
+ Gets or sets a value which indicates how source fragmentation values are interpreted.
+
+
+
+
+ Gets or sets the compensation voltage.
+
+
+
+
+ Gets or sets the compensation voltage type.
+
+
+
+
+ Gets or sets the turbo scan.
+
+
+
+
+ Gets or sets the lock.
+
+
+
+
+ Gets or sets the multiplex.
+
+
+
+
+ Gets or sets the parameter a.
+
+
+
+
+ Gets or sets the parameter b.
+
+
+
+
+ Gets or sets the parameter f.
+
+
+
+
+ Gets or sets SPS Multi notch (Synchronous Precursor Selection)
+
+
+
+
+ Gets or sets the parameter r.
+
+
+
+
+ Gets or sets the parameter v.
+
+
+
+
+ Gets or sets the ultra.
+
+
+
+
+ Gets or sets the enhanced.
+
+
+
+
+ Gets or sets the electron capture dissociation type.
+
+
+
+
+ Gets or sets the multi photon dissociation type.
+
+
+
+
+ Gets or sets the corona value.
+
+
+
+
+ Gets or sets the detector value.
+
+
+
+
+ Gets or sets the electron capture dissociation.
+
+
+
+
+ Gets or sets the electron transfer dissociation.
+
+
+
+
+ Gets or sets the electron transfer dissociation type.
+
+
+
+
+ Gets or sets the free region.
+
+
+
+
+ Gets or sets the higher energy CID.
+
+
+
+
+ Gets or sets the higher energy CID type.
+
+
+
+
+ Gets or sets the ionization mode.
+
+
+
+
+ Gets or sets a value indicating whether the scan event is custom - true if trailer
+ scan event should be used.
+
+
+
+
+ Gets or sets a value indicating whether the scan event is valid.
+
+
+
+
+ Gets or sets the MS order.
+
+
+
+
+ Gets or sets the mass analyzer type.
+
+
+
+
+ Gets or sets the mass calibrators.
+
+
+
+
+ Gets or sets the mass ranges.
+
+
+
+
+ Gets or sets the multi photon dissociation.
+
+
+
+
+ Gets or sets the name.
+
+
+
+
+ Gets or sets the photo ionization.
+
+
+
+
+ Gets or sets the Polarity.
+
+
+
+
+ Gets or sets the pulsed q dissociation.
+
+
+
+
+ Gets or sets the pulsed q dissociation type.
+
+
+
+
+ Gets or sets the reactions.
+
+
+
+
+ Gets or sets the scan data type.
+
+
+
+
+ Gets or sets the scan type.
+
+
+
+
+ Gets or sets the scan type index. Scan Type Index indicates the segment/scan event for this filter scan event.
+ HIWORD == segment, LOWORD == scan type
+
+
+
+
+ Gets or sets the sector scan.
+
+
+
+
+ Gets or sets the source fragmentation mass ranges.
+
+
+
+
+ Gets or sets the source fragmentations.
+
+
+
+
+ The scan event editor.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The scan event.
+
+
+
+
+ The scan index.
+
+
+
+
+ Gets or sets the scan index struct info.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The viewer.
+ The size.
+ The data offset.
+ The decoder.
+
+
+
+ Gets the base peak intensity.
+
+
+
+
+ Gets the base peak mass.
+
+
+
+
+ Gets the data offset.
+
+
+
+
+ Gets the high mass.
+
+
+
+
+ Gets a value indicating whether is scan type index specified.
+
+
+
+
+ Gets the low mass.
+
+
+
+
+ Gets the number packets.
+
+
+
+
+ Gets the packet type.
+
+
+
+
+ Gets meta data about the packet type.
+
+
+
+
+ Gets the scan number.
+
+
+
+
+ Gets the scan segment.
+
+
+
+
+ Gets the scan type index.
+
+
+
+
+ Gets the start time.
+
+
+
+
+ Gets the tic.
+
+
+
+
+ Gets the trailer offset.
+
+
+
+
+ Gets the raw (unprocessed) value of the scan type index.
+
+
+
+
+ Loads the specified viewer.
+
+ The viewer.
+ The size.
+ The data offset.
+ The decoder.
+
+
+
+ Provides methods to read scan indices from raw file.
+ Scan index serves as the key to retrieve the scan data packet.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The number of spectrum.
+
+
+
+ Gets the at the specified index.
+
+
+ The .
+
+ The index.
+ Scan index
+
+
+
+ Gets the retention time from the index, with minimal decoding
+
+
+ The retention time
+
+
+
+ Gets the number of spectrum.
+
+
+
+
+ Load (from file).
+
+ The viewer (memory map into file).
+ The data offset (into the memory map).
+ The file revision.
+
+ The number of bytes read
+
+
+
+
+ Gets the size of scan index structure by file version.
+
+ The file version.
+ Struct size specified by the file version.
+
+
+
+ Gets the decoder.
+
+ The file version.
+ A method that will reads the scan index struct from a byte array and convert it back to struct.
+
+
+
+ Reads the scan index structure from a byte array and convert it to struct.
+
+ Scan index in byte array.
+ Scan index struct.
+
+
+
+ Reads the scan index struct2 from a byte array and convert it to struct.
+
+ Scan index in byte array.
+ Scan index struct.
+
+
+
+ Reads the scan index struct1 from a byte array and convert it to struct.
+
+ Scan index in byte array.
+ Scan index struct.
+
+
+
+ Releases unmanaged and - optionally - managed resources.
+
+ true to release both managed and unmanaged resources; false to release only unmanaged resources.
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ The trailer scan events.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader Id.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Loader ID
+ The run header.
+
+
+
+ Initializes a new instance of the class.
+
+ The loader ID
+ The run header.
+ The file revision.
+
+
+
+ Gets the scan index count.
+
+
+
+
+ Gets the unique events count.
+
+
+
+
+ Gets the file revision.
+
+
+
+
+ Gets the header file map name.
+ It's only meaningful in Generic data.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Decode scan events and add to a queue to be sorted
+
+
+
+
+
+
+
+
+
+
+ The get event.
+
+
+ The index.
+
+
+ The .
+
+
+ Thrown if the index is out of range.
+
+
+
+
+ Gets the index of the unique events.
+
+ The index.
+ The index
+
+
+
+ load the events
+
+
+ The scan events.
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+
+ The .
+
+
+
+
+ dispose of object.
+
+
+ true if disposing.
+
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ The UV scan index.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The device' memory mapped stream viewer.
+
+ Size of the UV scan index struct
+ The data offset.
+ A method that will reads the UV scan index struct from a byte array and convert it back to struct.
+
+
+
+ Gets or sets the UV scan index structure information.
+
+
+
+
+ Gets the data offset.
+
+
+
+
+ Gets the frequency.
+
+
+
+
+ Gets a value indicating whether is uniform time.
+
+
+
+
+ Gets the long wavelength.
+
+
+
+
+ Gets the number of channels.
+
+
+
+
+ Gets the number packets.
+
+
+
+
+ Gets or sets the packet type.
+
+
+
+
+ Gets the scan number.
+
+
+
+
+ Gets the short wavelength.
+
+
+
+
+ Gets the start time.
+
+
+
+
+ Gets or sets the TIC.
+
+
+
+
+ Loads the specified viewer.
+
+ The viewer.
+ The size.
+ The data offset.
+ The decoder.
+
+
+
+ Provides methods to read UV scan indices from raw file.
+ UV scan index serves as the key to retrieve the scan data packet.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The size.
+
+
+
+ Load UV scan indices from raw file.
+
+ The viewer (memory map into file).
+ The data offset (into the memory map).
+ The file revision.
+
+ The number of bytes read
+
+
+
+
+ Gets the at the specified index.
+
+ The index.
+ UV scan index
+
+
+
+ Gets the number of spectrum.
+
+
+
+
+ Gets the size of UV scan index structure by file version.
+
+ The file version.
+ Struct size specified by the file version
+
+
+
+ Gets the decoder.
+
+ The file version.
+ A method that will reads the UV scan index struct from a byte array and convert it back to struct.
+
+
+
+ Reads the UV scan index structure old from a byte array and
+ convert it back to struct.
+
+ UV Scan index struct in byte array.
+ UV scan index struct.
+
+
+
+ Reads the UV scan index structure old from a byte array and
+ convert it back to struct.
+
+ UV Scan index struct in byte array.
+ In struct format
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ The sequence row.
+
+
+
+
+ The number of extra user columns.
+ added at rev 58...
+
+
+
+
+ The number of user texts.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the barcode.
+
+
+
+
+ Gets or sets the barcode status.
+
+
+
+
+ Gets or sets the calibration level
+
+
+
+
+ Gets or sets the calibration file.
+
+
+
+
+ Gets or sets the comment
+
+
+
+
+ Gets or sets the concentration or dilution factor
+
+
+
+
+ Gets the extra user columns.
+
+
+
+
+ Gets or sets the injection volume
+
+
+
+
+ Gets or sets the instrument.
+
+
+
+
+ Gets or sets the internal standard amount
+
+
+
+
+ Gets or sets the method.
+
+
+
+
+ Gets or sets the path.
+
+
+
+
+ Gets or sets the raw file name.
+
+
+
+
+ Gets the format revision of this object
+
+
+
+
+ Gets or sets the sequence row number
+
+
+
+
+ Gets or sets the sample id
+
+
+
+
+ Gets or sets the sample name
+
+
+
+
+ Gets or sets the (application specific) sample type
+
+
+
+
+ Gets or sets the sample volume
+
+
+
+
+ Gets or sets the sample weight
+
+
+
+
+ Gets the user texts.
+
+
+
+
+ Gets or sets the short vial string (obsolete?)
+
+
+
+
+ Gets the sequence row struct, only needed internally for writing raw file.
+
+
+
+
+ The load.
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The .
+
+
+
+
+ The sorted status log collection.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the count (of sorted items).
+ This may be lower than the number of records in the file
+ as duplicate time values are eliminated.
+
+
+
+
+ Add a status blob.
+
+
+ The retention time.
+
+
+ The status blob to add.
+
+ Set if this is the last log entry
+
+
+
+ Find the log entry nearest to a given time.
+
+
+ The retention time.
+
+
+ The .
+
+
+
+
+ The method gets a list of status log entries based on the index.
+
+
+ The index into the status log entry (i.e. index into a key value pair).
+
+
+ The list of status log entries based on the index.
+
+
+
+
+ get a blob entry, with time stamp.
+
+
+ The index.
+
+
+ A tuple, containing time (float) and LabelValueBlob.
+
+
+
+
+ get a blob entry, with time stamp.
+
+
+ The index.
+
+
+ A tuple, containing time (float) and LabelValueBlob.
+
+
+
+
+ get a blob entry, with time stamp.
+
+ The retention time
+
+ A tuple, containing time (float) and LabelValueBlob.
+
+
+
+
+ get item at index
+
+
+ The index.
+
+
+ The .
+
+ index out of range
+
+
+
+
+ The sort keys.
+
+
+
+
+ clear the list
+
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ The spectrum enhancement options.
+
+
+
+
+ Spectrum enhancement binary data.
+ Defined a public fields, matching C++ definition
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Load (from file).
+
+
+ The viewer (memory map into file).
+
+
+ The data offset (into the memory map).
+
+
+ The file revision.
+
+
+ The number of bytes read
+
+
+
+
+ Gets a value indicating whether the refine (combine) section enabled
+
+
+
+
+ Gets a value indicating we using refine, combine or threshold
+
+
+
+
+ Gets the refine window size
+
+
+
+
+ Gets he refine noise threshold
+
+
+
+
+ Gets the combine take points across peak top
+
+
+
+
+ Gets the combine background scaling factor
+
+
+
+
+ Gets the Region 1 method: at peak or use previous
+
+
+
+
+ Gets the start point before the peak top
+
+
+
+
+ Gets the previous points in background
+
+
+
+
+ Gets Region 2 method: at peak or use next
+
+
+
+
+ Gets Points after peak top
+
+
+
+
+ Gets the next point in background
+
+
+
+
+ Gets the cut off threshold
+
+
+
+
+ The status log is a list of label value blobs indexed by retention time.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+ The run header.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+ The file revision.
+
+
+ The run header.
+
+
+
+
+ Gets the count.
+
+
+
+
+ Gets or sets the data descriptors.
+
+
+
+
+ Gets the file revision.
+
+
+
+
+ Gets the header file map name.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ The method performs a binary search to find the status entry that is closest to the given retention time.
+
+
+ The retention time.
+
+
+ The status entry containing the of label value pairs for the retention time.
+ If there are no entries in the log, it will an empty list.
+
+
+
+
+ The method gets all the log entries' value pair at the specified index.
+
+
+ The index.
+
+
+ The all the log entries' value pair at the specified index.
+
+
+
+
+ get (raw) status log entry by index.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ get (raw) status log entry by index into the sorted (data validated) collection
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ Gets the (raw) status log entry by retention time.
+
+ The retention time.
+ The log at the given time.
+
+
+
+ An internal representation of log entry.
+
+
+
+
+ Gets or sets the time.
+
+
+
+
+ Gets or sets the values.
+
+
+
+
+ Gets the labels and index positions of the status log items which may be plotted.
+ That is, the numeric items.
+ Labels names are returned by "Key" and the index into the log is "Value".
+
+
+ The items which can be plotted.
+
+
+
+
+ Load (from file).
+
+ The viewer (memory map into file).
+ The data offset (into the memory map).
+ The file revision.
+
+ The number of bytes read
+
+
+
+
+ Loads the data descriptors.
+
+ The viewer.
+ The data offset.
+ The file revision.
+ True load data succeed, false otherwise
+
+
+
+ Gets the status log for a given index into the set of logs.
+ This returns the log and it's time stamp.
+
+ Index into table of logs (from 0 to RunHeader.Number of StatusLog - 1)
+ The log values for the given index
+
+
+
+ The method calls to get an
+ object for the memory mapped view stream that represents the status log's "blob". It will then
+ divide the blob into individual status log entries without actually reading in the status log items.
+
+ The viewer.
+ The data offset.
+ The file revision.
+ True load status log entries succeed, false otherwise
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+ True refresh succeed, false otherwise.
+
+
+
+ Releases unmanaged and - optionally - managed resources.
+
+ true to release both managed and unmanaged resources; false to release only unmanaged resources.
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ The status log entry which consists of the retention time and the value pairs.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The time.
+
+
+ The value pairs.
+
+
+
+
+ Gets the retention time.
+
+
+
+
+ Gets the value pairs.
+
+
+
+
+ The status log key.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The retention time.
+
+
+ The index.
+
+
+
+
+ Gets the blob index.
+
+
+
+
+ Gets the retention time.
+
+
+
+
+ The status log key comparer.
+
+
+
+
+ The compare.
+
+
+ The x.
+
+
+ The y.
+
+
+ The .
+
+
+
+
+ The summary report, as contained in Xcalibur PMD file
+
+
+
+
+ The summary report template info.
+ Defines the name of a report, and file format type of the report.
+
+
+
+
+ Load report data
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The length of data loaded
+
+
+
+
+ Gets or sets the name of the report
+
+
+
+
+ Gets a value indicating whether report is enabled
+
+
+
+
+ Gets the file save format of the report
+
+
+
+
+ The user id stamp wrapper class wraps the user id structure read from the raw file.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The structure.
+
+
+
+
+ Gets or sets the date and time.
+
+
+
+
+ Gets or sets the user name.
+
+
+
+
+ Gets or sets the windows login.
+
+
+
+
+ The method converts the raw file time structure to a object.
+
+
+
+
+ The wrapper class for the virtual controller information.
+
+
+
+
+ Initializes a new instance of the class by
+ copying from the structure.
+
+
+ The structure to copy from.
+
+
+
+
+ Gets the offset.
+
+
+
+
+ Gets the virtual device index.
+
+
+
+
+ Gets the virtual device type.
+
+
+
+
+ The device base class for all type of devices - UV, PDA, MS, Analog, and Status.
+
+
+
+
+ Gets or sets a value indicating whether this was initialized when the file was in acquisition.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Type of the device.
+ Index of the registered.
+ Name of the raw file.
+ The file revision.
+
+
+
+ Initializes a new instance of the class.
+
+ raw file loader ID
+
+ The device info.
+
+
+ The main MMF viewer.
+
+
+ The file version.
+
+ Flag indicates that it's in acquisition or not
+ Flag indicates that the reading data is old LCQ data or not
+
+
+
+ This must be called at the start of any derived class initlaize sequence.
+ Minimial construction work is done before this initializrion, incase the device never used by this app instance.
+
+
+
+
+ Gets or sets the absolute position of the end of this device data.
+
+
+
+
+ Gets the device type.
+
+
+
+
+ Gets the error log entries.
+
+
+
+
+ Gets the instrument id.
+
+
+
+
+ Gets or sets the run header.
+
+
+
+
+ Gets or sets the status log entries.
+
+
+
+
+ Gets the file revision.
+
+
+
+
+ Gets the header file map name.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ Gets the raw file information.
+
+
+
+
+ Gets the loader id.
+
+
+
+
+ Gets the raw data viewer.
+
+
+
+
+ Gets the offset of the end of device common info.
+
+
+
+
+ The method gets the scan index for the spectrum.
+
+ The spectrum.
+ Scan index
+
+
+
+ The method gets the retention time for the scan number.
+
+
+ The scan number.
+
+
+ The retention time for the scan number.
+
+
+ If the scan number is not in range.
+
+
+
+
+ Initalize device after construction, for use by Lazy pattern.
+ Must be implemented in derived devices.
+
+ The initialized device
+
+
+
+ Gets the segment peaks.
+
+
+ The scan number.
+
+
+ The number segments.
+
+
+ The number all peaks.
+
+
+ The packet.
+
+
+ Flag to indicate the returning peak data should include reference and exception data or not.
+
+
+ Segment data
+
+
+
+
+ Gets the packet.
+
+ The scan number.
+ Flag to indicate the returning peak data should include reference and exception data or not.
+ For UV device only, negative one (-1) for getting all the channel data by the given scan number
+ True if noise and baseline data is required
+ Return the peak data packet
+
+
+
+ The method loads the common device data structures from MMF view stream.
+
+ The viewer.
+ The data offset.
+ The file revision.
+ The number of read bytes
+
+
+
+ Initialize the internal fields in acquisition mode.
+
+ Name of the raw file.
+ The file revision.
+
+
+
+ Initials the non acquisition.
+
+ The device information.
+ Name of the raw file.
+ The file revision.
+
+
+
+ Initials the old LCQ XCALIBUR file.
+
+
+
+
+ Initializes the buffer information.
+
+
+
+
+ Disposes the buffer information and temporary file.
+
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+ True refresh succeed, false otherwise.
+
+
+
+ Provide method to create device objects
+
+
+
+
+ Gets the device.
+
+ raw file loader ID
+ The device information.
+ The viewer.
+ The file version.
+ if set to true [is in acquisition].
+ Device object
+
+
+
+ The instrument id.
+ This records data about an instrument (such as data units).
+ It does not contain any scans.
+ There is one record, written before data acquisition starts.
+ It never changes.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+ The map name.
+
+
+ The file revision.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets a value indicating whether this file has detected an error.
+ If this is false: Other error properties in this interface have no meaning.
+
+
+
+
+ Gets or sets the absorbance unit.
+
+
+
+
+ Gets the channel labels.
+
+
+
+
+ Gets the flags.
+ The purpose of this field is to contain flags separated by ';' that
+ denote experiment information, etc. For example, if a file is acquired
+ under instrument control based on an experiment protocol like an ion
+ mapping experiment, an appropriate flag can be set here.
+ Legacy flags (from LCQ system)
+ 1. TIM - total ion map
+ 2. NLM - neutral loss map
+ 3. PIM - parent ion map
+ 4. DDZMAP - data dependent zoom map
+ Newer flags proposed:
+ high_res_precursors - MS has accurate mass precursors
+
+
+
+
+ Gets the hardware rev.
+
+
+
+
+ Gets a value indicating whether the ID is valid.
+
+
+
+
+ Gets the model.
+
+
+
+
+ Gets the name.
+
+
+
+
+ Gets the serial number.
+
+
+
+
+ Gets the software rev.
+
+
+
+
+ Gets the x axis.
+
+
+
+
+ Gets the y axis.
+
+
+
+
+ Gets a value indicating whether this is a TSQ quantum file.
+
+
+
+
+ Gets the file revision.
+
+
+
+
+ Gets the header file map name.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ load (from file)
+
+
+ The viewer.
+
+
+ The data offset.
+
+
+ The file revision.
+
+
+ The number of bytes loaded.
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+ True refresh succeed, false otherwise
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ The mass spectrometer device.
+
+
+
+
+ Initializes a new instance of the class.
+
+ raw file loader ID
+
+ The device info.
+
+
+ The viewer.
+
+
+ The file version.
+
+ Set if this file is being created
+ Set if this file version is from a legacy data system
+
+
+
+ Initializer, desigened for use by Lazy load pattern.
+ Base object can be created to perform version checks.
+ When device needs to be used for the first time, Initialize is called.
+
+ The initialized device
+
+
+
+ Gets the number scan events.
+
+
+ The number scan events.
+
+
+
+
+ Gets the number scan event segments.
+
+
+ The number scan event segments.
+
+
+
+
+ Sets the scan event segments.
+
+
+
+
+ Gets or sets the trailer extras.
+
+
+ The trailer extras.
+
+
+
+
+ Gets the trailer extras data descriptors.
+
+
+
+
+ Gets or sets the trailer scan events.
+
+
+
+
+ Gets or sets the tune data.
+
+
+ The tune data.
+
+
+
+
+ Gets the tune method data descriptors.
+
+
+
+
+ Gets or sets the packet viewer.
+
+
+
+
+ Sets the precursor ion tolerance.
+
+ The scan event.
+ if set to true [b quantum].
+ The filter mass precision.
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ This method get the noise, baselines and frequencies data.
+ This will typically used by the application when exporting mass spec data to a raw file.
+ The advanced packet data is for LT/FT formats only.
+
+ The scan number.
+ Set if centroid data should include the reference and exception peaks
+ Returns the IAdvancedPacketData object.
+ Thrown if encountered an error while retrieving LT/FT's data, i.e. noise data and frequencies.
+
+
+
+ The method gets the auto filters.
+
+
+ The collection of auto filters.
+
+
+
+
+ Gets the compound name by scan filter.
+
+ The scan filter string.
+ The compound names
+
+
+
+ Gets the compound names.
+
+ The compound names
+
+
+
+ Add the names of all compounds within a scan number range to a set.
+
+ Set to update
+ First scan to examine
+ Last scan to examine
+
+
+
+ Gets the filters.
+
+ The first spectrum.
+ The last spectrum.
+ The list of filters for the given scan range
+
+
+
+ The method gets the label peaks.
+ Caller may have already obtained some items (scan index and event)
+ If not: these are passed as null, and will be obtained within this
+ call as needed.
+
+
+ The scan number.
+
+ set if calibration reference and exception peaks should be returned
+ True if noise and baseline data is required
+ optional: scan event (to save reading twice)
+ optional: data about this scan
+
+ The collection of s.
+
+
+ Thrown if encountered an error while retrieving label peaks.
+
+
+
+
+ get scan data from mass spec.
+
+
+ The scan number.
+
+
+ The include reference and exception data.
+
+
+ The additional scan data features.
+
+
+ The scan index.
+
+
+ The scan event.
+
+
+ The .
+
+ For data types which we cannot decode
+
+
+
+
+ Find the next scan matching a filter
+
+ start to start from
+ Scan must pass this filter
+ the next scan matching the filter criteria from the data file.
+ If the number of filters passed in is zero, it simply returns the next scan
+ after position. The search for the next scan always starts at scan position + 1.
+
+
+
+ The method gets the object that implements for the scan number.
+
+
+ The scan number.
+
+ true if (calibration) ref and exception peaks should be included
+ For UV device only, negative one (-1) for getting all the channel data by the given scan number
+ True if noise and baseline data is required
+
+ The implementation.
+
+
+ Thrown if the packet type is not implemented.
+
+
+
+
+ Get the previous scan index.
+
+
+ The cur position (scan).
+
+
+ The scan filter helper.
+
+
+ The previous scan matching filter. -1 if no matching scans.
+
+
+
+
+ Gets the scan dependents for the specified scan number and filter precision
+
+ The scan number.
+ The filter precision.
+ containing master scan dependents information
+
+
+
+ The method gets the scan event for the scan number.
+
+
+ The scan number.
+
+
+ The object for the scan number.
+
+
+ If there are issues retrieving the scan event (e.g. the scan number is out of range).
+
+
+
+
+ The method gets the scan events for a segment.
+
+
+ The segment.
+
+
+ The list of scan events.
+
+
+ Specified segment is out of range.
+
+
+
+
+ Gets the scan filters from compound names.
+
+ Name of the compound.
+ The filters for the given compound
+
+
+
+ The method gets the scan index for the scan number.
+
+
+ The scan number.
+
+
+ The for the scan number.
+
+
+ If the scan number is not in range.
+
+
+
+
+ The method gets the retention time for the scan number.
+
+
+ The scan number.
+
+
+ The retention time for the scan number.
+
+
+ If the scan number is not in range.
+
+
+
+
+ Get simplified labels.
+
+
+ The scan number.
+
+
+ The include ref peaks.
+
+
+ The internal event.
+
+
+ The scan index.
+
+
+ The simplified (mass/intensity) data.
+
+
+
+
+ Gets the extended scan data for a scan
+
+ scan number who's data is needed
+ The extended data
+
+
+
+ The method gets trailer extra for the scan number (1 relative)
+
+
+ The scan number - one relative.
+
+
+ The label value pairs for the trailer extra at the scan number.
+
+
+ If the scan number is not in range or no data was found.
+
+
+
+
+ This method gets one field from trailer extra for the scan number (1 relative)
+
+
+ The scan number - one relative.
+
+ index into available items (as per trailer extra header)
+
+ The value pairs for the trailer extra item at the scan number.
+
+
+ If the scan number is not in range or no data was found.
+
+ Thrown when item is not an available filed
+
+
+
+ This method gets all fields from trailer extra for the scan number
+
+
+ The scan number.
+
+
+ The values for the trailer extra at the scan number.
+
+
+ If the scan number is not in range or no data was found.
+
+
+
+
+ The method gets the tune data at the index (0 relative).
+
+
+ The index - 0 relative.
+
+
+ The list of s for the tune data.
+
+
+ If the index is out of range.
+
+
+
+
+ The method gets the tune data at the index (0 relative).
+
+
+ The index - 0 relative.
+
+
+ The list of s for the tune data.
+
+
+ If the index is out of range.
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+
+ True if refreshed
+
+
+
+
+ Get scan event with valid scan number.
+
+
+ The scan index.
+
+
+ The .
+
+ Thrown if event cannot be read
+
+
+
+
+ Test if a scan number is valid.
+
+
+ The scan number.
+
+
+ True if valid.
+
+
+
+
+ create chromatograms.
+
+
+ The settings.
+
+
+ The time range.
+
+
+ The tolerance options.
+
+
+ set if reference and exception peaks should be included
+
+
+ The generated data.
+
+
+
+
+ create chromatograms.
+
+
+ The settings.
+
+
+ The time range.
+
+
+ set if reference and exception peaks should be included
+
+
+ The generated data.
+
+
+
+
+ Create legacy format chromatograms, where all chromatograms share the same time range
+
+ Settings for each chromatogram
+ Common start and end time
+ Mass tolerance settings
+ When true: Include base peak masses for all scans
+ Set if reference peaks are included in the chromatogram
+ Definition of chromatograms to build
+
+
+
+ create a flat (1D array) chromatogram list, out of the collections per trace
+
+
+ The deliveries.
+
+
+ The flat list
+
+
+
+
+ Gets the compound names, for all scans within range.
+
+ first scan to test
+ last scan to test
+ The compound names
+
+
+
+ The method reads the scan index collection.
+
+
+ Memory map of file
+
+
+ Offset into memory map
+
+
+ The file version.
+
+
+ Thrown if the number of scan index records is less than the number of spectra.
+
+
+ The number of bytes decoded
+
+
+
+
+ Updates the run header structure.
+
+ The run header.
+ The updated header
+
+
+
+ Add a compound name.
+
+
+ The sorted compound names set.
+
+
+ The scan filter helper.
+
+
+ The scan event.
+
+
+
+
+ get frequencies.
+
+
+ The packet.
+
+
+ The (FT) frequency data
+
+
+
+
+ Base peak data has the base peak mass recorded as the "intensity" for each scan
+ Find the matching scans, and fill in this for the data
+
+ filtered chromatogram, needing base peaks
+ Base peak masses
+
+
+
+ Configure the generator to get data from the current file's MS data.
+
+ Generator to configure
+ True if this kind of chromatogram will need scan data (for example XIC).
+ Tic chromatograms do not need the scan data.
+ All scan filters are the same
+ The filter used for all chromatograms
+ true if (calibration) ref and exception peaks should be included
+
+
+
+ Create a set of jobs for legacy chromatogram generation,
+ where all chromatograms share the same start and end time.
+
+ Definition of chromatograms needed
+ Number of chromatograms to create
+ Start time of chromatograms
+ End time of chromatograms
+ Defines how mass tolerance is applied to mass ranges,
+ where start and end mass are identical (within 1.0E-6):
+ Default: null, range is +/- 0.5 from the low mass.
+ If not null, delta mass value is calculated from low mass and tolerance, and
+ a range is created as low mass +/- delta.
+ When low and high mass are different, this parameter is unused.
+ If true: add a job to get base peak masses
+ Set if all chromatograms are using the same scan filter
+ When not null (when all filter are same), this is the common filter
+ used by all chromatograms.
+ Configured list of chromatograms to be generated
+
+
+
+ Design a chromatogram point builder which just gets the Tic value from each scan header.
+
+ Start time of chromatogram.
+ End time of chromatogram.
+ Tic chromatogram generator
+
+
+
+ Dispose of the buffer info and temp files.
+
+
+
+
+ extend chromatogram settings (to larger interface).
+
+
+ The settings.
+
+
+ The settings
+
+
+
+
+ fix up event codes.
+
+
+ The events for segment.
+
+
+ The segment.
+
+
+
+
+ The method get scans event with a validated index to the scan index array.
+
+
+ The index to the scan index array.
+
+
+ The .
+
+
+ Thrown if we cannot get the event.
+
+
+
+
+ The get validated trailer extra blob.
+
+
+ The scan number.
+
+
+ The .
+
+ Thrown on null trailer blob
+
+
+
+
+ Validates a scan number
+
+
+ The scan number.
+
+
+ The validated scan number
+
+
+ If the scan number is out of range.
+
+
+
+
+ Initials the in acquisition.
+
+ The file revision.
+
+
+
+ Initializes the buffer information.
+
+
+
+
+ create a buffer info, for a part of this file.
+
+
+ The name of the buffer
+
+
+ The .
+
+
+
+
+ The method loads the MS device from file.
+
+ Memory map of file
+ Offset within map
+ The file version.
+
+ If the run header is null.
+
+
+
+
+ Create the list of all MS scans.
+
+
+ The list of scan headers.
+
+
+
+
+ Initials the non acquisition.
+
+ Name of the raw file.
+ The file revision.
+
+
+
+ Reads the scan events.
+
+ The viewer.
+ The data offset.
+ The file version.
+ The scan events
+
+
+
+ The method reads the segments.
+
+ Memory map of file
+
+ Offset into memory map
+
+
+ The file version.
+
+
+ The number of bytes read
+
+
+
+
+ throw scan number range exception.
+
+ Always throw scan number range exception.
+
+
+
+
+ validate count.
+
+
+ The expected count.
+
+
+ The collection.
+
+
+ The message.
+
+ Thrown if cunt not as expected
+
+
+
+
+ Advanced LT/FT formats only.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The centroid reader.
+
+
+ The frequencies.
+
+
+
+
+ Gets the centroid data information.
+
+
+
+
+ Gets the frequencies
+
+
+
+
+ Gets or sets the noise data - noise and baseline.
+
+
+
+
+ Class to permit parallel conversion of scan events.
+ (For resaerch: Can be made to implement IExecute to compare pefformance of
+ paralell small tasks)
+
+
+
+
+ Gets or sets the event to be converted.
+
+
+
+
+ Gets or sets the converted filter.
+
+
+
+
+ Class to convert filters into strings.
+ Designed to permit parallel conversions.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The event to convert.
+
+
+
+
+ Gets the converted filter.
+
+
+
+
+ execute the conversion
+
+
+
+
+ Get the scan filters for each of the compound names.
+
+
+ The compound names.
+
+
+ The set of filters for each name.
+ result [n] is the array of filters for compound name [n]
+
+
+
+
+ The run header.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Loader instance Id.
+
+
+
+ Initializes a new instance of the class.
+
+ Loader instance Id
+ The run header.
+
+
+
+ Initializes a new instance of the RunHeader class for real time reading.
+
+ Loader instance Id
+ Name of the map.
+ The file revision.
+ True if it's in device writer creation, otherwise false
+ True if it's in reading mode, otherwise false
+
+
+
+ Gets the software revision.
+
+
+
+
+ Gets or sets the start time.
+
+
+
+
+ Gets or sets the end time.
+
+
+
+
+ Gets the first spectrum.
+
+
+
+
+ Gets the last spectrum.
+
+
+
+
+ Gets or sets the low mass.
+
+
+
+
+ Gets or sets the high mass.
+
+
+
+
+ Gets the maximum intensity.
+
+
+
+
+ Gets or sets the max integrated intensity.
+
+
+
+
+ Gets or sets the device file offset.
+
+
+
+
+ Gets or sets the device index.
+
+
+
+
+ Gets or sets the device type.
+
+
+
+
+ Gets the error log filename.
+
+
+
+
+ Gets or sets the error log position.
+
+
+
+
+ Gets or sets the expected run time.
+
+
+
+
+ Gets or sets the filter mass precision.
+
+
+
+
+ Gets the instrument id file name.
+
+
+
+
+ Gets the instrument scan events file name.
+
+
+
+
+ Gets or sets a value indicating whether is in acquisition.
+
+
+
+
+ Gets or sets the mass resolution.
+
+
+
+
+ Gets the number of error log entries.
+
+
+
+
+ Gets or sets the number of spectra.
+
+
+
+
+ Gets the number of status log entries.
+
+
+
+
+ Gets or sets the number of trailer extras.
+
+
+
+
+ Gets or sets the number of trailer scan events.
+
+
+
+
+ Gets or sets the number of tune data.
+
+
+
+
+ Gets or sets the packet position.
+
+
+
+
+ Gets the run header position.
+
+
+
+
+ Gets the scan events filename.
+
+
+
+
+ Gets the spectra filename.
+
+
+
+
+ Gets or sets the spectrum position.
+
+
+
+
+ Gets the status log filename.
+
+
+
+
+ Gets the status log header filename.
+
+
+
+
+ Gets or sets the status log position.
+
+
+
+
+ Gets the tolerance unit.
+
+
+
+
+ Gets the trailer extra filename.
+
+
+
+
+ Gets or sets the trailer extra position.
+
+
+
+
+ Gets the trailer header filename.
+
+
+
+
+ Gets the trailer scan events filename.
+
+
+
+
+ Gets or sets the trailer scan events position.
+
+
+
+
+ Gets the tune data filename.
+
+
+
+
+ Gets the tune data header filename.
+
+
+
+
+ Gets or sets the comment 1.
+
+
+
+
+ Gets the (internal) description tag.
+
+
+
+
+ Gets or sets the comment 2.
+
+
+
+
+ Gets the data packet filename.
+
+
+
+
+ Gets the file revision.
+
+
+
+
+ Gets the header file map name.
+ It's only meaningful in Generic data.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ Gets the internal run header structure.
+
+
+
+
+
+ Loads the specified viewer.
+
+ The viewer.
+ The data offset.
+ The file revision.
+ The number of read bytes
+
+
+
+ Copies the specified source.
+
+ The source.
+
+
+
+ Copies the run header structure.
+
+ The run header structure.
+
+
+
+ Initializes this instance.
+
+ sets the revision of the device data format
+
+
+
+ Increments the number of status log.
+
+ The incremented value
+
+
+
+ Increments the number of error log.
+
+ The incremented value
+
+
+
+ Increments the number of trailer extra.
+
+ The incremented value
+
+
+
+ Increments the number of tune data.
+
+ The incremented value
+
+
+
+ Increments the trailer scan events.
+
+ The incremented value
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+ True all in-acquisition data are remapped successfully; false otherwise.
+
+
+
+ Refresh data from existing map
+
+ true if OK
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ The status device.
+ This device only has status logs.
+ Use implementation of status logs within base class (UVDevice)
+
+
+
+
+ Initializes a new instance of the class.
+
+ raw file loader ID
+ The device information.
+ The viewer.
+ The file version.
+ if set to true [is in acquisition].
+ Set if legacy file format
+
+
+
+ The UV device.
+
+
+
+
+ Initializes a new instance of the class.
+
+ raw file loader ID
+
+ The device info.
+
+ Raw file name
+ The file version.
+ Flag indicates that it's in acquisition or not
+ Flag indicates that it is an old LCQ data
+
+
+
+ Gets or sets the _packet viewer.
+
+
+
+
+ get the scan index.
+
+
+ The spectrum.
+
+
+ The .
+
+
+
+
+ The method gets the retention time for the scan number.
+
+
+ The scan number.
+
+
+ The retention time for the scan number.
+
+
+ If the scan number is not in range.
+
+
+
+
+ get the UV index.
+
+
+ The spectrum number.
+
+
+ The .
+
+
+
+
+ The method gets the packet.
+
+
+ The scan number.
+
+ Flag indicates that it should include reference and exception data or not
+ For UV device only, negative one (-1) for getting all the channel data by the given scan number
+ True if noise and baseline data is required. Not used for UV types
+ Peak data packet
+
+
+
+ The method loads the UV device information.
+
+ Memory map accessor
+ Data offset
+ Raw file version
+ The number of read bytes
+
+
+
+ Gets the channel scan packet.
+
+ Index of the scan.
+ The channel number.
+ Data from the channel
+
+
+
+ The method gets a scan of PDA data.
+ Intensities are scaled (to micro AU) depending on logged units of the device.
+ The Tic value is also adjusted in the index.
+
+ Memory map into file
+
+ The scan index.
+
+
+ The Scaled PDA scan data.
+
+
+
+
+ The method gets a valid index into scan indices.
+
+
+ The spectrum.
+
+
+ The .
+
+
+ Thrown if the spectrum is out of range.
+
+
+
+
+ Fixes up unknown absorbance unit.
+
+ Index of the scan.
+
+
+
+ Fixes up unknown absorbance unit for channel.
+
+
+
+
+ Fixes up unknown absorbance unit for PDA.
+
+
+
+
+ Initializes the buffer information.
+
+ The loader identifier.
+
+
+
+ Disposes the buffer information and temporary files.
+
+
+
+
+ The method disposes all the memory mapped files still being tracked (i.e. still open).
+
+
+
+
+ Re-read the current file, to get the latest data.
+ Only meaningful if the object has an implied backing file (such as IO.DLL and .raw files)
+ No-op otherwise
+
+
+ The .
+
+
+
+
+ The empty packet.
+ For cases where there is no matching data in the file.
+
+
+
+
+ Gets the segmented peaks.
+
+
+
+
+ Gets the scan index.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The index.
+
+
+
+
+ Generates low overhead objects, which multiple threads
+ can use to read from the same raw file in parallel.
+ Access is typically lockless for 64 bit code, with completed files.
+ Lock will occur for files which are in acquisition.
+
+
+
+
+ Prevents a default instance of the class from being created.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Name of the file.
+ Error empty null file name.
+
+
+
+ This interface method creates a thread safe access to raw data, for use by a single thread.
+ Each time a new thread (async call etc.) is made for accessing raw data, this method must be used to
+ create a private object for that thread to use.
+ This interface does not require that the application performs any locking.
+ In some implementations this may have internal locking (such as when based on a real time file, which is continually changing in size),
+ and in some implementations it may be lockless.
+
+
+ An interface which can be used by a thread to access raw data
+
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+
+
+
+ Provides commonly used functions for raw file reader and writer.
+
+
+
+
+ The struct size lookup.
+
+
+
+
+ Compares the doubles.
+
+ value A
+ value B
+ The tolerance.
+
+ Return an that has one of three values:
+
+
+ Value
+ Meaning
+
+ Less than zero
+ The current instance precedes the object specified by the CompareTo method in the sort order.
+ Zero
+
+ This current instance occurs in the same position in the sort order as the object specified by the
+ CompareTo method.
+
+ Greater than zero
+ This current instance follows the object specified by the CompareTo method in the sort order.
+
+
+
+
+
+ Loads the bytes from file.
+
+ The viewer.
+ The file revision.
+ The start position.
+ The size of object.
+ The sizes.
+ results in byte array
+
+
+
+ Reads the structure.
+
+ The type of the parameter of the method that this delegate encapsulates.
+ The viewer.
+ The start position.
+ The file revision.
+ The sizes.
+ The type of the return value of the method that this delegate encapsulates.
+
+
+
+ Determines whether this instance is any.
+
+ The type of objects to enumerate
+ The data.
+ True has data, otherwise False.
+
+
+
+ Gets the enumeration values.
+
+ Type of the enumeration
+ System type of the enumeration.
+ The descriptions.
+ The pre fix.
+ Array of enumeration descriptions
+
+
+
+ Gets the name of the file map.
+
+ The filename.
+ if set to true [b embedded file].
+ A memory mapped file name without slashes.
+
+
+
+ Create a shared memory mapped object name
+
+ Name of the file.
+ Name of the mapped object.
+ Memory mapped file name without slashes
+
+
+
+ Removes the slashes.
+
+ Name of the file.
+ A new string without any slashes
+
+
+
+ Builds the name of the unique virtual device file map.
+
+ Type of the virtual device.
+ Index of the registered.
+ Name of the file map.
+ A unique memory mapped file name
+
+
+
+ Creates the no name mutex.
+
+ The mutex class enforces thread identity, so a mutex can be released only by the thread that acquired it.
+ Mutex are of two types: local mutex, which are unnamed, and named system mutex.
+
+ A local mutex exists only within your process. It can be used by any thread in your process that has a reference
+ to the mutex object that represents the mutex.
+
+ Each unnamed mutex object represents a separate local mutex.
+
+ On a server that is running Terminal Services, a named system mutex can have two levels of visibility. If its name
+ begins with the prefix "Global\", the mutex is visible in all terminal server sessions. If its name begins with the
+ prefix "Local\", the mutex is visible only in the terminal server session where it was created. In that case, a separate
+ mutex with the same name can exist in each of the other terminal server sessions on the server. If you do not specify a prefix
+ when you create a named mutex, it takes the prefix "Local\". Within a terminal server session, two mutex whose names differ
+ only by their prefixes are separate mutex, and both are visible to all processes in the terminal server session. That is,
+ the prefix names "Global\" and "Local\" describe the scope of the mutex name relative to terminal server sessions,
+ not relative to processes.
+
+ A new instance of Mutex object.
+
+
+
+ Creates a named mutex then waits on it if it is busy.
+ Since we have an multithreading issue here (see OpenFileMapping and RunHeader bNewMapObject),
+ a Mutex is introduced here to ensure that only one thread gets access at a time.
+ This will create a mutex name based on the file that is being used and not just a global
+ mutex for all files
+
+ Filename of the file.
+ True add Global prefix to the file name; otherwise no.
+ Store errors information
+
+ The handle of the mutex or NULL if an error occurs.
+
+
+
+
+ Releases the mutex.
+
+ The mutex.
+
+
+
+ Retries the method if it fails.
+
+ The type of the return parameter of the method that this delegate encapsulates.
+ The method.
+ Memory mapped file name
+ The number retries.
+ The millisecond to wait before retry.
+ True the method get executed, false otherwise.
+
+
+
+ Retries the method.
+
+ The type of the parameter of the method that this delegate encapsulates.
+ The method.
+ The number retries.
+ The millisecond to wait before retry.
+ The type of the return value of the method that this delegate encapsulates.
+
+
+
+ Makes the long.
+
+ The low part.
+ The high part.
+ Combine the low and high part to an integer
+
+
+
+ Validates the name of the file.
+
+ Name of the file.
+ Error message
+ True if file is existed; otherwise false.
+
+ File doesn't exist: + fileName
+
+
+
+
+ Validate64s the bit.
+
+ Only 64 bit applications are supported by this project
+
+
+
+ Determines whether the current windows user is Administrator.
+
+ True the current user has Administrator access
+
+
+
+ To the message and complete stack trace.
+
+ The exception.
+ Exception message, including the stack trace.
+
+
+
+ Updates the errors.
+
+ The errors.
+ The message.
+ The error code.
+
+
+
+ Corrects the raw file name for environment.
+ If the application is running on Unix environment, don't adjust the file name.
+ File and directory names are case sensitive in Unix. Convert it to lowercase when on
+ Windows OS.
+
+ Name of the raw file.
+ In Windows OS, convert the raw file name to lowercase; otherwise, no changes need.
+
+
+
+ Structures the size lookup initializer.
+
+ An array of internal structures size
+
+
+
+ Show mutex security.
+
+ The mutex security.
+ The errors.
+
+
+
+ The try reopen mutex.
+
+ The mutex name.
+
+ Grant access to the named mutex.
+ The errors.
+ The .
+
+
+
+ Provides extension methods for Adjustable Scan Rate Profile index data
+
+
+
+
+ Convert PDA Profiles index data to byte array.
+
+ The packets.
+ The number of scan data
+ Byte array of ASRProfileIndexStruct
+
+
+
+ The audit trail extension.
+
+
+
+
+ The save.
+
+
+ The audit Trail.
+
+
+ The binary writer.
+
+
+ The errors.
+
+
+ The .
+
+
+
+
+ Saves the audit trailer to IOleStream.
+
+ The audit trail.
+ The IOleStream object.
+ The errors.
+ True if audit trail saved to file; otherwise false.
+
+
+
+ The auto sampler config extension.
+
+
+
+
+ The save.
+
+
+ The auto sample config.
+
+
+ The binary writer.
+
+
+ The errors.
+
+
+ The .
+
+
+
+
+ Provides methods to write common device information
+ 1. Instrument information
+ 2. Instrument expected run time
+ 3. Status log header
+ 4. Status log
+ 5. Error log
+
+
+
+
+ Generic type headers.
+
+
+
+
+ Gets a value indicating whether this file has detected an error.
+ If this is false: Other error properties in this interface have no meaning.
+
+
+
+
+ Gets a value indicating whether this file has detected a warning.
+ If this is false: Other warning properties in this interface have no meaning.
+
+
+
+
+ Gets the error code number.
+ Typically this is a windows system error number.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets the warning message.
+
+
+
+
+ Gets the file revision.
+
+
+ The file revision.
+
+
+
+
+ Gets the device type.
+
+
+
+
+ Gets the data stream writers.
+ Used for writing device data, each stream responsible for different data set,
+ i.e. instrument ID, status log, error log, etc.
+
+
+ The stream writers.
+
+
+
+
+ Gets the device run header.
+
+
+ The device run header.
+
+
+
+
+ Gets the data file map name.
+
+
+
+
+ Gets a value indicating whether [in creation].
+
+
+ true if [in creation]; otherwise, false.
+
+
+
+
+ Gets the run header memory map accessor.
+
+
+ The run header memory map accessor.
+
+
+
+
+ Gets or sets the written generic headers flags.
+ Flag so we know if a generic header has been written
+ There are 3 types of generic header - Status log, Trailer extra and Tune
+
+
+
+
+ Initializes a new instance of the class.
+
+ Type of the device.
+ Index of the device.
+ Name of the raw file.
+ The file revision.
+ if set to true [in acquisition].
+ Revision code for the device (set in run header). Default 1
+
+
+
+ Write the Instrument ID info to the raw data file. The
+ Instrument ID must be written to the raw file before any data can be
+ acquired.
+
+ The instrument identifier.
+ True written instrument information to disk file; otherwise False.
+
+
+
+ Wrapper to write the expected run time. All devices MUST do this so
+ that the real-time update can display a sensible Axis.
+
+ The expected Run Time.
+ True if data valid.
+
+
+
+ update to ready state, if all prerequisites have been met
+
+
+
+
+ Writes the instrument comments.
+ These are device run header fields - comment1 and comment2. They are part of the Chromatogram view title (Sample Name and Comment).
+ These fields can be set only once.
+
+ The comment1 for "Sample Name" in Chromatogram view title (max 39 chars).
+ The comment2 for "Comment" in Chromatogram view title (max 63 chars).
+ True if comment1 and comment2 are written to disk successfully, false otherwise.
+
+
+
+ Writes the status log header.
+
+ The header items.
+ true written status log header to the disk file; otherwise False.
+
+
+
+ If any Status Log details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+
+ The retention time.
+ The status data.
+ true written status log entry to the disk file; otherwise false.
+
+
+
+ If any Status Log details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+
+ The retention time.
+ The data.
+ true written status log entry to the disk file; otherwise false.
+
+
+
+ Write an error log to the raw data file.
+
+ The retention time.
+ The error log.
+ True error log write to the disk file, otherwise False.
+
+
+
+ Writes the generic header to a file.
+
+ The header items.
+ The written flag, i.e. status log header.
+ Binary writer id
+ The shared memory for header buffer information.
+ The shared memory for data buffer information.
+ return a header descriptors object.
+ True if the generic header is written to the file; false otherwise.
+
+
+
+ if the file is in error or not ready to acquire yet, fail.
+
+ The error message.
+ True if it cannot be acquired due to an error.
+
+
+
+ Initializes the index of the device.
+
+ The loader identifier.
+ Index of the registered.
+ Name of the raw file.
+ The file revision.
+ if set to true [in acquisition].
+ True obtained a validate control index; otherwise False.
+
+
+
+ Initializes the run header.
+
+ The device information.
+ Index of the registered device.
+ true if OK
+ Revision code
+ true if OK
+
+
+
+ This method will use the binary stream object to writes the status log entry to the file.
+
+ The writer.
+ The retention time.
+ The data.
+ True the data write to the disk file; otherwise False.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+
+
+
+ Defines the BufferInfo type for backward compatibility with FileIO.
+ Ex. HomePage real time plot checks the Number Element field in scan index buffer info,
+ to determine whether the scans data is available for display and
+ raw file stitching is also using it.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The device identifier.
+ Name of the file.
+ Name of the object.
+ True open an existing shared memory map otherwise create. False only open an existing shared memory map file.
+ Size of the element.
+ The mask.
+
+
+
+ Determines whether this instance has reference.
+
+ True if there's other objects referencing it, otherwise False.
+
+
+
+ Gets a value indicating whether this instance has error.
+
+
+ true if this instance has error; otherwise, false.
+
+
+
+
+ Gets the error message.
+
+
+ The error message.
+
+
+
+
+ Gets the error code.
+
+
+ The error code.
+
+
+
+
+ Gets the size of the data written to the buffer.
+
+
+ The .
+
+
+
+
+ Increment the number of elements by 1 and then updates to the shared memory map.
+
+
+
+
+ Increments the reference count and update.
+
+
+
+
+ Decrements the reference count and update.
+
+
+
+
+ Set the size of a data element, i.e. Status Log Header, this will be the total size of the header items in bytes.
+
+ The data Block Size.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+
+
+
+ Refresh local data from the memory maps.
+
+
+ True if OK
+
+
+
+
+ The device acquire status.
+
+
+
+
+ The _device status.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Sets the device status.
+
+
+
+
+ Gets a value indicating whether is device setup.
+
+
+
+
+ Gets a value indicating whether is device ready.
+
+
+
+
+ Gets a value indicating whether can device be setup.
+
+
+
+
+ Gets a value indicating whether can device acquire data.
+
+
+
+
+ The structure type.
+
+
+
+
+ The generic data item structure type.
+
+
+
+
+ The raw file info structure type.
+
+
+
+
+ The run header structure type.
+
+
+
+
+ The file header structure type.
+
+
+
+
+ The sequence row info structure type.
+
+
+
+
+ The UV scan index structure type.
+
+
+
+
+ The instrument id info structure type.
+
+
+
+
+ The auto sampler config structure type.
+
+
+
+
+ The ASR profile index structure type.
+
+
+
+
+ The profile data packet 64 type.
+
+
+
+
+ The mass spec reaction structure type
+
+
+
+
+ The mass spec reaction struct01 type
+
+
+
+
+ The mass spec reaction struct02 type
+
+
+
+
+ The mass spec reaction struct03 type
+
+
+
+
+ The high resource spec type structure type
+
+
+
+
+ The low resource spec type structure type
+
+
+
+
+ The buffer information structure type
+
+
+
+
+ The sequence information type
+
+
+
+
+ The scan event information structure
+
+
+
+
+ The scan index structure type
+
+
+
+
+ The noise information packet structure type
+
+
+
+
+ The packet header structure type
+
+
+
+
+ The profile segment structure type
+
+
+
+
+ The audit data structure type
+
+
+
+
+ The standard accuracy struct type.
+
+
+
+
+ The virtual controller information structure
+
+
+
+
+ The end of type.
+
+
+
+
+ ASR profile index
+ The offset where the field begins
+
+
+
+
+ The data position.
+
+
+
+
+ Profile data packet 64
+ The offset where the field begins
+
+
+
+
+ The data position off set
+
+
+
+
+ RunHeader structure
+ The offset where the field begins
+
+
+
+
+ The last spectrum.
+
+
+
+
+ The number status log.
+
+
+
+
+ The number error log.
+
+
+
+
+ The comment1
+
+
+
+
+ Is in acquisition flag
+ c# bool is an alias for System.Boolean just as integer
+
+
+
+
+ The mass resolution.
+
+
+
+
+ The expected run time.
+
+
+
+
+ The number trailer scan events
+
+
+
+
+ The number trailer extra
+
+
+
+
+ The number tune data
+
+
+
+
+ The filter mass precision
+
+
+
+
+ Buffer Info structure
+ The offset where the field begins
+
+
+
+
+ The number of elements.
+
+
+
+
+ The size of the data block
+
+
+
+
+ The reference count.
+
+
+
+
+ Enumeration of possible data streams during acquisition.
+
+
+
+
+ The instrument id file.
+
+
+
+
+ The status log header file.
+
+
+
+
+ The status log file.
+
+
+
+
+ The error log file.
+
+
+
+
+ The data (peak) packet file.
+
+
+
+
+ The spectrum file (scan index file).
+
+
+
+
+ The scan events file
+
+
+
+
+ The trailer header file
+
+
+
+
+ The trailer extra file
+
+
+
+
+ The tune data header file
+
+
+
+
+ The tune data file
+
+
+
+
+ The trailer scan events file
+
+
+
+
+ The end of type.
+
+
+
+
+ Enumeration of generic header.
+ The flag indicates which generic header has been written
+
+
+
+
+ The written status log header
+
+
+
+
+ The written trailer extra header
+
+
+
+
+ The written tune header
+
+
+
+
+ Enumeration of possible Virtual Device Acquire Status
+
+
+
+ Device Status New
+
+
+ Device Status Setup
+
+
+ Device Status Ready
+
+
+ Device Status Acquiring
+
+
+
+ Raw File Info structure
+ The offset where the field begins
+
+
+
+
+ Defines the DeviceErrors type.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the error code number.
+ Typically this is a windows system error number.
+ If no number is encoded:
+ Returns "1" if the error message is null
+ Returns "2" is there is an error message.
+ A return of "0" will occur if there has been no error message
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets a value indicating whether has error.
+
+
+
+
+ Gets a value indicating whether has warning.
+
+
+
+
+ Gets the warning message.
+
+
+
+
+ Adds an Information message.
+ Information is added as a line.
+
+
+ The Information.
+
+
+
+
+ Adds an Warning message.
+ Warning is added as a line.
+
+
+ The Warning.
+
+
+
+
+ The clear all.
+
+
+
+
+ The clear error.
+
+
+
+
+ Sets an Information message.
+ This initializes the warning message to the "Information:" + the message
+ but initialize "HasWarning" to false, so callers know there are no warnings
+ Information may be used to log progress, and inspected on error.
+ Information is added as a line.
+
+
+ The Information.
+
+
+
+ The update error.
+ The error message.
+ The error code..
+ Always false.
+ The zero value is intended for no error and should not be used for clearing error here.
+
+
+ update error.
+ The error exception.
+ The zero value is intended for no error and should not be used for clearing error here.
+ Always false.
+
+
+
+ append error, plus newline of there was an error before
+
+
+ The message.
+
+
+
+
+ update warning message and state.
+ Clears any previous warnings
+
+
+ The warning.
+
+
+ true if has warning.
+
+
+
+ Append an error message.
+ The error exception.
+ The zero value is intended for no error and should not be used for clearing error here.
+ Always false.
+
+
+
+ Format an information line.
+
+
+ The information.
+
+
+ The .
+
+
+
+
+ Format a warning line.
+
+
+ The information.
+
+
+ The .
+
+
+
+ The update error.
+ The error message.
+ The error code..
+ Always false.
+ The zero value is intended for no error and should not be used for clearing error here.
+
+
+
+ Append a message, as a line.
+
+
+ The text.
+
+
+
+
+ Clear all warnings.
+
+
+
+
+ Provides functions to create/update a device method.
+ The device methods are for each configured instrument and store in instrument method file.
+ Each device method contains two or more streams.
+ One calls "Data", stores a private representation of the method, in a binary or XML format.
+ Second calls "Text, stores an Unicode text description of the method.
+ Other streams may also be created, that are private to the device, i.e. TNG-Calcium has "Header" stream.
+ Format:
+ TNG-Calcium (IDeviceMethod)
+ Data (Method stream - byte array)
+ Text (string)
+ Header (Method stream - byte array)
+
+
+
+
+ Initializes a new instance of the class.
+
+ name;@Device method name cannot be empty.
+
+
+
+ Gets all streams for this instrument,
+ Typically an instrument has a stream called "Data" containing the method in binary or XML,
+ and "Text" contains the plain text form of the method.
+ Other streams (private to the instrument) may also be created.
+
+
+
+
+ Gets or sets the "Text" plain text (unicode) form of an device method.
+ This property provides a quick way to access the "Text" stream.
+ Accessing the property, returns empty string if the "Text" stream does not exist; otherwise, it will retrieve the stream
+ from the StreamBytes list.
+ Updating the property, overwrite the existing content of the "Text stream if it already exists; otherwise, it
+ will add the "Text" stream to the StreamBytes list.
+
+
+
+
+ Gets all stream data names for this device storage.
+ Typically an instrument has a stream called "Data" containing the method in binary or XML
+ and "Text" contains the plain text form of the method.
+ Other streams (private to the instrument) may also be created.
+ ---
+ In order to add/update the stream, caller should first call this to get the list of streams.
+ Once you've the list, you can start adding a new stream or editing/removing an existing method stream.
+ ---
+ If the stream is set to null, during the save operation, it'll save as zero length stream.
+
+ List of device streams.
+
+
+
+ It's used internally to create a device method builder object for instrument method.
+
+
+
+
+ Creates the device method object.
+
+ IDeviceMethod object.
+
+
+
+ This static class contains factories to create device writers.
+ UV Device, PDA Device, MS Device and Status Device writers.
+ Marked internal, as this factory is only available
+ to internal company or partner code, via public key.
+
+
+
+
+ Creates the UV type device writer to write UV data.
+
+ Connect to a "in-acquisition" raw file
+ Type of the device to be created.
+ A UV type of device write to write UV, Analog and MS Analog data to the disk file
+
+
+
+ Creates Analog device writer to write analog data.
+
+ Connect to a "in-acquisition" raw file
+ Type of the device to be created.
+ A device writer to write analog data to the disk file
+
+
+
+ Creates the PDA device writer.
+
+ Connect to a "in-acquisition" raw file
+ A device writer to write PDA data to the disk file
+
+
+
+ Creates the mass spec device writer.
+
+ Name of the file.
+ If > 1: Defines the highest packet type that this device may use.
+ By default this is 1, as that was the value used in original "version 66" raw files.
+ All apps linked to any version of this dll can decode such files.
+ New devices may have new data types, which can only be decoded by (matching) newer versions of this code.
+ A device writer to write mass spec data to the disk file
+
+
+
+ Creates an "other" device writer.
+ These devices may also be called "status devices"
+ or "diagnostic devices" as they have logs only, and
+ cannot record scan data.
+
+ Name of the file.
+ A device writer to write mass spec data to the disk file
+
+
+
+ The instrument method will be saved in the raw file.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The instrument Method.
+
+ The should dispose flag indicating whether the embedded instrument method should be removed after the raw file writer is closed.
+
+
+
+
+ Gets the instrument method.
+
+
+
+
+ Gets or sets the end offset.
+
+
+
+
+ Gets a value indicating whether this is partial save or full save.
+
+
+
+
+ The save method.
+
+ The binary writer.
+ The errors.
+ The partial save.
+ True is successful
+
+
+
+ The dispose.
+
+
+
+
+ Provides methods to write error log item to disk file
+
+
+
+
+ Saves the error log item.
+
+ The writer.
+ The retention time.
+ The error log
+ Store errors information.
+ True if error log item is written to disk successfully, False otherwise
+
+
+
+ The file header extension.
+
+
+
+
+ Extension method to save file header.
+
+
+ The file header to save.
+
+
+ The binary writer used to write data.
+
+
+ The errors.
+
+
+ The .
+
+
+
+
+ Calculates the instrument method file checksum. It's duplicating exactly the Xcalibur checksum for compound doc file.
+
+ The instrument method file (root storage).
+ The calculated checksum value.
+ The error message if error occurs.
+ True if the calculation is successfully; otherwise false.
+ rootStorage;@Instrument method file storage cannot be NULL.
+
+
+
+ Checks if the who modified has changed.
+
+ The file header.
+ The new file header.
+ True if who modified has changed; otherwise false.
+
+
+
+ The generic data item extension.
+
+
+
+
+ Saves the generic data item.
+
+ The writer.
+ The retention time.
+ The data.
+ The errors.
+ True if generic data item is written to disk successfully, False otherwise
+
+
+
+ Saves the generic data item.
+
+ The writer.
+ The data.
+ The errors.
+ True if generic data item is written to disk successfully, False otherwise
+
+
+
+ Provides save extension methods for generic header
+
+
+
+
+ Write generic header item to the file.
+
+ Generic header definitions
+ The binary writer.
+ Number of the header items.
+ The errors object for storing error information.
+ True generic header saved to the disk, false otherwise.
+
+
+
+ Converts the header items to data descriptors.
+
+ The header items.
+ The data descriptors.
+
+
+
+ Provides methods to write generic header item to disk file.
+
+
+
+
+ Saves the generic header item.
+
+ The generic header item.
+ The writer.
+ store errors information.
+ True if the generic data item is written to disk, otherwise False
+
+
+
+ Save the instrument data information to the disk file
+
+
+
+
+ Saves the instrument information.
+
+ The instrument identifier.
+ The writer.
+ The errors.
+ True instrument ID saved to the disk, false otherwise.
+
+
+
+ It's used internally to create an instrument methods exporter object.
+
+
+
+
+ Create an IInstrumentMethodExporter interface to
+ read instrument method from a raw (.raw) file and able
+ to write it to an instrument method (.meth) file.
+
+ Raw file to open
+ Interface to read instrument method from file
+
+
+
+ Provides methods to create/open existing instrument method file for editing,
+ such as creating device method and saving method data.
+ ----
+ Existing layout of an instrument method file.
+ Instrument Method File
+ Audit Data
+ LCQ Header
+ ---
+ --- Device Methods
+ ---
+ SIIXcalibur (IDeviceMethod)
+ Data (Method stream - byte array)
+ Text (string)
+ SimulationMS (IDeviceMethod)
+ Data (Method stream - byte array)
+ Text (string)
+ TNG-Calcium (IDeviceMethod)
+ Data (Method stream - byte array)
+ Text (string)
+ Header (Method stream - byte array)
+
+
+
+
+ Initializes a new instance of the class.
+ The instrument method writer should open a file if it exists; otherwise, a new method file should be created.
+
+
+ The instrument methods builder.
+ The factory creates an IInstrumentMethodBuilder object and passes it to
+ the writer constructor using dependency injection pattern, and the writer uses it to
+ open/create/add/update a file, without any knowledge of actual implementation of this
+ builder is, i.e. it can be a compound document builder or XML builder.
+
+
+
+
+ Gets the instrument method file name.
+
+
+
+
+ Gets a value indicating whether this file has detected an error.
+ If this is false: Other error properties in this interface have no meaning.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets the file header for the instrument method file
+
+
+
+
+ Updates the file header field - "Description".
+
+ The description.
+
+
+
+ Update the instrument method file header with the file header values passed in.
+ Only updates object values in memory, does not write to disk.
+
+ The file header.
+ File header cannot be null.
+
+
+
+ Get the list of device methods which are currently defined in this instrument method.
+ Returns an empty list, if this is a newly created instrument method.
+ ---
+ In order to add/update device method, caller should first call this to get the list of devices.
+ Once you've the list, you can start adding a new device method or editing/removing an existing device method.
+
+ The list of device methods.
+
+
+
+ Saves the instrument methods to the file.
+ If this is an "Unnamed" instrument method writer, caller should use "SaveAs" method with the output
+ file name; otherwise ArgumentNullException will be thrown.
+
+
+ True if save successfully; otherwise false.
+
+ name;@The instrument methods file name cannot be empty.
+
+
+
+ Save this instrument methods to a file.
+ It should overwrite the instrument methods file if the file exists; otherwise, a
+ new file should be created.
+
+ File name of the instrument method.
+ True if save successfully; otherwise false.
+ name;@The instrument methods file name cannot be empty.
+
+
+
+ It's used internally to create an instrument methods writer object.
+
+
+
+
+ Creates the instrument method writer.
+ The instrument method writer should open a file if it exists; otherwise, a in-memory method file should be created.
+ If the input file name is empty, a in-memory method file should be created. When trying to save the "Unnamed" in-memory
+ method file, caller should use "SaveAs( fileName )" method with a specified file name.
+
+ Name of the instrument method file.
+ Instrument method writer object.
+
+
+
+ Provides methods to write mass spec device data.
+ The "PrepareForRun" method should be called during the prepare for run state, before the data acquisition begins.
+ The rest of the methods will be used for data logging.
+
+
+
+
+ The data initial offset
+ Mass spec data is written directly to the raw file after the meta-data sections.
+
+
+
+
+ Generic type headers.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Type of the device.
+ Index of the device.
+ Name of the raw file.
+ if set to true [in acquisition].
+ The file revision.
+ The final known packet type (at the time of writing).
+ For example: If the MS is compiled against a newer raw file DLL, needed for it's new format,
+ then the value saved in a file could be a higher value than that compiled into some data processing application
+ built 2 years earlier. On opening the MS data, the raw file reader returns an Error to that application.
+ The application should then issue a message telling the customer to upgrade.
+ An instrument may set this to a lower value (the highest format required for the current acquisition method),
+ to signal that older format data is in the file, even if the device was compiled against a newer DLL.
+
+
+
+ Gets a value indicating whether the PrepareForRun method has been called.
+
+
+ True if the PrepareForRun method has been called; otherwise, false.
+
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+
+
+
+ This method should be called (when creating an acquisition file) during the "Prepare for run" state.
+ It may not be called multiple times for one device. It may not be called after any of the data logging calls have been made.
+ It will perform the following operations:
+ 1. Write instrument information
+ 2. Write run header information
+ 3. Write status log header
+ 4. Write trailer extra header
+ 5. Write tune data header
+ 6. Write run header information - expected run time, comments, mass resolution and precision.
+ 7. Write method scan events.
+
+ The instrument ID.
+ The generic data headers.
+ The run header information.
+ Method scan events
+ True if all the values are written to disk successfully, false otherwise.
+
+
+
+ This method is designed for exporting mass spec scanned data to a file (mostly used by the Application).
+ It converts the input scanned data into the compressed packet format and also generates a profile index
+ if needed by the specified packet type.
+ Overall, it writes the mass spec data packets, scan index (scan header) and trailer scan event if it is provided,
+ to a file.
+ This method will branch to the appropriate packet methods to compress the data block before being written to disk.
+
+ The transferring data that are going to be saved to a file.
+ True if mass spec data packets are written to disk successfully; false otherwise.
+ Instrument data cannot be null.
+ The packet type is not yet implement.
+
+
+
+ This method is designed for mass spec device data writing.
+ To provide fast data writing, this method writes the mass spec data packets directly to file (without performing
+ any data validation and data compression) by the specified packet type.
+ All data validation and data compression currently are done in the device driver code.
+
+ The binary block of data to write.
+ Type of the packet.
+ True if mass spec data packets are written to disk successfully, false otherwise.
+ Not Supported Exception
+
+
+
+ This method is designed for mass spec device data writing.
+ It writes the mass spec scan index (a.k.a scan header) and trailer scan event (if it's available) to the disk.
+
+ Index of the mass spec scan.
+ The trailer scan event [optional].
+ True if scan index and trailer scan event (if it's available) are written to disk successfully, false otherwise.
+
+
+
+ If any trailer extra details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the object array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The trailer extra data stores in object array.
+ True if trailer extra data is written to disk successfully, False otherwise.
+
+
+
+ If any Trailer Extra details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the byte array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The trailer extra data stores in byte array.
+ True if trailer extra entry is written to disk successfully, False otherwise
+
+
+
+ If any tune details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the object array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The tune data stores in object array.
+ True if tune data is written to disk successfully, False otherwise.
+
+
+
+ If any tune data details are to be written to the raw data file
+ then the format this data will take must be written to the file while
+ setting up i.e. prior to acquiring any data.
+ The order and types of the data elements in the byte array parameter
+ to the method needs to be the same as the order and types that are defined in the header.
+
+ The tune data stores in byte array.
+ True if tune data entry is written to disk successfully, False otherwise.
+
+
+
+ Writes the generic data.
+
+ The writer.
+ The data.
+ Size of the header.
+ The error object which stores errors information.
+ True if generic data (trailer extra data and tune data) is written to disk; false otherwise.
+
+
+
+ Writes the run header information.
+
+ The device acquire status.
+ The errors object which stores errors information.
+ The written flag.
+ The method.
+ True if the run header information is written to disk successfully, False otherwise.
+
+
+
+ Attaches the mass spec packet stream to raw file.
+
+ Name of the in-acquisition raw file.
+ The mass spec device run header structure.
+ True if mass spec packet stream is attached to in-acquisition raw file; false otherwise.
+
+
+
+ Initializes the buffer information shared memory objects.
+
+
+
+
+ Initializes the temporary files.
+
+ The run header structure.
+ True if all temporary files are created successfully; false otherwise.
+
+
+
+ Writes the instrument data packets to the file.
+
+ The block of data to write.
+ Size of the data block.
+ Size of each packet in the data block.
+ if set to true to update the number of packets; false to not update.
+ True if packets are written to disk successfully, false otherwise.
+
+
+
+ Writes the mass resolution for the mass spec device to file.
+ This field can be set only once. The default mass resolution value is 0.5
+
+ Width of the half peak.
+ True if mass resolution is written to disk successfully, False otherwise
+
+
+
+ Writes the mass spec scan index (header) to disk
+
+ Index of the mass spec scan.
+ True if the scan index is written to disk successfully, false otherwise.
+
+
+
+ Writes the mass spec scan events table.
+
+ The mass spec scan events table.
+
+ True if mass scan events table is written to disk successfully; false otherwise.
+
+ mass Spec Scan Events
+
+
+
+ Writers the filter mass precision for the mass spec device to file.
+ This field can be set only once. The default precision value is 2.
+
+ The precision.
+
+ True if filter mass precision is written to disk successfully, False otherwise
+
+
+
+
+ Write the Trailer Extra Header (format) info to the raw data file.
+ If caller is not intended to use the trailer extra data, pass a null argument or zero length array.
+ ex. WriteTrailerExtraHeader(null) or WriteTrailerExtraHeader(new IHeaderItem[0])
+
+ The trailer extra header.
+
+ True if trailer extra header is written to disk successfully, False otherwise
+
+
+
+
+ Writes the trailer scan event to disk.
+
+ The trailer scan event.
+ True if trailer scan event is written to disk, false otherwise.
+
+
+
+ Write the Tune Header (format) info to the raw data file.
+ If caller is not intended to use the tune data, pass a null argument or zero length array.
+ ex. WriteTuneHeader(null) or WriteTuneHeader(new IHeaderItem[0])
+
+ The tune header.
+
+ True if tune header is written to disk successfully, False otherwise
+
+
+
+
+ The method extension.
+
+
+
+
+ Saves the instrument method to the provided binary writer.
+
+ Method data to save
+ Writer to use to save
+ Any error information that occurred
+ True is successful
+
+
+
+ Contains code for writing various Xcalibur data system files
+
+
+
+
+ Instrument method file is a compound document file (contains a ROOT Storage) which are organized in a
+ hierarchy of storages. The names of all device storages and streams that are
+ direct members of a storage must be different (unique). Names of device streams or
+ storages that are members of different storages may be equal.
+ Example.
+ Instrument method file
+ Root storage
+ |-stream0
+ |-storage1
+ |-stream1
+ |-stream2
+ |-storage2
+ |-stream1
+ ----
+
+
+
+
+
+ Initializes a new instance of the class.
+ Opens the instrument method file for editing if the file exists; otherwise, creates an in-memory
+ file. After you've finished editing, calls the "Save" or "SaveAs" method to persist the data to the file.
+
+ The instrument method file Name.
+
+
+
+ Gets the name of the instrument method file.
+
+
+
+
+ Gets the file header for the instrument method file
+
+
+
+
+ Creates a device method storage.
+
+ The storage (root storage).
+ Name of the device method storage.
+ Stores the error information if error occurs.
+ Device method storage.
+
+
+
+ Saves the audit trail.
+
+ The storage (root storage).
+ The audit trail.
+ Stores the error information if error occurs.
+ True if audit trail is saved successfully; otherwise false.
+
+
+
+ Saves the file header to stream.
+
+ The storage.
+ The file header.
+ The current date time.
+ Stores the error information if error occurs.
+ True if file header saved successfully; otherwise false.
+
+
+
+ Saves the device method to stream.
+
+ The device method.
+ The storage.
+ Stores the error information if error occurs.
+ True if the device method saved successfully; otherwise false.
+
+
+
+ Saves the device method streams, i.e. "Text", "Data, etc.
+ If the stream value is NULL, it will save an empty stream.
+
+ The storage.
+ The list of streams which are going to save.
+ Stores the error information if error occurs.
+ True if method streams are saved successfully; otherwise false.
+
+
+
+ Updates the file header field - "Description".
+
+ The description.
+
+
+
+ Update the instrument method file header with the file header values passed in.
+ Only updates object values in memory, does not write to disk.
+
+ The file header.
+
+
+
+ Get the list of device methods which are currently defined in this instrument method.
+ Returns an empty list, if this is a newly created instrument method.
+ ---
+ In order to add/update device method, caller should first call this to get the list of devices.
+ Once you've the list, you can start adding a new device method or editing/removing an existing device method.
+
+ The list of device methods.
+
+
+
+ Save this instrument methods to a file.
+ It should overwrite the instrument methods file if the file exists; otherwise, a
+ new file should be created.
+
+ File name of the instrument method.
+ True if save successfully; otherwise false.
+ name;@The name cannot be empty.
+
+
+
+ Opens an existing compound file (instrument method).
+
+ Name of the file.
+
+
+
+ Provides common methods to deal with IOleStorage and IOleStream.
+
+
+
+
+ Opens an existing compound document file (instrument method file).
+
+ Name of the file.
+ Specifies the access mode to use when opening the compound document file.
+ The root storage object.
+
+
+
+ Creates the compound document file (instrument method file) with a specified file name.
+
+ Name of the file.
+ The root storage object (IOleStorage).
+
+
+
+ Creates a storage (Device method).
+
+ The storage.
+ Name of the device storage.
+ IOleStorage object (Device method).
+
+
+
+ Opens an existing storage (Device method).
+
+ The storage.
+ Name of the storage.
+ Specifies the access mode to use when opening the storage object.
+ Device storage.
+
+
+
+ Saves the device stream data to the compound storage.
+
+ The method.
+ The storage (either the root storage or device method).
+ Name of the stream data.
+ Stores the last error information.
+ True if data saved successfully; otherwise false.
+
+
+
+ Reads the device stream data from the storage.
+
+ The storage (either the root storage or device method).
+ Name of the stream data.
+ Returns the stream data in byte array.
+ Returns the error information if error occurs.
+ True if data saved successfully; otherwise false.
+
+
+
+ Writes the integer 4-byte value to stream.
+
+ The data stream.
+ The value.
+
+
+
+ Writes the bytes to the stream.
+
+ The data stream.
+ The value in byte array.
+
+
+
+ Saves the file header to the IOleStream.
+
+ The file header object.
+ The IOleStream object.
+ Stores the error information if error occurs.
+ True if the file header saved successfully; otherwise false.
+
+
+
+ Releases the specified storage.
+
+ The storage.
+
+
+
+ Releases the specified stream.
+
+ The stream.
+
+
+
+ Releases the specified enumerator for STATSTG structures.
+
+ The enumerator.
+
+
+
+ Defines the PDA Device Writer type.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Type of the device.
+ Index of the device.
+ Name of the raw file.
+ if set to true [in acquisition].
+ The file revision.
+
+
+
+ Writes both the PDA instrument data and index into the disk. This is the
+ simplest format of data we write to a raw file.
+
+ The PDA UV instrument data.
+ Index of the PDA instrument scan.
+
+ True if scan data and index are written to disk successfully, False otherwise
+
+
+ Instrument Data
+ or
+ PDA Scan Index
+
+
+
+
+ PDA writer doesn't support this method.
+ This method is intended for UV type of device writers
+
+ The UV type of the scan data.
+ The UV type of the scan index.
+
+ Not supported exception will be thrown.
+
+ PDA writer doesn't support.
+
+
+
+ Releases unmanaged and - optionally - managed resources.
+
+
+
+
+ The peak data.
+
+
+
+
+ The _end of position.
+
+
+
+
+ The _current start of data.
+
+
+
+
+ The _next start of data.
+
+
+
+
+ The _current index.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets or sets the packet type.
+
+
+
+
+ Converts the raw scan into packets.
+
+ The mass spec data.
+ Mass spec profile data packets.
+ The converted packets in compressed form
+ Not Supported Exception
+ The instrument scan data cannot be null.
+
+
+
+ The below packet types are not supported for exporting.
+
+ Type of the packet.
+ True if the packet type is supported, otherwise, throw not implemented exception.
+ The packet type is supported.
+
+
+
+ Writes the instrument data.
+
+ The writer.
+ The data.
+ The errors.
+ True instrument data saved to the disk, false otherwise
+
+
+
+ Writes the profile index information to disk
+
+ The data.
+ Size of the data.
+ True the indexes stored to disk, false otherwise.
+ This format type does not support.
+
+
+
+ Writes the indices.
+
+ The writer.
+ The number of profile indexes
+ This format type does not support.
+
+
+
+ Gets or sets the current start of data.
+
+
+
+
+ Gets the next start of data.
+
+
+
+
+ Gets or sets the data initial offset.
+
+
+ The data initial offset.
+
+
+
+
+ Generates the profile index data packets.
+
+ The instrument data.
+ Size of the data.
+ ProfileDataPacket64 array object.
+
+
+
+ Provides extension methods for Profile Index Data Packets
+
+
+
+
+ Convert the profile index data packets structure to a byte array.
+
+ The profile data packets.
+ Profile index data packets in byte array form.
+ profile Data Packets
+
+
+
+ The device temp file writer.
+
+
+
+
+ Gets the run header.
+
+
+
+
+ Initializes a new instance of the class.
+ Creates objects which are used for all device types
+
+
+ The loader id.
+
+
+ The device info.
+
+
+ The raw file name.
+
+
+ The file revision.
+
+
+ The device errors.
+
+
+
+
+ The save.
+
+
+ The writer.
+
+
+ The errors.
+
+
+ The packet data offset.
+
+
+ The .
+
+
+
+
+ The write temp file data.
+
+ Meaning of this file
+
+ The writer.
+
+
+ The errors.
+
+
+ The file name.
+
+
+ The max Bytes Copy.
+
+
+ The .
+
+
+
+
+ Gets the size of the data from the buffer and compares to size of the temp file. Only copy minimum bytes.
+ Used by some temp files that write garbage data to temp file.
+
+
+ The size.
+
+
+ The number Entries.
+
+
+ The temp file name.
+
+
+ The .
+
+
+
+
+ Disposes the shared memory resources used by the device.
+
+
+
+
+ Refresh all objects from data in memory maps.
+ Do not create new maps.
+
+
+ True if OK
+
+
+
+
+ Provides extension methods to write raw file info to the shared memory mapped buffer
+
+
+
+
+ Adds the controller information.
+ we are being created by the virtual controller so we need to register ourselves with the global
+ storage so other instantiations of this file will be able to read this controller information
+
+ Device Identifier
+ Type of the device.
+ Index of the device.
+ Shared memory mapped file name
+ Store errors information
+ True if controller information is written to disk successfully, False otherwise
+
+
+
+ Gets the index of the available controller.
+
+ The device identifier.
+ Name of the map.
+ The errors.
+ True able to obtain a controller index; otherwise False.
+
+
+
+ Provide method to export an instrument method from a raw file
+
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ Name of the raw file.
+
+
+
+ Gets a value indicating whether the underlying raw file has instrument method.
+
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+
+
+
+ Export the instrument method to a file.
+ Because of the many potential issues with this, use with care, especially if
+ adding to a customer workflow.
+ Try catch should be used with this method.
+ Not all implementations may support this (some may throw NotImplementedException).
+ .Net exceptions may be thrown, for example if the path is not valid.
+ Not all instrument methods can be exported, depending on raw file version, and how
+ the file was acquired. If the "instrument method file name" is not present in the sample information,
+ then the exported data may not be a complete method file.
+ Not all exported files can be read by an instrument method editor.
+ Instrument method editors may only be able to open methods when the exact same list
+ of instruments is configured.
+ Code using this feature should handle all cases.
+
+ The output instrument method file path.
+ Force over write. If true, and file already exists, attempt to delete existing file first.
+ If false: UnauthorizedAccessException will occur if there is an existing read only file.
+
+ True if the file was saved. False, if no file was saved, for example,
+ because there is no instrument method saved in this raw file.
+
+ No open raw file.
+
+
+
+ Gets names of all instruments, which have a method stored in the raw file's copy of the instrument method file.
+ These names are "Device internal names" which map to storage names within
+ an instrument method, and other instrument data (such as registry keys).
+ Use "GetAllInstrumentFriendlyNamesFromInstrumentMethod" (in IRawDataPlus) to get display names
+ for instruments.
+
+
+ The instrument names.
+
+
+
+
+ load the instrument method.
+
+ View into file
+ RawFileLoader instance ID
+ Memory mapped file name for Raw file information.
+ offset into view
+
+
+
+ Validates the memory mapped accessor.
+
+ Memory mapped file accessor
+ Name of the raw file.
+ The identifier.
+ True is
+
+
+
+ The writer for saving MS device data into raw files.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+ The device info.
+
+
+ The raw file name.
+
+
+ The file revision.
+
+
+ The device errors.
+
+
+
+
+ The save.
+
+
+ The writer.
+
+
+ The errors.
+
+
+ The packet data offset.
+
+
+ The controller header offset.
+
+
+ The .
+
+
+
+
+ The dispose.
+
+
+
+
+ Refresh data from maps
+
+
+ True if OK
+
+
+
+
+ The writer for saving UV device data into raw files.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The loader id.
+
+
+ The device info.
+
+
+ The raw file name.
+
+
+ The file revision.
+
+
+ The device errors.
+
+
+
+
+ The save.
+
+
+ The writer.
+
+
+ The errors.
+
+
+ The packet data offset.
+
+
+ The controller header offset.
+
+
+ The .
+
+
+
+
+ The dispose.
+
+
+
+
+ Refresh data from maps
+
+
+ True if OK
+
+
+
+
+ The file writer.
+ This type controls creation of a raw file.
+
+
+
+
+ create full file access.
+
+
+ The .
+
+
+
+
+ Fixes the invalid index of the virtual device and updates the shared memory mapped RawFileInfo object
+ if the device index is out of range.
+
+ RawFileInfoStruct object
+
+
+
+ Initializes a new instance of the class.
+ This uses a mutex on the file name to prevent multiple instances trying to create the same raw file at 1 time.
+ Subsequent instances will get a unique time stamp file name.
+
+
+ The path.
+
+
+ The writer Id.
+
+ [Optional] it has a default value of true.
+ True to specify that the raw file writer should create a raw file if the file isn't exist; however, if the file already exists,
+ the writer should create a raw file with the time stamp appended to the end of the file name.
+ False to specify that the raw file writer should not create a file and throw an IO exception if the file already exists.
+
+
+
+
+ Disposes the raw file for writing. Flushes all streams to disk and closes them. Releases all shared memory objects.
+ If last reference for temporary device files, those temp files will be deleted.
+
+
+
+
+ The internal dispose.
+ Does not clear the log
+
+
+
+
+ Disposes the binary file writer.
+
+
+ The bin File Binary Writer.
+
+
+
+
+ Gets a value indicating whether this file has detected an error.
+ If this is false: Other error properties in this interface have no meaning.
+
+
+
+
+ Gets a value indicating whether this file has detected a warning.
+ If this is false: Other warning properties in this interface have no meaning.
+
+
+
+
+ Gets a value indicating whether an error occurred.
+
+
+
+
+ Gets the error code, 0 if no error has occurred. A non 0 value is an error. Can not set to 0 and can not overwrite existing error code.
+ The acquisition service might set an error code due to errors in other libraries/devices.
+
+
+
+
+ Gets the error message.
+
+
+
+
+ Gets the warning message if warning has occurred. Empty string if no warning.
+
+
+
+
+ Gets or sets a value indicating whether should save changes.
+
+
+
+
+ Gets the raw file name.
+
+
+
+
+ Gets the calculated checksum for this raw file. Only calculated after a save has occurred.
+
+
+
+
+ Update the raw file header with the file header values passed in.
+ Only updates object values in memory, does not write to disk.
+ A default FileHeader is created with every new writer instance.
+
+
+ The file header object with values to use.
+
+
+
+
+ The update auto sampler.
+
+
+ The auto sampler information.
+
+
+ The .
+
+
+
+
+ Format a log message for public method success.
+
+
+ The name.
+
+
+ Always true (success)
+
+
+
+
+ validate a public method entry.
+ Entry is not valid if object is disposed.
+
+
+ The name.
+
+
+ True if method can proceed
+
+
+
+
+ The update sequence row.
+
+
+ The sequence row sample info.
+
+
+ The .
+
+
+
+
+ Helper for small methods which perform a field update.
+ Validates that the object has not been disposed.
+
+
+ The method.
+
+
+ The act.
+
+
+ The .
+
+
+
+
+ update the creator logon.
+
+
+ The creator logon.
+
+
+ The .
+
+
+
+
+ update the creator id.
+
+
+ The creator id.
+
+
+ The .
+
+
+
+
+ The update user label.
+
+
+ The user label.
+
+
+ The .
+
+
+
+
+ The update user label.
+
+
+ The user label.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ update the creation date.
+
+
+ The creation date.
+
+
+ The .
+
+
+
+
+ Adds an audit data entry to the audit trail list of the raw file.
+
+
+ The time changed.
+
+
+ What changed by integer value.
+
+
+ The comment.
+
+
+ The .
+ True if successfully updated value.
+
+
+
+
+ perform saving.
+
+
+ The errors.
+
+
+ true on success
+
+
+
+
+ Perform partial save.
+ Saves information into the raw file,
+ but leaves the raw file open for creation (as several temp files).
+
+
+ The errors.
+
+
+ true on success
+
+
+
+
+ stitch temp files (end of acquisition).
+
+
+ The errors.
+
+
+ true on success
+
+
+
+
+ save the updated file header.
+
+
+ The errors.
+
+
+ true on success
+
+
+
+
+ Finalizes the raw file security.
+ Begin create a temporary file to get its FileSecurity object instead of the one from the raw file.
+ Add an access rule to remove the WellKnownSidType.WorldSid into this FileSecurity object.
+ Apply the modified ACL to the raw file.
+
+ Name of the raw file.
+ The errors.
+
+
+
+ mark acquisition complete.
+
+
+ true on success
+
+
+
+
+ save the audit trail.
+
+
+
+
+ save data from all controllers.
+
+
+ The errors.
+
+
+ true on success
+
+
+
+
+ Test if we can save all controllers.
+
+
+ true if we can save
+
+
+
+
+ save data from on "controller" (device).
+
+
+ The errors.
+
+
+ The index to the controller.
+
+
+ true on success
+
+
+
+
+ find data offset for the current controller.
+ Determines where the scan data begins in the final file, for this detector.
+
+
+ The i.
+
+
+ The offset into the raw file for this controller (detector)
+
+
+
+
+ update shared memory of raw file info.
+
+
+
+
+ save raw file info.
+
+
+ The errors.
+
+
+ true on success
+
+
+
+
+ save header.
+
+
+ The errors.
+
+
+ true on success
+
+
+
+
+ Save the raw file.
+ The raw file name is guaranteed to be unique at this point, create a mutex to prevent multiple save calls interfering.
+
+
+ True only if saving part of the raw file for the acquisition raw file.
+ On partial save, only raw file header, auto sampler information, sequence row information, and raw file info are written. No scan data written.
+
+
+ True if file successfully written to disk.
+
+
+
+
+ Saves the instrument method into the raw file
+
+ The instrument method file path.
+ List of virtual instrument storage names.
+ List of virtual instrument descriptions.
+
+ [Optional] it has a default value of true.
+ The should be deleted flag indicating whether the temporary instrument method should be removed after the raw file writer is closed.
+ True instrument method saved to the disk, false otherwise.
+ invalid instrument method path.
+
+
+
+ Refreshes view of the raw file. Reloads the RawFileInfo object and the virtual controllers run headers from shared memory.
+ Does not read actual data from any temporary files.
+
+
+ True if successfully reloaded internal memory buffers.
+
+
+
+
+ Gets the memory mapped raw file name.
+
+
+
+
+ The initialize writer.
+
+
+
+
+ Remaps/refreshes the device list from the shared memory raw file info object.
+ Instantiates new objects based on the data from the shared memory raw file info.
+
+
+ The true if file/device list successfully remapped.
+
+
+
+
+ Create device list.
+ Attaches to memory maps of all known devices
+ Needed to add a reference count to all temp files, and to get latest data about device.
+
+
+ The virtual controller info list.
+
+
+
+
+ Update the previously found list
+ Device list me be already populated by previous refresh calls
+ Because this list is made based on shared memory, there can be issues
+ with
+ 1: Items not being ready for use
+ 2: Items being added
+ In these cases, attempt to keep what we have, and add or fix as needed
+ Avoid regenerating "known good" devices, and just refresh data for these.
+ In any cases where device data cannot be initialized completely, dispose of that data
+ and set the device to null, to be fixed by a future refresh.
+
+ data for all device
+ true if list is valid
+
+
+
+ make a new list, and completely replace any existing list.
+
+
+ The virtual controller info list.
+
+
+
+
+ append to existing device list.
+
+
+ The virtual controller info list.
+
+
+ true if list is valid
+
+
+
+
+ validate the existing device list.
+
+
+ The virtual controller info list.
+
+
+ The .
+
+
+
+
+ Generate a raw file device writer.
+
+
+ The virtual controller info list.
+
+
+ The index.
+
+
+ The .
+
+
+
+
+ The apply security settings to raw file.
+
+
+
+
+ Get raw file device writer.
+
+
+ The controller info.
+
+
+ The .
+
+
+
+
+ Handles a corrupt file by closing writers and renaming file.
+
+
+
+
+
+
+
+ The raw file writer adapter. Used internally to get a raw file writer.
+ Publicly can use factory which calls down to here.
+
+
+
+
+ The get raw file writer.
+
+
+ The raw file path.
+
+ [Optional] it has a default value of true.
+ True to specify that the raw file writer should create a raw file if the file isn't exist; however, if the file already exists,
+ the writer should create a raw file with the timestamp appends to the end of the file name.
+ False to specify that the raw file writer should not create a file and throw an System.IO exception if the file already exists.
+
+ Raw file writer object.
+
+
+
+ Provides methods to update the run header shared memory buffer
+
+
+
+
+ Wrapper to write the expected run time. All devices MUST do this so
+ that the real-time update can display a sensible Axis.
+
+ Device's run header object
+ Shared memory mapped file accessor
+ The expected Run Time.
+ Store error information
+ True if expected run time is written to disk successfully, False otherwise
+
+
+
+ Write the mass resolution for the mass spec device to disk.
+ Used by the scan processing routines.
+
+ Device's run header object
+ Shared memory mapped file accessor
+ Width of the half peak.
+ Store errors information
+ True if mass resolution is written to disk successfully, False otherwise
+
+
+
+ try write integer to memory map.
+
+
+ The writer.
+
+
+ The offset into the map.
+
+
+ The value to write.
+
+
+ The errors.
+
+
+ True if value is written to disk successfully.
+
+
+
+
+ Saves the filter mass precision.
+
+
+ The run Header.
+
+
+ The writer.
+
+
+ The precision.
+
+
+ Store errors information
+
+
+ True if filer mass precision is written to disk successfully, False otherwise
+
+
+
+
+ Writes the number of status log to disk.
+
+ Shared memory mapped file accessor.
+ The number of status log entries.
+ Store the errors information.
+ True if number of status log entries is written to disk successfully, False otherwise
+
+
+
+ Writes the number of error log to disk.
+
+ Shared memory mapped file accessor.
+ The number error log.
+ Store errors information.
+ True if number of error long entries is written to disk successfully, False otherwise
+
+
+
+ Saves the last scan number.
+
+ Shared memory mapped file accessor.
+ The last spec.
+ The errors.
+ True if the last spectrum number is written to disk successfully, false otherwise.
+
+
+
+ Writes the total number of trailer extra data to disk.
+
+ The Shared memory mapped file accessor for RunHeader.
+ The number of trailer extra entries.
+ Store the errors information.
+ True if number of trailer extra entries is written to disk successfully, False otherwise
+
+
+
+ Writes the total number of tune data entries to disk.
+
+ The Shared memory mapped file accessor for RunHeader.
+ The number of data entries.
+ Store the errors information.
+ True if number of tune data entries is written to disk successfully, false otherwise
+
+
+
+ Writes the total number of trailer scan events to disk.
+
+ The Shared memory mapped file accessor for RunHeader.
+ The number of trailer scan event entries.
+ Store the errors information.
+ True if number of trailer scan event entries is written to disk successfully, false otherwise
+
+
+
+ Write the state of the IsInAcquisition flag to indicate that the data acquiring is in progress or completed.
+
+ The Shared memory mapped file accessor for RunHeader.
+ True is still acquiring, otherwise False .
+ Store the errors information.
+ True if the state of the data acquiring is written to disk successfully, false otherwise
+
+
+
+ Saves the device run header fields - comment1 and comment2.
+
+ The device run header.
+ The writer.
+ The comment1.
+ The comment2.
+ Store the errors information.
+ True if these fields are written to disk successfully, false otherwise.
+
+
+
+ Updates the run header shared memory mapped buffer.
+
+
+ The run Header.
+
+
+ The writer.
+
+
+ The errors.
+
+ True the run header save to the shared memory map object, otherwise False.
+
+
+
+ Saves the device run header to the raw file using the provided binary writer.
+
+
+ The run header.
+
+
+ The writer.
+
+
+ The errors.
+
+
+ The .
+
+
+
+
+ Provides save extension methods for writing scan event object to disk.
+
+
+
+
+ Saves a scan event.
+
+ The scan event.
+ The writer.
+ The errors.
+ True if a scan event saved to disk; false otherwise.
+ mass Spec Scan Events
+ mass Spec Scan Events
+
+
+
+ Create byte array from event.
+ Formats a "ScanEventInfoStruct" from the supplied data, and returns as a byte array.
+
+
+ The scan event.
+
+
+ The byte array
+
+
+
+
+ write a table of mass ranges.
+
+
+ The method to get a range.
+
+
+ The writer.
+
+
+ The number of ranges.
+
+
+
+
+ write a table of doubles.
+
+
+ The method to get a value to write.
+
+
+ The writer.
+
+
+ The number of values.
+
+
+
+
+ Provides custom extension methods for sequence file info, such as Save().
+
+
+
+
+ Saves the sequence file information struct to file.
+
+ The information.
+ The writer.
+ The errors.
+ True sequence file info saved to sequence file; false otherwise.
+
+
+
+ Provides methods to create, update and write samples to sequence file.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Name of the file.
+ True open an existing sequence file with read/write privilege; false to create a new unique sequence file
+
+
+
+ Gets the file header for the sequence
+
+
+
+
+ Gets or sets additional information about a sequence
+
+
+
+
+ Gets the set of samples in the sequence
+
+
+
+
+ Gets the file error state.
+
+
+
+
+ Gets a value indicating whether the last file operation caused an error
+
+
+
+
+ Gets the name of the sequence file.
+
+
+
+
+ Gets or sets the sequence bracket type.
+ This determines which groups of samples use the same calibration curve.
+
+
+
+
+ Gets or sets a description of the auto sampler tray
+
+
+
+
+ Retrieves the user label at given 0-based label index.
+
+ Index of user label to be retrieved
+ String containing the user label at given index
+
+
+
+ Sets the user label at given 0-based label index.
+
+ Index of user label to be set
+ New string value for user label to be set
+ true if successful; false otherwise
+
+
+
+ Update the instrument method file header with the file header values passed in.
+ Only updates object values in memory, does not write to disk.
+
+ The file header.
+ File header cannot be null.
+
+
+
+ Saves Sequence data to file.
+
+ True saved to file; false otherwise.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+
+
+
+ Initials the writer.
+
+ Name of the file.
+ True sequence file writer created; false otherwise.
+
+
+
+ Initials the sequence file.
+
+
+
+
+ Copies the sequence information data.
+
+ The source sequence information.
+
+
+
+ This static class contains factory to create sequence file writer adapter.
+ It's used internally to get a sequence file writer object.
+
+
+
+
+ Creates the sequence file writer.
+
+ Name of the file.
+ True open an existing sequence file with read/write privilege; false to create a new unique sequence file
+ Sequence file writer object
+
+
+
+ The sequence row extension.
+
+
+
+
+ Extension method to save file header.
+
+
+ The sequence Row.
+
+
+ The binary writer used to write data.
+
+
+ The errors.
+
+
+ The .
+
+
+
+
+ Saves the specified binary writer.
+
+ The samples.
+ The binary writer.
+ The errors.
+ True samples saved to file; false otherwise.
+
+
+
+ SharedBuffer is a class that utilize memory mapped file for sharing data between processes.
+
+
+
+
+ Creates the shared buffer accessor.
+
+ device id
+ Name of the map.
+ The size.
+ if set to true [creatable].
+ device errors object
+ True created shared memory map object successfully; otherwise False
+
+
+
+ Validates the memory map accessor.
+
+ The shared memory map accessor.
+ Stream data ID
+ Device errors object that store errors information.
+
+
+
+ Provides methods to create temporary file for writing instrument data
+
+
+
+
+ The _temp file folder
+
+
+
+
+ The create temp file name for device data.
+
+ Instrument stream writer
+ Output of the temporary file name
+ The add zero value length field.
+ Reset the stream position back to the start. This requires addZeroValueLengthField is set True
+ True if a temporary file was created successfully; false otherwise.
+
+
+
+ Get the temporary the file folder path.
+
+ The file folder path for keeping the temporary files
+ Temporary file path length is greater than 260 chars : + temporary data folder path
+
+
+
+ Deletes the temporary file.
+
+ Name of the file.
+ Specified the file extension
+
+
+
+ Provides methods to write UV Device data.
+ Note: The following functions should be called before acquisition begins:
+ 1. Write Instrument Information
+ 2. Write Instrument Expected Run Time
+ 3. Write Status Log Header
+
+
+
+
+ Initializes a new instance of the class.
+
+ Type of the device.
+ Index of the device.
+ Name of the raw file.
+ if set to true [in acquisition].
+ The file revision.
+
+
+
+ Writes the analog instrument data.
+
+ The analog instrument data.
+ Index of the analog instrument data.
+ True instrument data write to the disk file; otherwise False.
+
+ Instrument Data
+ or
+ Analog Scan Index
+
+
+
+
+ Writes the UV instrument data.
+
+ The UV instrument data.
+ Index of the UV instrument data.
+ True instrument data write to the disk file; otherwise False.
+
+ Instrument Data
+ or
+ UV Scan Index
+
+
+
+
+ Writes the instrument data to file.
+
+ The instrument data.
+ Index of the instrument data.
+ True instrument data write to the disk file; otherwise False.
+
+
+
+ Validates the UV and Analog instrument data.
+
+ The instrument data.
+ Index of the UV instrument data.
+ True if the input data has the correct format; otherwise false.
+
+
+
+ Writes the instrument data packets to the file.
+ This routine will branch to the appropriate packet routines.
+
+ Block of a formatted data to write.
+ Size of the data block.
+ Type of the packet.
+ The number channels.
+ if set to true [is uniform time].
+ True if packets are written to disk successfully, False otherwise.
+ Not Supported Exception
+
+
+
+ Write instrument data packets to the file.
+ This routine will branch to the appropriate packet routines to compress the data block before being written to disk.
+
+ The data to write to file.
+ The data size.
+ Size of each packet in the data block.
+ The update number of packets.
+ TRUE if packets are written to disk successfully, FALSE otherwise.
+
+
+
+ Writes instrument scan index (header) to a file.
+
+ Index of the UV scan.
+ True if scan index is written to disk successfully, False otherwise
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+
+
+
+
+ The UV scan index extension.
+
+
+
+
+ Saves the UV scan index structure information to disk.
+
+ The UV scan index structure information.
+ The stream writer.
+ The errors.
+ True if UV scan index saved to disk, false otherwise.
+
+
+
+ Saves the mass spec scan index structure information to disk.
+
+ The mass spec scan index structure information.
+ The stream writer.
+ The errors.
+ True if mass spec scan index saved to disk, false otherwise.
+
+
+
+ Copy all the fields of the current CommonCore UV ScanIndex object to the new internal UV ScanIndex object.
+
+ Index of the UV instrument scan.
+ Create a copy of the UV ScanIndex object
+
+
+
+ Copy all the fields of the current CommonCore PDA ScanIndex object to the new internal UV ScanIndex object.
+
+ Index of the PDA data.
+ Create a copy of the UV ScanIndex object
+
+
+
+ Converts all the fields of the current ScanStatistics objet to a new internal scan index object
+
+ The scan statistics.
+ Create a copy of the mass spec scan index object
+
+
+
+ Provides some commonly used functions for writing device stream data.
+
+
+
+
+ Use mutex to create a "critical section" region of code that executes in isolation.
+
+ The type of the parameter of the method that this delegate encapsulates.
+ The method.
+ The errors information.
+ Name of the mutex.
+ True add Global prefix to the file name; otherwise no.
+ True if the operation succeed; otherwise False
+
+
+
+ Use mutex to create a "critical section" region of code that executes in isolation.
+
+ The method.
+ The errors.
+ The mutex.
+ True if the operation succeed, otherwise False
+
+
+
+ A wrapper method of a try catch.
+
+ The method.
+ The error.
+ True the method execute successfully; otherwise false
+
+
+
+ Convert a structure to byte array.
+
+ Such as file header, sequence row, etc.
+ The object structure.
+ The size.
+ results in byte array
+
+
+
+ Write string data to the file.
+
+ The writer.
+ The value.
+ True if it's wide/unicode char, False otherwise.
+
+
+
+ Convert double array to the integer array.
+
+ The values.
+ results in integer array
+
+
+
+ Convert the integer array to the byte array.
+
+ The values.
+ result in byte array
+
+
+
+ Convert double array to byte array.
+
+
+ The values.
+
+ Byte array
+
+
+
+ Updates the errors exception.
+
+ The value.
+ The errors.
+ Store the error information to the error object and return back the original exception object
+
+
+
+ Updates the errors from the shared memory map Buffer Info.
+
+ The buffer information.
+ Storing the errors information.
+ The shared memory map buffer info object
+
+
+
+ Disposes the buffer information object.
+
+ The buffer information.
+
+
+
+ Creates a unique file name based on the time and date along with the file passed in.
+
+
+ The file path.
+
+
+ The .
+
+
+
+
+ Deletes the temporary file (with .TMP extension) only if no reference
+
+ The buffer information.
+ Name of the temporary file.
+ True if permitted to delete temp files
+ return back the buffer info object
+
+
+
+ Determines whether [is generic header ready].
+
+ The written flags.
+ True if all generic headers have been written; false otherwise.
+
+
+
+ Determines whether the specified segmented scan has scan.
+
+ The segmented scan.
+ True if the segmented scan has scan, false otherwise.
+
+
+
+ Validates the string name.
+
+ The string name.
+ Error message
+ name;@Error message
+
+
+
+ Valid the instrument method file extension.
+
+ Name of the file.
+ Instrument method file name with correct file extension.
+
+
+
+ Validates the array argument.
+
+ array of integer and double
+ The data.
+ Name of the argument.
+ name of the input argument
+
+
+
diff --git a/logo.ico b/logo.ico
new file mode 100644
index 0000000..aed1249
Binary files /dev/null and b/logo.ico differ
diff --git a/logo.png b/logo.png
new file mode 100644
index 0000000..ed9b8ee
Binary files /dev/null and b/logo.png differ
diff --git a/packages.config b/packages.config
new file mode 100644
index 0000000..fc54626
--- /dev/null
+++ b/packages.config
@@ -0,0 +1,55 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file