ProfileStrategies.h
1//-*-C++-*-
2/***************************************************************************
3 *
4 * Copyright (C) 2018 by Willem van Straten
5 * Licensed under the Academic Free License version 2.1
6 *
7 ***************************************************************************/
8
9// psrchive/Base/Classes/Pulsar/ProfileStrategies.h
10
11#ifndef __Pulsar_ProfileStrategies_h
12#define __Pulsar_ProfileStrategies_h
13
14#include "Pulsar/Profile.h"
15
16namespace Pulsar {
17
18 class WidthEstimator;
19
22 {
23 public:
24
26 virtual ~Strategies () {}
27
29 virtual ProfileWeightFunction* baseline () const = 0;
30
32 virtual ProfileWeightFunction* onpulse () const = 0;
33
35 virtual SNRatioEstimator* snratio () const = 0;
36
38 virtual WidthEstimator* width () const = 0;
39
41 virtual Strategies* clone () const = 0;
42 };
43
44}
45
46#endif
Manages the strategies that implement algorithms.
Definition ProfileStrategies.h:22
PhaseWeight algorithms that receive an input Profile.
Definition ProfileWeightFunction.h:22
Manages the strategies that implement algorithms.
Definition ProfileStrategies.h:22
virtual ProfileWeightFunction * onpulse() const =0
The implementation of the on-pulse finding algorithm.
virtual ~Strategies()
Destructor.
Definition ProfileStrategies.h:26
virtual WidthEstimator * width() const =0
The implementation of the pulse width estimator.
virtual Strategies * clone() const =0
Clone.
virtual SNRatioEstimator * snratio() const =0
The implementation of the signal-to-noise ratio calculation.
virtual ProfileWeightFunction * baseline() const =0
The implementation of the baseline finding algorithm.
Algorithms that estimate the signal-to-noise ratio of pulse profiles.
Definition SNRatioEstimator.h:23
Algorithms that estimate the width of the pulse profile.
Definition WidthEstimator.h:27
Defines the PSRCHIVE library.
Definition CalSource.h:17

Generated using doxygen 1.14.0