casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SolvableVJMRec.h
Go to the documentation of this file.
1 //# SolvableVJMRec.h: SolvableVisJones cal_main table record access & creation
2 //# Copyright (C) 1996,1997,1998,2003
3 //# Associated Universities, Inc. Washington DC, USA.
4 //#
5 //# This library is free software; you can redistribute it and/or modify it
6 //# under the terms of the GNU Library General Public License as published by
7 //# the Free Software Foundation; either version 2 of the License, or (at your
8 //# option) any later version.
9 //#
10 //# This library is distributed in the hope that it will be useful, but WITHOUT
11 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
13 //# License for more details.
14 //#
15 //# You should have received a copy of the GNU Library General Public License
16 //# along with this library; if not, write to the Free Software Foundation,
17 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
18 //#
19 //# Correspondence concerning AIPS++ should be adressed as follows:
20 //# Internet email: aips2-request@nrao.edu.
21 //# Postal address: AIPS++ Project Office
22 //# National Radio Astronomy Observatory
23 //# 520 Edgemont Road
24 //# Charlottesville, VA 22903-2475 USA
25 //#
26 //#
27 //# $Id$
28 
29 #ifndef CALIBRATION_SOLVABLEVJMREC_H
30 #define CALIBRATION_SOLVABLEVJMREC_H
31 
32 #include <casa/aips.h>
34 
35 namespace casa { //# NAMESPACE CASA - BEGIN
36 
37 // <summary>
38 // SolvableVisJonesMRec: SolvableVisJones cal_main table record access/creation
39 // </summary>
40 
41 // <use visibility=export>
42 
43 // <reviewed reviewer="" date="" tests="" demos="">
44 
45 // <prerequisite>
46 // <li> <linkto class="CalMainRecord">CalMainRecord</linkto> module
47 // <li> <linkto class="VisJonesMRec">VisJonesMRec</linkto> module
48 // <li> <linkto class="TimeVarVisJonesMRec">TimeVarVisJonesMRec</linkto> module
49 // </prerequisite>
50 //
51 // <etymology>
52 // From "solvable VisJones" and "main record".
53 // </etymology>
54 //
55 // <synopsis>
56 // The SolvableVisJonesMRec class allows the creation of records for the
57 // main calibration table of SolvableVisJones type, and provides access
58 // to the individual record fields. Specializations for GJones, DJones,
59 // TJones and BJones calibration table records are provided through
60 // inheritance.
61 // </etymology>
62 //
63 // <example>
64 // <srcblock>
65 // </srcblock>
66 // </example>
67 //
68 // <motivation>
69 // Encapsulate access to SolvableVisJones calibration table records.
70 // </motivation>
71 //
72 // <todo asof="98/01/01">
73 // (i) Deal with non-standard columns.
74 // </todo>
75 
77 {
78  public:
79  // Default null constructor, and destructor
82 
83  // Construct from an existing record
84  SolvableVisJonesMRec (const casacore::Record& inpRec);
85 
86  // Field accessors
87  // Note: uses protected functions defined in CalMainRecord,
88  // as fit parameters are used elsewhere in the inheritance
89  // tree for baseline-based and image plane calibration tables.
90  // a) define
91  void defineTotalSolnOk (const casacore::Bool& totalSolnOk)
92  {dTotalSolnOk (totalSolnOk);};
93  void defineTotalFit (const casacore::Float& totalFit) {dTotalFit (totalFit);};
94  void defineTotalFitWgt (const casacore::Float& totalFitWgt)
95  {dTotalFitWgt (totalFitWgt);};
96  void defineSolnOk (const casacore::Array <casacore::Bool>& solnOk) {dSolnOk (solnOk);};
97  void defineFit (const casacore::Array <casacore::Float>& fit) {dFit (fit);};
98  void defineFitWgt (const casacore::Array <casacore::Float>& fitWgt) {dFitWgt (fitWgt);};
99 
100  // b) get
101  void getTotalSolnOk (casacore::Bool& totalSolnOk) {gTotalSolnOk (totalSolnOk);};
102  void getTotalFit (casacore::Float& totalFit) {gTotalFit (totalFit);};
103  void getTotalFitWgt (casacore::Float& totalFitWgt) {gTotalFitWgt (totalFitWgt);};
107  };
108 
109 // <summary>
110 // GJonesMRec: GJones cal_main table record access & creation
111 // </summary>
112 
113 // <use visibility=export>
114 
115 // <reviewed reviewer="" date="" tests="" demos="">
116 
117 // <prerequisite>
118 //<li><linkto class="CalMainRecord">CalMainRecord</linkto> module
119 //<li><linkto class="VisJonesMRec">VisJonesMRec</linkto> module
120 //<li><linkto class="SolvableVisJonesMRec">SolvableVisJonesMRec</linkto> module
121 // </prerequisite>
122 //
123 // <etymology>
124 // From "GJones" and "main record".
125 // </etymology>
126 //
127 // <synopsis>
128 // The GJonesMRec class allows the creation of records for the
129 // main calibration table of GJones type, and provides access
130 // to the individual record fields. GJones matrices are used to
131 // store electronic information in the Measurement Equation formalism.
132 // </etymology>
133 //
134 // <example>
135 // <srcblock>
136 // </srcblock>
137 // </example>
138 //
139 // <motivation>
140 // Encapsulate access to GJones calibration table records.
141 // </motivation>
142 //
143 // <todo asof="98/01/01">
144 // (i) Deal with non-standard columns.
145 // </todo>
146 
148 {
149  public:
150  // Default null constructor, and destructor
151  GJonesMRec();
153 
154  // Construct from an existing record
155  GJonesMRec (const casacore::Record& inpRec);
156 
157 };
158 
159 // <summary>
160 // DJonesMRec: DJones cal_main table record access & creation
161 // </summary>
162 
163 // <use visibility=export>
164 
165 // <reviewed reviewer="" date="" tests="" demos="">
166 
167 // <prerequisite>
168 //<li><linkto class="CalMainRecord">CalMainRecord</linkto> module
169 //<li><linkto class="VisJonesMRec">VisJonesMRec</linkto> module
170 //<li><linkto class="SolvableVisJonesMRec">SolvableVisJonesMRec</linkto> module
171 // </prerequisite>
172 //
173 // <etymology>
174 // From "DJones" and "main record".
175 // </etymology>
176 //
177 // <synopsis>
178 // The DJonesMRec class allows the creation of records for the
179 // main calibration table of DJones type, and provides access
180 // to the individual record fields. DJones matrices are used
181 // to store instrumental polarization information in the
182 // Measurement Equation formalism.
183 // </etymology>
184 //
185 // <example>
186 // <srcblock>
187 // </srcblock>
188 // </example>
189 //
190 // <motivation>
191 // Encapsulate access to DJones calibration table records.
192 // </motivation>
193 //
194 // <todo asof="98/01/01">
195 // (i) Deal with non-standard columns.
196 // </todo>
197 
199 {
200  public:
201  // Default null constructor, and destructor
202  DJonesMRec();
204 
205  // Construct from an existing record
206  DJonesMRec (const casacore::Record& inpRec);
207 
208 };
209 
210 // <summary>
211 // TJonesMRec: TJones cal_main table record access & creation
212 // </summary>
213 
214 // <use visibility=export>
215 
216 // <reviewed reviewer="" date="" tests="" demos="">
217 
218 // <prerequisite>
219 //<li><linkto class="CalMainRecord">CalMainRecord</linkto> module
220 //<li><linkto class="VisJonesMRec">VisJonesMRec</linkto> module
221 //<li><linkto class="SolvableVisJonesMRec">SolvableVisJonesMRec</linkto> module
222 // </prerequisite>
223 //
224 // <etymology>
225 // From "TJones" and "main record".
226 // </etymology>
227 //
228 // <synopsis>
229 // The TJonesMRec class allows the creation of records for the
230 // main calibration table of TJones type, and provides access
231 // to the individual record fields. TJones matrices are used
232 // to atmospheric corrections in the Measurement Equation formalism.
233 // </etymology>
234 //
235 // <example>
236 // <srcblock>
237 // </srcblock>
238 // </example>
239 //
240 // <motivation>
241 // Encapsulate access to TJones calibration table records.
242 // </motivation>
243 //
244 // <todo asof="98/01/01">
245 // (i) Deal with non-standard columns.
246 // </todo>
247 
249 {
250  public:
251  // Default null constructor, and destructor
252  TJonesMRec();
254 
255  // Construct from an existing record
256  TJonesMRec (const casacore::Record& inpRec);
257 
258 };
259 
260 
261 } //# NAMESPACE CASA - END
262 
263 #endif
264 
265 
266 
267 
268 
void getTotalFitWgt(casacore::Float &totalFitWgt)
GJonesMRec()
Default null constructor, and destructor.
void getTotalFit(casacore::Float &totalFit)
void gTotalSolnOk(casacore::Bool &totalSolnOk)
b) get
void defineTotalFitWgt(const casacore::Float &totalFitWgt)
void gTotalFit(casacore::Float &totalFit)
void defineTotalSolnOk(const casacore::Bool &totalSolnOk)
Field accessors Note: uses protected functions defined in CalMainRecord, as fit parameters are used e...
void dTotalSolnOk(const casacore::Bool &totalSolnOk)
Field accessors for fit parameters.
void defineSolnOk(const casacore::Array< casacore::Bool > &solnOk)
void gFitWgt(casacore::Array< casacore::Float > &fitWgt)
void defineFitWgt(const casacore::Array< casacore::Float > &fitWgt)
DJonesMRec()
Default null constructor, and destructor.
TJonesMRec()
Default null constructor, and destructor.
TJonesMRec: TJones cal_main table record access &amp; creation.
A hierarchical collection of named fields of various types.
Definition: Record.h:180
bool Bool
Define the standard types used by Casacore.
Definition: aipstype.h:42
void gSolnOk(casacore::Array< casacore::Bool > &solnOk)
TimeVarVisJonesMRec: TimeVarVisJones cal_main table record access &amp; creation.
Definition: TimeVarVJMRec.h:74
void dFitWgt(const casacore::Array< casacore::Float > &fitWgt)
float Float
Definition: aipstype.h:54
void gTotalFitWgt(casacore::Float &totalFitWgt)
SolvableVisJonesMRec()
Default null constructor, and destructor.
void gFit(casacore::Array< casacore::Float > &fit)
void defineTotalFit(const casacore::Float &totalFit)
void getFitWgt(casacore::Array< casacore::Float > &fitWgt)
void getTotalSolnOk(casacore::Bool &totalSolnOk)
b) get
GJonesMRec: GJones cal_main table record access &amp; creation.
void getSolnOk(casacore::Array< casacore::Bool > &solnOk)
void dSolnOk(const casacore::Array< casacore::Bool > &solnOk)
void getFit(casacore::Array< casacore::Float > &fit)
SolvableVisJonesMRec: SolvableVisJones cal_main table record access/creation.
void dFit(const casacore::Array< casacore::Float > &fit)
void dTotalFit(const casacore::Float &totalFit)
DJonesMRec: DJones cal_main table record access &amp; creation.
void dTotalFitWgt(const casacore::Float &totalFitWgt)
void defineFit(const casacore::Array< casacore::Float > &fit)