28 #ifndef DERIVEDMSCAL_MSCALENGINE_H
29 #define DERIVEDMSCAL_MSCALENGINE_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/tables/Tables/Table.h>
34 #include <casacore/tables/Tables/ScalarColumn.h>
35 #include <casacore/measures/Measures/MDirection.h>
36 #include <casacore/measures/Measures/MPosition.h>
37 #include <casacore/measures/Measures/MEpoch.h>
38 #include <casacore/measures/Measures/MBaseline.h>
39 #include <casacore/measures/Measures/MeasConvert.h>
40 #include <casacore/measures/TableMeasures/ScalarMeasColumn.h>
41 #include <casacore/casa/vector.h>
42 #include <casacore/casa/stdmap.h>
void setTable(const Table &)
Use the given table (MS or CalTable) in the engine.
void fillCalDesc()
Fill the CalDesc info for calibration tables.
vector< vector< Vector< double > > > itsAntUvw
double getLAST(Int antnr, rownr_t rownr)
Get the local sidereal time for the given row.
vector< Block< bool > > itsUvwFilled
void setDirColName(const String &colName)
Set the direction column name to use in the FIELD table.
MDirection itsLastDirJ2000
MEpoch::Convert itsUTCToLAST
MDirection::Convert itsRADecToItrf
ScalarColumn< Int > itsFeedCol[2]
Vector< double > itsArrayItrf
vector< vector< MDirection > > itsFieldDir
ScalarColumn< Int > itsCalCol
MBaseline::Convert itsBLToJ2000
ScalarColumn< Int > itsAntCol[2]
MSCalEngine(const MSCalEngine &that)
Copy constructor cannot be used.
ScalarColumn< Double > itsTimeCol
void fillFieldDir(Int calDescId, Int calInx)
Fill or update the field directions from the FIELD subtable at row calDescId.
vector< vector< MPosition > > itsAntPos
void fillAntPos(Int calDescId, Int calInx)
Fill or update the antenna positions from the ANTENNA subtable at row calDescId.
void getHaDec(Int antnr, rownr_t rownr, Array< Double > &)
Get the hourangle/DEC for the given row.
double getDelay(Int antnr, rownr_t rownr)
Get the delay for the given row.
void setDirection(const MDirection &)
Set the direction to be used instead of a direction from the FIELD table.
void getItrf(Int antnr, rownr_t rownr, Array< Double > &)
Get the ITRF coordinates for the given row.
vector< vector< Int > > itsMount
void getAzEl(Int antnr, rownr_t rownr, Array< Double > &)
Get the azimuth/elevation for the given row.
MDirection::Convert itsRADecToAzEl
~MSCalEngine()
Destructor.
MDirection::Convert itsDirToJ2000
MSCalEngine()
Default constructor.
map< string, int > itsCalMap
MSCalEngine & operator=(const MSCalEngine &that)
Assignment cannot be used.
void getNewUVW(Bool asApp, rownr_t rownr, Array< Double > &)
Get the UVW in J2000 or APP for the given row.
void init()
Initialize the column objects, etc.
ScalarColumn< Int > itsFieldCol
Int setData(Int antnr, rownr_t rownr, Bool fillAnt=False)
Set the data in the measure converter machines.
vector< Int > itsCalIdMap
MDirection::Convert itsPoleToAzEl
MDirection::Convert itsRADecToHADec
double getPA(Int antnr, rownr_t rownr)
Get the parallatic angle for the given row.
Table getSubTable(Int calDescId, const String &subTabName, Bool mustExist=True)
Get a calibration MS subtable for the given id.
Table getTable() const
Get the table used.
ScalarMeasColumn< MEpoch > itsTimeMeasCol
double getHA(Int antnr, rownr_t rownr)
Get the hourangle for the given row.
vector< vector< MBaseline > > itsAntMB
String: the storage and methods of handling collections of characters.
this file contains all the compiler specific defines
bool Bool
Define the standard types used by Casacore.
uInt64 rownr_t
Define the type of a row number in a table.