26#ifndef MS_MSMETADATA_H
27#define MS_MSMETADATA_H
29#include <casacore/casa/aips.h>
30#include <casacore/casa/Quanta/QVector.h>
31#include <casacore/measures/Measures/MFrequency.h>
32#include <casacore/measures/Measures/MPosition.h>
33#include <casacore/ms/MeasurementSets/MeasurementSet.h>
34#include <casacore/ms/MeasurementSets/MSPointingColumns.h>
35#include <casacore/tables/Tables/TableProxy.h>
129 vector<std::set<uInt>>
getAntennaIDs(
const vector<String>& antennaNames)
const;
137 const vector<uInt>& antennaIDs = vector<uInt>(0))
const;
140 const vector<uInt>& antennaIDs = vector<uInt>(0))
const;
615 Int initialguess = 0)
const;
684 std::map<uInt, std::set<double>>
times;
837 std::shared_ptr<std::map<ScanKey, MSMetaData::ScanProperties>>& scanProps,
838 std::shared_ptr<std::map<SubScanKey, MSMetaData::SubScanProperties>>& subScanProps,
839 Bool showProgress)
const;
851 std::shared_ptr<std::map<ScanKey, MSMetaData::ScanProperties>>& scanProps,
852 std::shared_ptr<std::map<SubScanKey, MSMetaData::SubScanProperties>>& subScanProps,
853 const std::vector<std::pair<std::map<ScanKey, ScanProperties>,
854 std::map<SubScanKey, SubScanProperties>>>& props)
const;
857 const std::map<SubScanKey, SubScanProperties>& subScanProps)
const;
861 const std::map<SubScanKey, SubScanProperties>& subScanProps)
const;
893 std::pair<std::map<ScanKey, ScanProperties>, std::map<SubScanKey, SubScanProperties>>
900 const vector<uInt>& ddIDToSpw,
rownr_t beginRow,
rownr_t endRow)
const;
915 std::map<
String, std::set<Int>>& intentToFieldsMap);
918 std::map<
ScanKey, std::set<Int>>& scanToFieldsMap)
const;
921 vector<std::set<Int>>& spwToFieldMap)
const;
924 std::map<
Int, std::set<Int>>& stateToFieldsMap);
927 std::shared_ptr<std::map<
Double, std::set<Int>>>& timesToFieldMap);
972 std::map<SubScanKey, rownr_t>*& subScanToNACRowsMap,
973 std::map<SubScanKey, rownr_t>*& subScanToNXCRowsMap,
974 std::map<Int, rownr_t>*& fieldToNACRowsMap,
975 std::map<Int, rownr_t>*& fieldToNXCRowsMap)
const;
978 std::shared_ptr<std::map<SubScanKey, rownr_t>>& scanToNACRowsMap,
979 std::shared_ptr<std::map<SubScanKey, rownr_t>>& scanToNXCRowsMap,
980 std::shared_ptr<std::map<Int, rownr_t>>& fieldToNACRowsMap,
981 std::shared_ptr<std::map<Int, rownr_t>>& fieldToNXCRowsMap)
const;
985 Bool showProgress)
const;
994 vector<std::set<ScanKey>>& ddIDToScanMap)
const;
997 std::map<
String, std::set<ScanKey>>& intentToScansMap)
const;
1000 vector<std::set<ScanKey>>& spwToScanMap)
const;
1010 vector<SpwProperties>
_getSpwInfo(std::set<uInt>& avgSpw, std::set<uInt>& tdmSpw,
1011 std::set<uInt>& fdmSpw, std::set<uInt>& wvrSpw,
1012 std::set<uInt>& sqldSpw)
const;
1015 std::map<
String, std::set<uInt>>& intentToSpwsMap);
1017 vector<SpwProperties>
_getSpwInfo2(std::set<uInt>& avgSpw, std::set<uInt>& tdmSpw,
1018 std::set<uInt>& fdmSpw, std::set<uInt>& wvrSpw,
1019 std::set<uInt>& sqldSpw)
const;
1022 std::set<String>& uniqueIntents)
const;
1027 std::shared_ptr<
const std::map<
SubScanKey, std::set<String>>>& subScanToIntentsMap,
1028 std::map<
String, std::set<SubScanKey>>& intentToSubScansMap)
const;
1031 std::shared_ptr<
const std::map<ScanKey, ScanProperties>>& scanProps,
1032 std::shared_ptr<
const std::map<SubScanKey, SubScanProperties>>& subScanProps,
1033 Bool showProgress)
const;
1041 std::shared_ptr<std::map<SubScanKey, Double>>& subScanToNACRowsMap,
1042 std::shared_ptr<std::map<SubScanKey, Double>>& subScanToNXCRowsMap,
1043 std::shared_ptr<vector<Double>>& fieldToNACRowsMap,
1044 std::shared_ptr<vector<Double>>& fieldToNXCRowsMap)
const;
1047 vector<Double>*& fieldNXCRows,
1048 std::map<SubScanKey, Double>*& scanNACRows,
1049 std::map<SubScanKey, Double>*& scanNXCRows)
const;
1057 static uInt _sizeof(
const std::map<Double, MSMetaData::TimeStampProperties>& m);
1062 template <
class T,
class U>
1065 template <
class T,
class U>
PredefinedColumns
The Main table colums with predefined meaning.
String: the storage and methods of handling collections of characters.
For temporary backward namespace compatibility, use casa as alias for casacore.
TableExprNode time(const TableExprNode &node)
ScanKey scanKey(const SubScanKey &subScanKey)
create a ScanKey from a SubScanKey, just omits the SubScanKey's fieldID
String name() const
Return the name of the field.
bool Bool
Define the standard types used by Casacore.
std::set< ScanKey > scanKeys(const std::set< Int > &scans, const ArrayKey &arrayKey)
construct scan keys given a set of scan numbers and an ArrayKey
Quantum< Double > Quantity
uInt64 rownr_t
Define the type of a row number in a table.
An ArrayKey is a unique combination of observation ID and array ID Negative values are allowed to ind...
A scan is a unique combination of observation ID, array ID, and scan number Negative values are allow...
represents primary key in the SOURCE table
A sub scan is a unique combination of observation ID, array ID, scan number, and field ID.