//# SolvableVJMCol.h: SolvableVisJones cal_main table column access //# Copyright (C) 1996,1997,1998,2001,2003 //# Associated Universities, Inc. Washington DC, USA. //# //# This library is free software; you can redistribute it and/or modify it //# under the terms of the GNU Library General Public License as published by //# the Free Software Foundation; either version 2 of the License, or (at your //# option) any later version. //# //# This library is distributed in the hope that it will be useful, but WITHOUT //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public //# License for more details. //# //# You should have received a copy of the GNU Library General Public License //# along with this library; if not, write to the Free Software Foundation, //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA. //# //# Correspondence concerning AIPS++ should be adressed as follows: //# Internet email: aips2-request@nrao.edu. //# Postal address: AIPS++ Project Office //# National Radio Astronomy Observatory //# 520 Edgemont Road //# Charlottesville, VA 22903-2475 USA //# //# //# $Id$ #ifndef CALIBRATION_SOLVABLEVJMCOL_H #define CALIBRATION_SOLVABLEVJMCOL_H #include #include namespace casa { //# NAMESPACE CASA - BEGIN // // ROSolvableVisJonesMCol: Read-only SolvableVisJones cal_main column access // // // // //
  • ROCalMainColumns module // // // // From "read-only","solvable visibility Jones","cal main" and "columns". // // // // The ROSolvableVisJonesMCol class allows read-only access to columns in the // SolvableVisJones main calibration table. Specializations for individual // solvable Jones matrix types (e.g. GJones) are provided through inheritance. // // // // // // // // // Encapsulate read-only access to SVJ calibration table columns. // // // // (i) Deal with non-standard columns. // class ROSolvableVisJonesMCol : public ROTimeVarVisJonesMCol { public: // Construct from a calibration table ROSolvableVisJonesMCol (const SolvableVisJonesTable& svjTable); // Default destructor virtual ~ROSolvableVisJonesMCol() {}; // Read-only column accessors const casacore::ScalarColumn& totalSolnOk() const {return totalSolnOk_p;}; const casacore::ScalarColumn& totalFit() const {return totalFit_p;}; const casacore::ScalarColumn& totalFitWgt() const {return totalFitWgt_p;}; const casacore::ArrayColumn& solnOk() const {return solnOk_p;}; const casacore::ArrayColumn& fit() const {return fit_p;}; const casacore::ArrayColumn& fitWgt() const {return fitWgt_p;}; const casacore::ArrayColumn& flag() const {return flag_p;}; const casacore::ArrayColumn& snr() const {return snr_p;}; protected: // Prohibit public use of the null constructor, which // does not produce a usable object. ROSolvableVisJonesMCol() {}; private: // Prohibit copy constructor and assignment operator ROSolvableVisJonesMCol (const ROSolvableVisJonesMCol&); ROSolvableVisJonesMCol& operator= (const ROSolvableVisJonesMCol&); // Private column accessors casacore::ScalarColumn totalSolnOk_p; casacore::ScalarColumn totalFit_p; casacore::ScalarColumn totalFitWgt_p; casacore::ArrayColumn solnOk_p; casacore::ArrayColumn fit_p; casacore::ArrayColumn fitWgt_p; casacore::ArrayColumn flag_p; casacore::ArrayColumn snr_p; }; // // SolvableVisJonesMCol: RW SolvableVisJones cal_main column access // // // // //
  • CalMainColumns module // // // // From "solvable visibility Jones","cal main table" and "columns". // // // // The SolvableVisJonesMCol class allows read-write access to columns in the // SolvableVisJones main calibration table. Specializations for individual // solvable Jones matrix types (e.g. GJones) are provided through inheritance. // // // // // // // // // Encapsulate read-write access to SVJ calibration table columns. // // // // (i) Deal with non-standard columns. // class SolvableVisJonesMCol : public TimeVarVisJonesMCol { public: // Construct from a calibration table SolvableVisJonesMCol (SolvableVisJonesTable& svjTable); // Default destructor virtual ~SolvableVisJonesMCol() {}; // Read-write column accessors casacore::ScalarColumn& totalSolnOk() {return totalSolnOk_p;}; casacore::ScalarColumn& totalFit() {return totalFit_p;}; casacore::ScalarColumn& totalFitWgt() {return totalFitWgt_p;}; casacore::ArrayColumn& solnOk() {return solnOk_p;}; casacore::ArrayColumn& fit() {return fit_p;}; casacore::ArrayColumn& fitWgt() {return fitWgt_p;}; casacore::ArrayColumn& flag() {return flag_p;}; casacore::ArrayColumn& snr() {return snr_p;}; protected: // Prohibit public use of the null constructor, which // does not produce a usable object. SolvableVisJonesMCol() {}; private: // Prohibit copy constructor and assignment operator SolvableVisJonesMCol (const SolvableVisJonesMCol&); SolvableVisJonesMCol& operator= (const SolvableVisJonesMCol&); // Private column accessors casacore::ScalarColumn totalSolnOk_p; casacore::ScalarColumn totalFit_p; casacore::ScalarColumn totalFitWgt_p; casacore::ArrayColumn solnOk_p; casacore::ArrayColumn fit_p; casacore::ArrayColumn fitWgt_p; casacore::ArrayColumn flag_p; casacore::ArrayColumn snr_p; }; // // ROGJonesMCol: Read-only GJones cal_main column access // // // // //
  • ROCalMainColumns module // // // // From "read-only","GJones","cal main" and "columns". // // // // The ROGJonesMCol class allows read-only access to columns in the // GJones main calibration table. GJones matrices are used to store // electronic gain information in the Measurement Equation formalism. // // // // // // // // // Encapsulate read-only access to GJones calibration table columns. // // // // (i) Deal with non-standard columns. // class ROGJonesMCol : public ROSolvableVisJonesMCol { public: // Construct from a calibration table ROGJonesMCol (const GJonesTable& gjTable); // Default destructor virtual ~ROGJonesMCol() {}; protected: // Prohibit public use of the null constructor, which // does not produce a usable object. ROGJonesMCol() {}; private: // Prohibit copy constructor and assignment operator ROGJonesMCol (const ROGJonesMCol&); ROGJonesMCol& operator= (const ROGJonesMCol&); }; // // GJonesMCol: RW GJones cal_main column access // // // // //
  • CalMainColumns module // // // // From "GJones","cal main table" and "columns". // // // // The GJonesMCol class allows read-write access to columns in the // GJones main calibration table. GJones matrices are used to store // electronic gain information in the Measurement Equation formalism. // // // // // // // // // Encapsulate read-write access to GJones calibration table columns. // // // // (i) Deal with non-standard columns. // class GJonesMCol : public SolvableVisJonesMCol { public: // Construct from a calibration table GJonesMCol (GJonesTable& gjTable); // Default destructor virtual ~GJonesMCol() {}; protected: // Prohibit public use of the null constructor, which // does not produce a usable object. GJonesMCol() {}; private: // Prohibit copy constructor and assignment operator GJonesMCol (const GJonesMCol&); GJonesMCol& operator= (const GJonesMCol&); }; // // RODJonesMCol: Read-only DJones cal_main column access // // // // //
  • ROCalMainColumns module // // // // From "read-only","DJones","cal main" and "columns". // // // // The RODJonesMCol class allows read-only access to columns in the // DJones main calibration table. DJones matrices are used to store // instrumental polarization calibration information in the // Measurement Equation formalism. // // // // // // // // // Encapsulate read-only access to DJones calibration table columns. // // // // (i) Deal with non-standard columns. // class RODJonesMCol : public ROSolvableVisJonesMCol { public: // Construct from a calibration table RODJonesMCol (const DJonesTable& djTable); // Default destructor virtual ~RODJonesMCol() {}; protected: // Prohibit public use of the null constructor, which // does not produce a usable object. RODJonesMCol() {}; private: // Prohibit copy constructor and assignment operator RODJonesMCol (const RODJonesMCol&); RODJonesMCol& operator= (const RODJonesMCol&); }; // // DJonesMCol: RW DJones cal_main column access // // // // //
  • CalMainColumns module // // // // From "DJones","cal main table" and "columns". // // // // The DJonesMCol class allows read-write access to columns in the // DJones main calibration table. DJones matrices are used to store // instrumental polarization calibration information in the Measurement // Equation formalism. // // // // // // // // // Encapsulate read-write access to DJones calibration table columns. // // // // (i) Deal with non-standard columns. // class DJonesMCol : public SolvableVisJonesMCol { public: // Construct from a calibration table DJonesMCol (DJonesTable& djTable); // Default destructor virtual ~DJonesMCol() {}; protected: // Prohibit public use of the null constructor, which // does not produce a usable object. DJonesMCol() {}; private: // Prohibit copy constructor and assignment operator DJonesMCol (const DJonesMCol&); DJonesMCol& operator= (const DJonesMCol&); }; // // ROTJonesMCol: Read-only TJones cal_main column access // // // // //
  • ROCalMainColumns module // // // // From "read-only","TJones","cal main" and "columns". // // // // The ROTJonesMCol class allows read-only access to columns in the // TJones main calibration table. TJones matrices are used to store // atmospheric calibration information in the Measurement Equation // formalism. // // // // // // // // // Encapsulate read-only access to TJones calibration table columns. // // // // (i) Deal with non-standard columns. // class ROTJonesMCol : public ROSolvableVisJonesMCol { public: // Construct from a calibration table ROTJonesMCol (const TJonesTable& djTable); // Default destructor virtual ~ROTJonesMCol() {}; protected: // Prohibit public use of the null constructor, which // does not produce a usable object. ROTJonesMCol() {}; private: // Prohibit copy constructor and assignment operator ROTJonesMCol (const ROTJonesMCol&); ROTJonesMCol& operator= (const ROTJonesMCol&); }; // // TJonesMCol: RW TJones cal_main column access // // // // //
  • CalMainColumns module // // // // From "TJones","cal main table" and "columns". // // // // The TJonesMCol class allows read-write access to columns in the // TJones main calibration table. TJones matrices are used to store // atmospheric calibration information in the Measurement Equation // formalism. // // // // // // // // // Encapsulate read-write access to TJones calibration table columns. // // // // (i) Deal with non-standard columns. // class TJonesMCol : public SolvableVisJonesMCol { public: // Construct from a calibration table TJonesMCol (TJonesTable& djTable); // Default destructor virtual ~TJonesMCol() {}; protected: // Prohibit public use of the null constructor, which // does not produce a usable object. TJonesMCol() {}; private: // Prohibit copy constructor and assignment operator TJonesMCol (const TJonesMCol&); TJonesMCol& operator= (const TJonesMCol&); }; } //# NAMESPACE CASA - END #endif