ProteoWizard
SpectrumList_IonMobility.hpp
Go to the documentation of this file.
1 //
2 // $Id: SpectrumList_IonMobility.hpp 9810 2016-06-13 21:41:53Z pcbrefugee $
3 //
4 //
5 // Original author: Matt Chambers <matt.chambers <a.t> vanderbilt.edu>
6 //
7 // Copyright 2016 Vanderbilt University - Nashville, TN 37232
8 //
9 // Licensed under the Apache License, Version 2.0 (the "License");
10 // you may not use this file except in compliance with the License.
11 // You may obtain a copy of the License at
12 //
13 // http://www.apache.org/licenses/LICENSE-2.0
14 //
15 // Unless required by applicable law or agreed to in writing, software
16 // distributed under the License is distributed on an "AS IS" BASIS,
17 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 // See the License for the specific language governing permissions and
19 // limitations under the License.
20 //
21 
22 
23 #ifndef _SPECTRUMLIST_IONMOBILITY_HPP_
24 #define _SPECTRUMLIST_IONMOBILITY_HPP_
25 
26 
29 
30 namespace pwiz {
31 namespace analysis {
32 
33 /// SpectrumList implementation that provides access to vendor-specific ion mobility functions
35 {
36  public:
37 
39 
40  static bool accept(const msdata::SpectrumListPtr& inner);
41  virtual msdata::SpectrumPtr spectrum(size_t index, bool getBinaryData = false) const;
42 
43  /// returns collisional cross-section associated with the drift time (specified in milliseconds)
44  virtual double driftTimeToCCS(double driftTime, double mz, int charge) const;
45 
46  /// returns the drift time (in milliseconds) associated with the given collisional cross-section
47  virtual double ccsToDriftTime(double ccs, double mz, int charge) const;
48 
49  private:
50  int mode_;
51 };
52 
53 
54 } // namespace analysis
55 } // namespace pwiz
56 
57 
58 #endif // _SPECTRUMLIST_IONMOBILITY_HPP_
SpectrumList implementation that provides access to vendor-specific ion mobility functions.
boost::shared_ptr< Spectrum > SpectrumPtr
Definition: MSData.hpp:569
Inheritable pass-through implementation for wrapping a SpectrumList.
boost::shared_ptr< SpectrumList > SpectrumListPtr
Definition: MSData.hpp:707
#define PWIZ_API_DECL
Definition: Export.hpp:32
double mz(double neutralMass, int protonDelta, int electronDelta=0, int neutronDelta=0)
Definition: Ion.hpp:78