26#ifndef MS_SDPOLARIZATIONHANDLER_H 
   27#define MS_SDPOLARIZATIONHANDLER_H 
   29#include <casacore/casa/aips.h> 
   30#include <casacore/casa/Containers/RecordField.h> 
   31#include <casacore/casa/Arrays/ArrayFwd.h> 
   39class MSPolarizationColumns;
 
Read-Only access to an individual field from a Record.
 
SDPolarizationHandler(MeasurementSet &ms, Vector< Bool > &handledCols, const Record &row)
attach this to a MS - no columns are explicitly handled here
 
RecordFieldPtr< Int > numCorrKey_p
 
SDPolarizationHandler(const SDPolarizationHandler &other)
copy ctor
 
Int polarizationId()
get the current polarization ID
 
SDPolarizationHandler & operator=(const SDPolarizationHandler &other)
assignment operator, uses copy semantics
 
RORecordFieldPtr< Int > numCorrField_p
from a pre-existing MS
 
MSPolarizationColumns * msPolCols_p
 
RORecordFieldPtr< Array< Int > > corrTypeField_p
 
void initAll(MeasurementSet &ms, Vector< Bool > &handledCols, const Record &row)
initialize everything
 
void clearAll()
cleanup everything
 
void attach(MeasurementSet &ms, Vector< Bool > &handledCols, const Record &row)
attach to a MS, the handledCols and row arguments are ignored here
 
void initRow(Vector< Bool > &handledCols, const Record &row)
 
void stokesKeys(Int stokesValue, Int &key1, Int &key2)
decompose a stokes value into constituent parts for use in making the CORR_PRODUCT matrix
 
SDPolarizationHandler()
default ctor is not attached to a MS and hence is useless until attached
 
RORecordFieldPtr< Bool > flagRowField_p
 
RORecordFieldPtr< Array< Int > > corrProductField_p
 
void resetRow(const Record &row)
reset internals given indicated row, use the same MS; just resets the id pointer
 
void fill(const Record &row, const Vector< Int > &stokes)
fill - a new row is added only when necessary
 
this file contains all the compiler specific defines