本文整理汇总了C#中DataReader.GetIntensityBlock方法的典型用法代码示例。如果您正苦于以下问题:C# DataReader.GetIntensityBlock方法的具体用法?C# DataReader.GetIntensityBlock怎么用?C# DataReader.GetIntensityBlock使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DataReader
的用法示例。
在下文中一共展示了DataReader.GetIntensityBlock方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MaxGlobalIntensities
/// <summary>
/// Calculate the max global intensities for the given voltage group.
/// </summary>
/// <param name="reader">
/// The reader.
/// </param>
/// <param name="firstScan">
/// The first scan.
/// </param>
/// <param name="lastScan">
/// The last scan.
/// </param>
/// <param name="firstBin">
/// The first bin.
/// </param>
/// <param name="lastBin">
/// The last bin.
/// </param>
/// <param name="firstFrame">
/// The first frame.
/// </param>
/// <param name="lastFrame">
/// The last frame.
/// </param>
/// <returns>
/// The <see cref="double"/>.
/// </returns>
private static double MaxGlobalIntensities(DataReader reader, int firstScan, int lastScan, int firstBin, int lastBin, int firstFrame, int lastFrame)
{
int[][][] intensities = reader.GetIntensityBlock(firstFrame, lastFrame, DataReader.FrameType.MS1, firstScan, lastScan, firstBin, lastBin);
long maxIntensities = 0;
for (int scan = firstScan; scan <= lastScan; scan++)
{
for (int bin = firstBin; bin < lastBin; bin++)
{
long sumIntensity = 0;
for (int frame = firstFrame; frame <= lastFrame; frame++)
{
sumIntensity += intensities[frame - 1][scan - firstScan][bin - firstBin];
}
maxIntensities = (sumIntensity > maxIntensities) ? sumIntensity : maxIntensities;
}
}
return maxIntensities;
}