casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SolvableVJMCol.h
Go to the documentation of this file.
1 //# SolvableVJMCol.h: SolvableVisJones cal_main table column access
2 //# Copyright (C) 1996,1997,1998,2001,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_SOLVABLEVJMCOL_H
30 #define CALIBRATION_SOLVABLEVJMCOL_H
31 
34 
35 namespace casa { //# NAMESPACE CASA - BEGIN
36 
37 // <summary>
38 // ROSolvableVisJonesMCol: Read-only SolvableVisJones cal_main column access
39 // </summary>
40 
41 // <use visibility=export>
42 
43 // <reviewed reviewer="" date="" tests="" demos="">
44 
45 // <prerequisite>
46 // <li> <linkto class="ROCalMainColumns">ROCalMainColumns</linkto> module
47 // </prerequisite>
48 //
49 // <etymology>
50 // From "read-only","solvable visibility Jones","cal main" and "columns".
51 // </etymology>
52 //
53 // <synopsis>
54 // The ROSolvableVisJonesMCol class allows read-only access to columns in the
55 // SolvableVisJones main calibration table. Specializations for individual
56 // solvable Jones matrix types (e.g. GJones) are provided through inheritance.
57 // </etymology>
58 //
59 // <example>
60 // <srcblock>
61 // </srcblock>
62 // </example>
63 //
64 // <motivation>
65 // Encapsulate read-only access to SVJ calibration table columns.
66 // </motivation>
67 //
68 // <todo asof="01/07/01">
69 // (i) Deal with non-standard columns.
70 // </todo>
71 
73 {
74  public:
75  // Construct from a calibration table
77 
78  // Default destructor
80 
81  // Read-only column accessors
90 
91  protected:
92  // Prohibit public use of the null constructor, which
93  // does not produce a usable object.
95 
96  private:
97  // Prohibit copy constructor and assignment operator
100 
101  // Private column accessors
110 };
111 
112 // <summary>
113 // SolvableVisJonesMCol: RW SolvableVisJones cal_main column access
114 // </summary>
115 
116 // <use visibility=export>
117 
118 // <reviewed reviewer="" date="" tests="" demos="">
119 
120 // <prerequisite>
121 // <li> <linkto class="CalMainColumns">CalMainColumns</linkto> module
122 // </prerequisite>
123 //
124 // <etymology>
125 // From "solvable visibility Jones","cal main table" and "columns".
126 // </etymology>
127 //
128 // <synopsis>
129 // The SolvableVisJonesMCol class allows read-write access to columns in the
130 // SolvableVisJones main calibration table. Specializations for individual
131 // solvable Jones matrix types (e.g. GJones) are provided through inheritance.
132 // </etymology>
133 //
134 // <example>
135 // <srcblock>
136 // </srcblock>
137 // </example>
138 //
139 // <motivation>
140 // Encapsulate read-write access to SVJ calibration table columns.
141 // </motivation>
142 //
143 // <todo asof="01/07/01">
144 // (i) Deal with non-standard columns.
145 // </todo>
146 
148 {
149  public:
150  // Construct from a calibration table
152 
153  // Default destructor
154  virtual ~SolvableVisJonesMCol() {};
155 
156  // Read-write column accessors
165 
166  protected:
167  // Prohibit public use of the null constructor, which
168  // does not produce a usable object.
170 
171  private:
172  // Prohibit copy constructor and assignment operator
175 
176  // Private column accessors
185 };
186 
187 // <summary>
188 // ROGJonesMCol: Read-only GJones cal_main column access
189 // </summary>
190 
191 // <use visibility=export>
192 
193 // <reviewed reviewer="" date="" tests="" demos="">
194 
195 // <prerequisite>
196 // <li> <linkto class="ROCalMainColumns">ROCalMainColumns</linkto> module
197 // </prerequisite>
198 //
199 // <etymology>
200 // From "read-only","GJones","cal main" and "columns".
201 // </etymology>
202 //
203 // <synopsis>
204 // The ROGJonesMCol class allows read-only access to columns in the
205 // GJones main calibration table. GJones matrices are used to store
206 // electronic gain information in the Measurement Equation formalism.
207 // </etymology>
208 //
209 // <example>
210 // <srcblock>
211 // </srcblock>
212 // </example>
213 //
214 // <motivation>
215 // Encapsulate read-only access to GJones calibration table columns.
216 // </motivation>
217 //
218 // <todo asof="01/07/01">
219 // (i) Deal with non-standard columns.
220 // </todo>
221 
223 {
224  public:
225  // Construct from a calibration table
226  ROGJonesMCol (const GJonesTable& gjTable);
227 
228  // Default destructor
229  virtual ~ROGJonesMCol() {};
230 
231  protected:
232  // Prohibit public use of the null constructor, which
233  // does not produce a usable object.
235 
236  private:
237  // Prohibit copy constructor and assignment operator
238  ROGJonesMCol (const ROGJonesMCol&);
240 };
241 
242 // <summary>
243 // GJonesMCol: RW GJones cal_main column access
244 // </summary>
245 
246 // <use visibility=export>
247 
248 // <reviewed reviewer="" date="" tests="" demos="">
249 
250 // <prerequisite>
251 // <li> <linkto class="CalMainColumns">CalMainColumns</linkto> module
252 // </prerequisite>
253 //
254 // <etymology>
255 // From "GJones","cal main table" and "columns".
256 // </etymology>
257 //
258 // <synopsis>
259 // The GJonesMCol class allows read-write access to columns in the
260 // GJones main calibration table. GJones matrices are used to store
261 // electronic gain information in the Measurement Equation formalism.
262 // </etymology>
263 //
264 // <example>
265 // <srcblock>
266 // </srcblock>
267 // </example>
268 //
269 // <motivation>
270 // Encapsulate read-write access to GJones calibration table columns.
271 // </motivation>
272 //
273 // <todo asof="01/07/01">
274 // (i) Deal with non-standard columns.
275 // </todo>
276 
278 {
279  public:
280  // Construct from a calibration table
281  GJonesMCol (GJonesTable& gjTable);
282 
283  // Default destructor
284  virtual ~GJonesMCol() {};
285 
286  protected:
287  // Prohibit public use of the null constructor, which
288  // does not produce a usable object.
290 
291  private:
292  // Prohibit copy constructor and assignment operator
293  GJonesMCol (const GJonesMCol&);
295 };
296 
297 // <summary>
298 // RODJonesMCol: Read-only DJones cal_main column access
299 // </summary>
300 
301 // <use visibility=export>
302 
303 // <reviewed reviewer="" date="" tests="" demos="">
304 
305 // <prerequisite>
306 // <li> <linkto class="ROCalMainColumns">ROCalMainColumns</linkto> module
307 // </prerequisite>
308 //
309 // <etymology>
310 // From "read-only","DJones","cal main" and "columns".
311 // </etymology>
312 //
313 // <synopsis>
314 // The RODJonesMCol class allows read-only access to columns in the
315 // DJones main calibration table. DJones matrices are used to store
316 // instrumental polarization calibration information in the
317 // Measurement Equation formalism.
318 // </etymology>
319 //
320 // <example>
321 // <srcblock>
322 // </srcblock>
323 // </example>
324 //
325 // <motivation>
326 // Encapsulate read-only access to DJones calibration table columns.
327 // </motivation>
328 //
329 // <todo asof="01/07/01">
330 // (i) Deal with non-standard columns.
331 // </todo>
332 
334 {
335  public:
336  // Construct from a calibration table
337  RODJonesMCol (const DJonesTable& djTable);
338 
339  // Default destructor
340  virtual ~RODJonesMCol() {};
341 
342  protected:
343  // Prohibit public use of the null constructor, which
344  // does not produce a usable object.
346 
347  private:
348  // Prohibit copy constructor and assignment operator
349  RODJonesMCol (const RODJonesMCol&);
351 };
352 
353 // <summary>
354 // DJonesMCol: RW DJones cal_main column access
355 // </summary>
356 
357 // <use visibility=export>
358 
359 // <reviewed reviewer="" date="" tests="" demos="">
360 
361 // <prerequisite>
362 // <li> <linkto class="CalMainColumns">CalMainColumns</linkto> module
363 // </prerequisite>
364 //
365 // <etymology>
366 // From "DJones","cal main table" and "columns".
367 // </etymology>
368 //
369 // <synopsis>
370 // The DJonesMCol class allows read-write access to columns in the
371 // DJones main calibration table. DJones matrices are used to store
372 // instrumental polarization calibration information in the Measurement
373 // Equation formalism.
374 // </etymology>
375 //
376 // <example>
377 // <srcblock>
378 // </srcblock>
379 // </example>
380 //
381 // <motivation>
382 // Encapsulate read-write access to DJones calibration table columns.
383 // </motivation>
384 //
385 // <todo asof="01/07/01">
386 // (i) Deal with non-standard columns.
387 // </todo>
388 
390 {
391  public:
392  // Construct from a calibration table
393  DJonesMCol (DJonesTable& djTable);
394 
395  // Default destructor
396  virtual ~DJonesMCol() {};
397 
398  protected:
399  // Prohibit public use of the null constructor, which
400  // does not produce a usable object.
402 
403  private:
404  // Prohibit copy constructor and assignment operator
405  DJonesMCol (const DJonesMCol&);
407 };
408 
409 // <summary>
410 // ROTJonesMCol: Read-only TJones cal_main column access
411 // </summary>
412 
413 // <use visibility=export>
414 
415 // <reviewed reviewer="" date="" tests="" demos="">
416 
417 // <prerequisite>
418 // <li> <linkto class="ROCalMainColumns">ROCalMainColumns</linkto> module
419 // </prerequisite>
420 //
421 // <etymology>
422 // From "read-only","TJones","cal main" and "columns".
423 // </etymology>
424 //
425 // <synopsis>
426 // The ROTJonesMCol class allows read-only access to columns in the
427 // TJones main calibration table. TJones matrices are used to store
428 // atmospheric calibration information in the Measurement Equation
429 // formalism.
430 // </etymology>
431 //
432 // <example>
433 // <srcblock>
434 // </srcblock>
435 // </example>
436 //
437 // <motivation>
438 // Encapsulate read-only access to TJones calibration table columns.
439 // </motivation>
440 //
441 // <todo asof="01/07/01">
442 // (i) Deal with non-standard columns.
443 // </todo>
444 
446 {
447  public:
448  // Construct from a calibration table
449  ROTJonesMCol (const TJonesTable& djTable);
450 
451  // Default destructor
452  virtual ~ROTJonesMCol() {};
453 
454  protected:
455  // Prohibit public use of the null constructor, which
456  // does not produce a usable object.
458 
459  private:
460  // Prohibit copy constructor and assignment operator
461  ROTJonesMCol (const ROTJonesMCol&);
463 };
464 
465 // <summary>
466 // TJonesMCol: RW TJones cal_main column access
467 // </summary>
468 
469 // <use visibility=export>
470 
471 // <reviewed reviewer="" date="" tests="" demos="">
472 
473 // <prerequisite>
474 // <li> <linkto class="CalMainColumns">CalMainColumns</linkto> module
475 // </prerequisite>
476 //
477 // <etymology>
478 // From "TJones","cal main table" and "columns".
479 // </etymology>
480 //
481 // <synopsis>
482 // The TJonesMCol class allows read-write access to columns in the
483 // TJones main calibration table. TJones matrices are used to store
484 // atmospheric calibration information in the Measurement Equation
485 // formalism.
486 // </etymology>
487 //
488 // <example>
489 // <srcblock>
490 // </srcblock>
491 // </example>
492 //
493 // <motivation>
494 // Encapsulate read-write access to TJones calibration table columns.
495 // </motivation>
496 //
497 // <todo asof="01/07/01">
498 // (i) Deal with non-standard columns.
499 // </todo>
500 
502 {
503  public:
504  // Construct from a calibration table
505  TJonesMCol (TJonesTable& djTable);
506 
507  // Default destructor
508  virtual ~TJonesMCol() {};
509 
510  protected:
511  // Prohibit public use of the null constructor, which
512  // does not produce a usable object.
514 
515  private:
516  // Prohibit copy constructor and assignment operator
517  TJonesMCol (const TJonesMCol&);
519 };
520 
521 
522 } //# NAMESPACE CASA - END
523 
524 #endif
525 
526 
527 
528 
529 
ROTJonesMCol & operator=(const ROTJonesMCol &)
TJonesTable: TJones calibration table access and creation.
ROGJonesMCol: Read-only GJones cal_main column access.
GJonesMCol()
Prohibit public use of the null constructor, which does not produce a usable object.
RODJonesMCol: Read-only DJones cal_main column access.
const casacore::ArrayColumn< casacore::Float > & snr() const
casacore::ArrayColumn< casacore::Bool > & solnOk()
casacore::ScalarColumn< casacore::Bool > & totalSolnOk()
Read-write column accessors.
casacore::ScalarColumn< casacore::Bool > totalSolnOk_p
Private column accessors.
ROTJonesMCol()
Prohibit public use of the null constructor, which does not produce a usable object.
casacore::ArrayColumn< casacore::Float > fit_p
casacore::ArrayColumn< casacore::Float > fitWgt_p
casacore::ArrayColumn< casacore::Bool > & flag()
casacore::ArrayColumn< casacore::Bool > solnOk_p
virtual ~RODJonesMCol()
Default destructor.
SolvableVisJonesMCol()
Prohibit public use of the null constructor, which does not produce a usable object.
const casacore::ArrayColumn< casacore::Float > & fit() const
DJonesMCol & operator=(const DJonesMCol &)
casacore::ScalarColumn< casacore::Float > totalFitWgt_p
casacore::ScalarColumn< casacore::Float > totalFitWgt_p
virtual ~DJonesMCol()
Default destructor.
RODJonesMCol()
Prohibit public use of the null constructor, which does not produce a usable object.
casacore::ArrayColumn< casacore::Float > snr_p
virtual ~ROSolvableVisJonesMCol()
Default destructor.
virtual ~GJonesMCol()
Default destructor.
GJonesTable: GJones calibration table access and creation.
ROTimeVarVisJonesMCol: Read-only TimeVarVisJones cal_main column access.
Definition: TimeVarVJMCol.h:73
const casacore::ScalarColumn< casacore::Float > & totalFitWgt() const
const casacore::ArrayColumn< casacore::Bool > & flag() const
casacore::ScalarColumn< casacore::Float > & totalFit()
virtual ~SolvableVisJonesMCol()
Default destructor.
virtual ~ROGJonesMCol()
Default destructor.
GJonesMCol & operator=(const GJonesMCol &)
RODJonesMCol & operator=(const RODJonesMCol &)
SolvableVisJonesMCol: RW SolvableVisJones cal_main column access.
DJonesTable: DJones calibration table access and creation.
TimeVarVisJonesMCol: RW TimeVarVisJones cal_main column access.
SolvableVisJonesTable: SolvableVisJones calibration table access/creation.
casacore::ArrayColumn< casacore::Float > & fitWgt()
DJonesMCol()
Prohibit public use of the null constructor, which does not produce a usable object.
const casacore::ScalarColumn< casacore::Float > & totalFit() const
ROTJonesMCol: Read-only TJones cal_main column access.
casacore::ArrayColumn< casacore::Float > fit_p
casacore::ScalarColumn< casacore::Float > & totalFitWgt()
SolvableVisJonesMCol & operator=(const SolvableVisJonesMCol &)
casacore::ArrayColumn< casacore::Float > fitWgt_p
ROGJonesMCol()
Prohibit public use of the null constructor, which does not produce a usable object.
const casacore::ArrayColumn< casacore::Float > & fitWgt() const
casacore::ScalarColumn< casacore::Float > totalFit_p
virtual ~ROTJonesMCol()
Default destructor.
casacore::ArrayColumn< casacore::Float > snr_p
casacore::ArrayColumn< casacore::Bool > flag_p
TJonesMCol: RW TJones cal_main column access.
virtual ~TJonesMCol()
Default destructor.
ROSolvableVisJonesMCol: Read-only SolvableVisJones cal_main column access.
casacore::ScalarColumn< casacore::Float > totalFit_p
const casacore::ArrayColumn< casacore::Bool > & solnOk() const
ROSolvableVisJonesMCol()
Prohibit public use of the null constructor, which does not produce a usable object.
casacore::ScalarColumn< casacore::Bool > totalSolnOk_p
Private column accessors.
casacore::ArrayColumn< casacore::Bool > flag_p
GJonesMCol: RW GJones cal_main column access.
casacore::ArrayColumn< casacore::Bool > solnOk_p
casacore::ArrayColumn< casacore::Float > & snr()
ROSolvableVisJonesMCol & operator=(const ROSolvableVisJonesMCol &)
TJonesMCol()
Prohibit public use of the null constructor, which does not produce a usable object.
casacore::ArrayColumn< casacore::Float > & fit()
TJonesMCol & operator=(const TJonesMCol &)
DJonesMCol: RW DJones cal_main column access.
ROGJonesMCol & operator=(const ROGJonesMCol &)
const casacore::ScalarColumn< casacore::Bool > & totalSolnOk() const
Read-only column accessors.