OpenMS
Loading...
Searching...
No Matches
BrukerTimsFile.h
Go to the documentation of this file.
1// Copyright (c) 2002-present, OpenMS Inc. -- EKU Tuebingen, ETH Zurich, and FU Berlin
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include <OpenMS/config.h>
7
8#ifdef WITH_OPENTIMS
9
13#include <cstdint>
14#include <string>
15
16class TimsDataHandle;
17
18namespace OpenMS
19{
20
44 class OPENMS_DLLAPI BrukerTimsFile : public ProgressLogger
45 {
46 public:
48 struct Config
49 {
50 double calibration_tolerance = 0.0;
51 bool calibrate = false;
52
53 float ms1_centroid_mz_ppm = 0.0f;
54 float ms1_centroid_im_pct = 0.0f;
55
56 enum ExportMode { AUTO, SPECTRUM, FRAME };
57 ExportMode export_mode = AUTO;
58
61 enum class TimsCalibrationStrategy { AUTO, BRUKER_SDK, RATIONAL, LINEAR };
62 TimsCalibrationStrategy tims_calibration_strategy = TimsCalibrationStrategy::AUTO;
63
67 enum class PressureCompensation { NONE, GLOBAL, PER_FRAME };
68 PressureCompensation pressure_compensation = PressureCompensation::NONE;
69
72 std::string bruker_sdk_path;
73 };
74
76 void load(const String& path, MSExperiment& exp);
78 void load(const String& path, MSExperiment& exp, const Config& config);
79
83 void transform(const String& path, Interfaces::IMSDataConsumer* consumer);
85 void transform(const String& path, Interfaces::IMSDataConsumer* consumer, const Config& config);
86
87 private:
89 void loadDDA_(TimsDataHandle& handle, MSExperiment& exp, const Config& config);
90
92 void loadDIA_(TimsDataHandle& handle, MSExperiment& exp, const Config& config);
93
95 void loadFrames_(TimsDataHandle& handle, MSExperiment& exp, const Config& config);
96
98 bool isDIA_(const String& tdf_path) const;
99 };
100
101} // namespace OpenMS
102
103#endif // WITH_OPENTIMS
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19