ProteoWizard
FeatureDetectorPeakel.hpp
Go to the documentation of this file.
1//
2// $Id$
3//
4//
5// Original author: Darren Kessner <darren@proteowizard.org>
6//
7// Copyright 2009 Center for Applied Molecular Medicine
8// University of Southern California, Los Angeles, CA
9//
10// Licensed under the Apache License, Version 2.0 (the "License");
11// you may not use this file except in compliance with the License.
12// You may obtain a copy of the License at
13//
14// http://www.apache.org/licenses/LICENSE-2.0
15//
16// Unless required by applicable law or agreed to in writing, software
17// distributed under the License is distributed on an "AS IS" BASIS,
18// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19// See the License for the specific language governing permissions and
20// limitations under the License.
21//
22
23
24#ifndef _FEATUREDETECTORPEAKEL_HPP_
25#define _FEATUREDETECTORPEAKEL_HPP_
26
27
28#include "FeatureDetector.hpp"
29#include "PeakExtractor.hpp"
30#include "PeakelGrower.hpp"
31#include "PeakelPicker.hpp"
32
33
34namespace pwiz {
35namespace analysis {
36
37
38///
39/// FeatureDetectorPeakel implements a 'template method', delegating to 'strategies'
40/// encapsulated by the following interfaces:
41/// PeakExtractor
42/// PeakelGrower
43/// PeakelPicker
44///
46{
47 public:
48
50
51 FeatureDetectorPeakel(boost::shared_ptr<PeakExtractor> peakExtractor,
52 boost::shared_ptr<PeakelGrower> peakelGrower,
53 boost::shared_ptr<PeakelPicker> peakelPicker);
54
55 virtual void detect(const MSData& msd, FeatureField& result) const;
56
57 /// convenience construction
58
70
71 static boost::shared_ptr<FeatureDetectorPeakel> create(Config config);
72
73 private:
74 boost::shared_ptr<PeakExtractor> peakExtractor_;
75 boost::shared_ptr<PeakelGrower> peakelGrower_;
76 boost::shared_ptr<PeakelPicker> peakelPicker_;
77};
78
79
80} // namespace analysis
81} // namespace pwiz
82
83
84#endif // _FEATUREDETECTORPEAKEL_HPP_
85
#define PWIZ_API_DECL
Definition Export.hpp:32
FeatureDetectorPeakel implements a 'template method', delegating to 'strategies' encapsulated by the ...
boost::shared_ptr< PeakExtractor > peakExtractor_
FeatureDetectorPeakel(boost::shared_ptr< PeakExtractor > peakExtractor, boost::shared_ptr< PeakelGrower > peakelGrower, boost::shared_ptr< PeakelPicker > peakelPicker)
static boost::shared_ptr< FeatureDetectorPeakel > create(Config config)
boost::shared_ptr< PeakelPicker > peakelPicker_
boost::shared_ptr< PeakelGrower > peakelGrower_
virtual void detect(const MSData &msd, FeatureField &result) const
MZRTField is a std::set of boost::shared_ptrs, stored as a binary tree ordered by LessThan_MZRT.
Definition MZRTField.hpp:95
This is the root element of ProteoWizard; it represents the mzML element, defined as: intended to cap...
Definition MSData.hpp:850