28 #ifndef MS_MSMETADATA_H 29 #define MS_MSMETADATA_H 31 #include <casacore/casa/aips.h> 32 #include <casacore/casa/Quanta/QVector.h> 33 #include <casacore/measures/Measures/MFrequency.h> 34 #include <casacore/measures/Measures/MPosition.h> 35 #include <casacore/ms/MeasurementSets/MeasurementSet.h> 36 #include <casacore/ms/MeasurementSets/MSPointingColumns.h> 37 #include <casacore/casa/Utilities/CountedPtr.h> 38 #include <casacore/tables/Tables/TableProxy.h> 43 template <
class T>
class ArrayColumn;
140 vector<std::set<uInt> >
getAntennaIDs(
const vector<String>& antennaNames)
const;
148 std::map<String, uInt>& namesToIDsMap,
149 const vector<uInt>& antennaIDs=vector<uInt>(0)
153 std::map<
String, std::set<uInt> >& namesToIDsMap,
154 const vector<uInt>& antennaIDs=vector<uInt>(0)
238 SHARED_PTR<const Quantum<Vector<Double> > >
getSourceTimes()
const;
253 Int scanNumber,
Int fieldID
308 std::map<SourceKey, SHARED_PTR<vector<String> > >
getTransitions()
const;
381 const vector<uInt>& which=std::vector<uInt>(0)
425 const std::set<Int>& scans,
Int obsID,
Int arrayID
606 vector<uInt>
nChans()
const;
641 Bool interpolate=
false,
Int initialguess=0
681 std::map<uInt, std::set<Double> >
times;
826 SHARED_PTR<std::map<ScanKey, MSMetaData::ScanProperties> >& scanProps,
827 SHARED_PTR<std::map<SubScanKey, MSMetaData::SubScanProperties> >& subScanProps,
847 SHARED_PTR<std::map<ScanKey, MSMetaData::ScanProperties> >& scanProps,
848 SHARED_PTR<std::map<SubScanKey, MSMetaData::SubScanProperties> >& subScanProps,
850 pair<map<ScanKey, ScanProperties>, map<SubScanKey, SubScanProperties> >
856 const std::map<SubScanKey, SubScanProperties>& subScanProps
860 Record& parent,
uInt& scanNRows, std::set<Int>& antennasForScan,
861 const ScanKey&
scanKey,
const std::map<SubScanKey, SubScanProperties>& subScanProps
883 SHARED_PTR<const map<SubScanKey, SubScanProperties> >
887 std::map<
String, std::set<uInt> >& namesToIDsMap
902 pair<std::map<ScanKey, ScanProperties>, std::map<SubScanKey, SubScanProperties> >
926 vector<std::set<String> >& fieldToIntentsMap,
927 std::map<
String, std::set<Int> >& intentToFieldsMap
931 vector<std::set<ScanKey> >& fieldToScansMap,
932 std::map<
ScanKey, std::set<Int> >& scanToFieldsMap
936 std::map<
Int, std::set<uInt> >& fieldToSpwMap,
937 vector<std::set<Int> >& spwToFieldMap
941 std::map<
Int, std::set<Int> >& fieldToStatesMap,
942 std::map<
Int, std::set<Int> >& stateToFieldsMap
946 SHARED_PTR<std::map<
Int, std::set<Double> > >& fieldToTimesMap,
950 SHARED_PTR<ArrayColumn<Bool> >
_getFlags()
const;
958 SHARED_PTR<Vector<Int> >
_getScans()
const;
964 SHARED_PTR<Vector<Double> >
_getTimes()
const;
993 std::map<SubScanKey, uInt>*& subScanToNACRowsMap,
994 std::map<SubScanKey, uInt>*& subScanToNXCRowsMap,
995 std::map<Int, uInt>*& fieldToNACRowsMap,
996 std::map<Int, uInt>*& fieldToNXCRowsMap
1001 SHARED_PTR<std::map<SubScanKey, uInt> >& scanToNACRowsMap,
1002 SHARED_PTR<std::map<SubScanKey, uInt> >& scanToNXCRowsMap,
1003 SHARED_PTR<std::map<Int, uInt> >& fieldToNACRowsMap,
1004 SHARED_PTR<std::map<Int, uInt> >& fieldToNXCRowsMap
1021 std::map<
ScanKey, std::set<uInt> >& scanToDDIDMap,
1022 vector<std::set<ScanKey> >& ddIDToScanMap
1026 std::map<
ScanKey, std::set<String> >& scanToIntentsMap,
1027 std::map<
String, std::set<ScanKey> >& intentToScansMap
1031 std::map<
ScanKey, std::set<uInt> >& scanToSpwMap,
1032 vector<std::set<ScanKey> >& spwToScanMap
1044 std::set<uInt>& avgSpw, std::set<uInt>& tdmSpw,
1045 std::set<uInt>& fdmSpw, std::set<uInt>& wvrSpw,
1046 std::set<uInt>& sqldSpw
1050 vector<std::set<String> >& spwToIntentsMap,
1051 std::map<
String, std::set<uInt> >& intentToSpwsMap
1055 std::set<uInt>& avgSpw, std::set<uInt>& tdmSpw, std::set<uInt>& fdmSpw,
1056 std::set<uInt>& wvrSpw, std::set<uInt>& sqldSpw
1060 vector<std::set<String> >& statesToIntentsMap,
1061 std::set<String>& uniqueIntents
1068 std::map<
String, std::set<SubScanKey> >& intentToSubScansMap
1072 SHARED_PTR<
const std::map<ScanKey, ScanProperties> >& scanProps,
1073 SHARED_PTR<
const std::map<SubScanKey, SubScanProperties> >& subScanProps,
1084 SHARED_PTR<std::map<SubScanKey, Double> >& subScanToNACRowsMap,
1085 SHARED_PTR<std::map<SubScanKey, Double> >& subScanToNXCRowsMap,
1086 SHARED_PTR<vector<Double> >& fieldToNACRowsMap,
1087 SHARED_PTR<vector<Double> >& fieldToNXCRowsMap
1092 vector<Double>*& fieldNACRows, vector<Double>*& fieldNXCRows,
1093 std::map<SubScanKey, Double>*& scanNACRows,
1094 std::map<SubScanKey, Double>*& scanNXCRows
1098 FirstExposureTimeMap& current,
const FirstExposureTimeMap& test
1102 FirstExposureTimeMap& current,
Int dataDescID,
1106 static uInt _sizeof(
const std::map<Double, MSMetaData::TimeStampProperties> & m);
1109 static uInt _sizeof(
const std::map<T, std::set<String> >& m);
1111 template <
class T,
class U>
1112 static uInt _sizeof(
const std::map<T, std::set<U> >& m);
1114 template <
class T,
class U>
1117 static uInt _sizeof(
const vector<std::set<String> >& m);
1121 static uInt _sizeof(
const vector<vector<String> >& m);
1129 static uInt _sizeof(
const vector<std::set<T> >& v);
1131 template <
class T>
static uInt _sizeof(
const std::map<
String, std::set<T> >& map);
1133 static uInt _sizeof(
const vector<std::map<Int, Quantity> >& map);
1135 static uInt _sizeof(
const std::map<std::pair<Int, uInt>, std::set<uInt> >& map);
A Measure: astronomical direction.
A Measure: position on Earth.
TableExprNode time(const TableExprNode &node)
Quantum< Double > Quantity
High-level interface to tables.
PredefinedColumns
The Main table colums with predefined meaning.
A Measure: instant in time.
A Measure: wave characteristics.
std::set< ScanKey > scanKeys(const std::set< Int > &scans, const ArrayKey &arrayKey)
construct scan keys given a set of scan numbers and an ArrayKey
A class to provide easy read-only access to MSPointing columns.
An ArrayKey is a unique combination of observation ID and array ID Negative values are allowed to ind...
A hierarchical collection of named fields of various types.
bool Bool
Define the standard types used by Casacore.
Quantities (i.e. dimensioned values)
A sub scan is a unique combination of observation ID, array ID, scan number, and field ID...
A Table intended to hold astronomical data (a set of Measurements).
A scan is a unique combination of observation ID, array ID, and scan number Negative values are allow...
String: the storage and methods of handling collections of characters.
ScanKey scanKey(const SubScanKey &subScanKey)
create a ScanKey from a SubScanKey, just omits the SubScanKey's fieldID
this file contains all the compiler specific defines