StrategySet.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/StrategySet.h
10 
11 #ifndef __Pulsar_StrategySet_h
12 #define __Pulsar_StrategySet_h
13 
14 #include "Pulsar/ProfileStrategies.h"
15 
16 namespace Pulsar {
17 
18  // forward declaration of ProfileStats class, which manages strategies
19  class ProfileStats;
20 
21  class StrategySet : public Profile::Strategies
22  {
24  mutable Reference::To<ProfileStats> stats;
25 
26  public:
27 
29  static unsigned get_instance_count();
30 
32 
34  get_default_baseline();
35 
37 
39  get_default_onpulse();
40 
42 
44  get_default_snratio();
45 
47  StrategySet ();
48 
50  StrategySet (const StrategySet&);
51 
53  ~StrategySet ();
54 
56  StrategySet* clone () const;
57 
59  ProfileWeightFunction* baseline () const;
60  void set_baseline (ProfileWeightFunction*);
61 
63  ProfileWeightFunction* onpulse () const;
64  void set_onpulse (ProfileWeightFunction*);
65 
67  SNRatioEstimator* snratio () const;
68  void set_snratio (SNRatioEstimator*);
69 
71  WidthEstimator* width () const;
72  void set_width (WidthEstimator*);
73 
75  ProfileStats* get_stats () const;
76  void set_stats (ProfileStats*);
77 
79  class Extension;
80  };
81 
82 }
83 
84 #endif
Manages the strategies that implement algorithms.
Definition: ProfileStrategies.h:26
void set_onpulse_estimator(ProfileWeightFunction *)
The algorithm used to find the on-pulse phase bins.
Definition: ProfileStats.C:170
The primary interface to pulsar observational data.
Definition: Archive.h:45
Integration * get_container()
Return the container.
Definition: ManagedStrategies.C:36
PhaseWeight algorithms that receive an input Profile.
Definition: ProfileWeightFunction.h:26
StrategySet * get_strategy() const
Returns the strategy manager.
Definition: StrategySet.C:182
Algorithms that estimate the signal-to-noise ratio of pulse profiles.
Definition: SNRatioEstimator.h:27
Profile::Strategies * get_strategy() const
Returns the strategy manager.
Definition: StrategySet.C:143
Definition: ArchiveExtension.h:28
Defines the PSRCHIVE library.
Definition: CalSource.h:17
Computes pulse profile statistics.
Definition: ProfileStats.h:35
Strategies * get_strategy() const
Returns the strategy manager.
Definition: StrategySet.C:122
Algorithms that estimate the width of the pulse profile.
Definition: WidthEstimator.h:31
Inserted by Integration class to tell Profile instance it is managed.
Definition: ManagedStrategies.h:64

Generated using doxygen 1.8.17