ProteoWizard
SpectrumList_PeakFilter.hpp
Go to the documentation of this file.
1 //
2 // $Id: SpectrumList_PeakFilter.hpp 6902 2014-11-17 22:34:37Z chambm $
3 //
4 //
5 // Original author: Matt Chambers <matt.chambers <a.t> vanderbilt.edu>
6 //
7 // Copyright 2008 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_PEAKFILTER_HPP_
24 #define _SPECTRUMLIST_PEAKFILTER_HPP_
25 
26 
27 #include <boost/scoped_ptr.hpp>
30 
31 
32 namespace pwiz {
33 namespace analysis {
34 
35 /// SpectrumList implementation that returns spectra with the specified SpectrumDataFilter operation applied
37 {
38  public:
39 
41  SpectrumDataFilterPtr filterFunctor);
42 
43  /// peak filters work on any SpectrumList
44  static bool accept(const msdata::SpectrumListPtr& inner) {return true;}
45 
46  virtual msdata::SpectrumPtr spectrum(size_t index, bool getBinaryData = false) const;
47  virtual msdata::SpectrumPtr spectrum(size_t index, msdata::DetailLevel detailLevel = msdata::DetailLevel_FullMetadata) const;
48 
49  private:
51 };
52 
53 } // namespace analysis
54 } // namespace pwiz
55 
56 
57 #endif // _SPECTRUMLIST_PEAKFILTER_HPP_
boost::shared_ptr< SpectrumDataFilter > SpectrumDataFilterPtr
Definition: DataFilter.hpp:42
boost::shared_ptr< Spectrum > SpectrumPtr
Definition: MSData.hpp:569
SpectrumList implementation that returns spectra with the specified SpectrumDataFilter operation appl...
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
static bool accept(const msdata::SpectrumListPtr &inner)
peak filters work on any SpectrumList