ProteoWizard
FrequencyEstimatorPhysicalModel.hpp
Go to the documentation of this file.
1//
2// $Id$
3//
4//
5// Original author: Darren Kessner <darren@proteowizard.org>
6//
7// Copyright 2006 Louis Warschaw Prostate Cancer Center
8// Cedars Sinai Medical Center, Los Angeles, California 90048
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 _FREQUENCYESTIMATORPHYSICALMODEL_HPP_
25#define _FREQUENCYESTIMATORPHYSICALMODEL_HPP_
26
27
29#include "FrequencyEstimator.hpp"
30#include <string>
31#include <memory>
32
33
34namespace pwiz {
35namespace frequency {
36
37
38/// Physical model implementation of the FrequencyEstimator interface.
40{
41 public:
42
44 {
45 unsigned int windowRadius;
46 unsigned int iterationCount;
47 std::string outputDirectory; // ("" == no logging output)
48
49 Config() : windowRadius(10), iterationCount(20) {}
50 };
51
52 /// create an instance
53 static std::auto_ptr<FrequencyEstimatorPhysicalModel> create(const Config& config);
54
55 /// \name FrequencyEstimator interface
56 //@{
57 virtual Peak estimate(const FrequencyData& fd,
58 const Peak& initialEstimate) const = 0;
59
61 //@}
62};
63
64
65} // namespace frequency
66} // namespace pwiz
67
68
69#endif // _FREQUENCYESTIMATORPHYSICALMODEL_HPP_
70
71
#define PWIZ_API_DECL
Definition Export.hpp:32
Class for binary storage of complex frequency data.
Interface for frequency estimator modules.
Physical model implementation of the FrequencyEstimator interface.
virtual Peak estimate(const FrequencyData &fd, const Peak &initialEstimate) const =0
static std::auto_ptr< FrequencyEstimatorPhysicalModel > create(const Config &config)
create an instance