Cheetah - SKA - PSS - Prototype Time Domain Search Pipeline
Config.h
1 /*
2  * The MIT License (MIT)
3  *
4  * Copyright (c) 2016 The SKA organisation
5  *
6  * Permission is hereby granted, free of charge, to any person obtaining a copy
7  * of this software and associated documentation files (the "Software"), to deal
8  * in the Software without restriction, including without limitation the rights
9  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10  * copies of the Software, and to permit persons to whom the Software is
11  * furnished to do so, subject to the following conditions:
12  *
13  * The above copyright notice and this permission notice shall be included in all
14  * copies or substantial portions of the Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22  * SOFTWARE.
23  */
24 #ifndef SKA_CHEETAH_RFIM_CONFIGAMPP_H
25 #define SKA_CHEETAH_RFIM_CONFIGAMPP_H
26 
27 #include "cheetah/utils/Config.h"
28 #include "cheetah/rfim/ampp/BandPassConfig.h"
29 
30 namespace ska {
31 namespace cheetah {
32 namespace rfim {
33 namespace ampp {
34 
40 class Config : public utils::Config
41 {
42  public:
43  Config();
44  ~Config();
45 
46  bool active() const;
47  unsigned max_history() const;
48  float channel_rejection_rms() const;
49  float spectrum_rejection_rms() const;
50  bool zero_dm() const;
51 
52  BandPassConfig const& bandpass() const;
53  BandPassConfig& bandpass();
54 
55  protected:
56  void add_options(OptionsDescriptionEasyInit& add_options) override;
57 
58  private:
59  bool _active;
60  unsigned _max_history;
61  float _cr_factor;
62  float _sr_factor;
63  bool _zero_dm;
64  BandPassConfig _bandpass_config;
65 };
66 
67 
68 } // namespace ampp
69 } // namespace rfim
70 } // namespace cheetah
71 } // namespace ska
72 
73 #endif // SKA_CHEETAH_RFIM_CONFIGAMPP_H
Base class for module configuration.
Definition: Config.h:42
Some limits and constants for FLDO.
Definition: Brdz.h:35
Configuration Options for the ampp rfi clipping algorithm.
Definition: Config.h:40