HasBaselineEstimator.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2019 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 // psrchive/More/General/Pulsar/HasBaselineEstimator.h
10 
11 #ifndef __Pulsar_HasBaselineEstimator_h
12 #define __Pulsar_HasBaselineEstimator_h
13 
14 #include "ProfileWeightFunction.h"
15 
16 namespace Pulsar
17 {
18  class Profile;
19  class ProfileWeightFunction;
20 
22  class HasBaselineEstimator
23  {
24  public:
25 
28 
31 
34 
37 
40 
42  void share (HasBaselineEstimator* other);
43 
44  template<typename Child>
45  static void import (typename Child::Interface*);
46 
47  private:
48 
50  Reference::To<ProfileWeightFunction> baseline_estimator;
51 
53  HasBaselineEstimator* other;
54  };
55 
56  template<typename Child>
57  void HasBaselineEstimator::import (typename Child::Interface* interface)
58  {
62  "off", "Off-pulse estimator" );
63  };
64 
65 }
66 
67 
68 #endif
69 
70 
71 
Adaptively computes the baseline, assuming normally distributed noise.
Definition: GaussianBaseline.h:70
HasBaselineEstimator()
Default constructor.
Definition: HasBaselineEstimator.C:15
void share(HasBaselineEstimator *other)
Share the baseline estimator of other.
PhaseWeight algorithms that receive an input Profile.
Definition: ProfileWeightFunction.h:26
virtual void set_baseline_estimator(ProfileWeightFunction *)
Set the algorithm used to find the off-pulse phase bins.
Definition: HasBaselineEstimator.C:33
ProfileWeightFunction * get_baseline_estimator() const
Get the algorithm used to find the off-pulse phase bins.
Definition: HasBaselineEstimator.C:45
~HasBaselineEstimator()
Destructor.
Definition: HasBaselineEstimator.C:29
Defines the PSRCHIVE library.
Definition: CalSource.h:17
Manages a baseline estimator and its interface.
Definition: HasBaselineEstimator.h:27
virtual TextInterface::Parser * get_interface()=0
Return a text interface that can be used to configure this instance.

Generated using doxygen 1.8.17