HOPS
HOPS class reference
MHO_FringeControlInitialization.hh
Go to the documentation of this file.
1 #ifndef MHO_FringeControlInitialization_HH__
2 #define MHO_FringeControlInitialization_HH__
3 
4 //global messaging util
5 #include "MHO_Message.hh"
6 
7 //data/config passing classes
8 #include "MHO_ContainerStore.hh"
10 #include "MHO_OperatorToolbox.hh"
11 #include "MHO_ParameterStore.hh"
12 #include "MHO_ScanDataStore.hh"
13 
14 //initialization
16 
17 namespace hops
18 {
19 
32 {
33 
34  public:
37 
38  public:
39  //control format and control_statements objects should reference the MHO_FringeData object
40 
49  static void process_control_file(MHO_ParameterStore* paramStore, mho_json& control_format,
50  mho_json& control_statements);
51 
58  static void add_default_operator_format_def(mho_json& format);
59 
66  static void add_default_operators(mho_json& statements);
67 
74  static void add_polprod_sum_operator(mho_json& statements);
75 
83  static bool is_linear_polprod(std::string pp);
84 
91  static void add_dpar_sign_correction_operator(mho_json& statements);
92 
100  static bool is_circular_polprod(std::string pp);
101 
108  static void add_circ_field_rotation_operator(mho_json& statements);
109 
110  //checks if the special ionospheric fringe fitter is needed
118  static bool need_ion_search(mho_json* control);
119 };
120 
121 } // namespace hops
122 
123 #endif
nlohmann::json mho_json
Definition: MHO_JSONHeaderWrapper.hh:5
Class MHO_FringeControlInitialization.
Definition: MHO_FringeControlInitialization.hh:32
static bool is_linear_polprod(std::string pp)
Checks if input string represents a linear polarization product.
Definition: MHO_FringeControlInitialization.cc:296
virtual ~MHO_FringeControlInitialization()
Definition: MHO_FringeControlInitialization.hh:36
MHO_FringeControlInitialization()
Definition: MHO_FringeControlInitialization.hh:35
static void add_polprod_sum_operator(mho_json &statements)
Adds a default polarization product sum operator to the given statements.
Definition: MHO_FringeControlInitialization.cc:276
static void add_dpar_sign_correction_operator(mho_json &statements)
Adds a default correction operator for dpar (delta parallactic angle) to the given statements.
Definition: MHO_FringeControlInitialization.cc:286
static void process_control_file(MHO_ParameterStore *paramStore, mho_json &control_format, mho_json &control_statements)
Process control file and populate applicable statements in parameter store.
Definition: MHO_FringeControlInitialization.cc:46
static bool need_ion_search(mho_json *control)
Checks if special ionospheric fringe fitter is needed by searching control statements.
Definition: MHO_FringeControlInitialization.cc:15
static void add_default_operator_format_def(mho_json &format)
Adds default operator format definitions to an mho_json object for fringe control initialization.
Definition: MHO_FringeControlInitialization.cc:160
static void add_circ_field_rotation_operator(mho_json &statements)
Adds a predefined correction operator for circular-pol field rotation to the given statements.
Definition: MHO_FringeControlInitialization.cc:355
static void add_default_operators(mho_json &statements)
Adds default operators to control statements for MHO fringe control initialization.
Definition: MHO_FringeControlInitialization.cc:237
static bool is_circular_polprod(std::string pp)
Checks if given polarization product is circular (RR, LL, RL, LR).
Definition: MHO_FringeControlInitialization.cc:334
Class MHO_ParameterStore.
Definition: MHO_ParameterStore.hh:52
Definition: MHO_ChannelLabeler.hh:17