Loading...
Searching...
No Matches
casacore::MSMetaData Class Reference
ms package (libcasa_ms) » MSOper_module

More...

`#include <MSMetaData.h>`

## Classes

struct | TimeStampProperties
struct | ColumnStats
struct | SubScanProperties
struct | ScanProperties
struct | SpwProperties
struct | SourceProperties
| represents non-primary key data for a SOURCE table row More...

## Public Types

enum | CorrelationType { AUTO , CROSS , BOTH }
| for retrieving stats More...
enum | SQLDSwitch { SQLD_INCLUDE , SQLD_EXCLUDE , SQLD_ONLY }
typedef std::map< Int, std::pair< Double, Quantity > > | FirstExposureTimeMap

## Public Member Functions

| MSMetaData (const MeasurementSet *const &ms, const Float maxCacheSizeMB)
| construct an object which stores a pointer to the MS and queries the MS only as necessary.
virtual | ~MSMetaData ()
QVD | getAntennaDiameters () const
| get the antenna diameters
uInt | getAntennaID (const String &antennaName) const
| if the antenna name appears multiple times in the antenna table, the last ID that it is associated with is returned.
std::set< uInt > | getAntennaIDs (const String &antennaName) const
| get all the antenna IDs for the antenna with the specified name.
vector< std::set< uInt > > | getAntennaIDs (const vector< String > &antennaNames) const
| The returned IDs are ordered in the way they appear in the atenna table.
vector< String > | getAntennaNames (std::map< String, uInt > &namesToIDsMap, const vector< uInt > &antennaIDs=vector< uInt >(0)) const
| In the first instance of getAntennaNames, namesToID map will have the last ID of the antenna name, if it appears multiple times in the antenna table.
vector< String > | getAntennaNames (std::map< String, std::set< uInt > > &namesToIDsMap, const vector< uInt > &antennaIDs=vector< uInt >(0)) const
vector< String > | getAntennaStations (const vector< uInt > &antennaIDs=vector< uInt >())
| get the antenna stations for the specified antenna IDs
vector< std::vector< String > > | getAntennaStations (const vector< String > &antennaNames)
| get the antenna stations for the specified antenna names.
std::set< Int > | getAntennasForScan (const ScanKey &scan) const
| get the set of antenna IDs for the specified scan.
vector< Array< Int > > | getCorrProducts () const
| POLARIZATION.CORR_PRODUCT.
vector< vector< Int > > | getCorrTypes () const
| POLARIZATION.CORR_TYPE.
vector< uInt > | getDataDescIDToSpwMap () const
vector< uInt > | getDataDescIDToPolIDMap () const
vector< Int > | getFieldTableSourceIDs () const
| Get the FIELD.SOURCE_ID column.
vector< std::set< ScanKey > > | getFieldToScansMap () const
| get the mapping of field ID to scans
std::map< String, std::set< Int > > | getIntentToFieldsMap ()
std::map< String, std::set< ScanKey > > | getIntentToScansMap ()
std::map< String, std::set< uInt > > | getIntentToSpwsMap ()
std::set< String > | getIntentsForScan (const ScanKey &scan) const
std::set< String > | getIntentsForSubScan (const SubScanKey &subScan) const
std::shared_ptr< const std::map< SubScanKey, std::set< String > > > | getSubScanToIntentsMap () const
std::set< String > | getIntents () const
| get all intents, in no particular (nor guaranteed) order.
std::set< String > | getIntentsForField (Int fieldID)
| get a set of intents corresponding to a specified field
std::set< String > | getIntentsForField (String field)
| get a set of intents corresponding to a specified field name
std::set< String > | getIntentsForSpw (const uInt spw)
| get a set of intents corresponding to the specified spectral window
vector< Int > | getNumCorrs () const
| number of correlations from the polarization table.
vector< std::pair< Quantity, Quantity > > | getProperMotions () const
| SOURCE.PROPER_MOTION, first value in pair is longitudinal proper motion, second is latiduninal.
std::set< Int > | getScanNumbers (Int obsID, Int arrayID) const
| get unique scan numbers
std::set< Int > | getScansForState (Int stateID, Int obsID, Int arrayID) const
| get a set of scan numbers for the specified stateID, obsID, and arrayID.
std::map< ScanKey, std::set< Int > > | getScanToStatesMap () const
| get the mapping of scans to states
vector< MDirection > | getSourceDirections () const
| SOURCE.DIRECTION.
vector< String > | getSourceNames () const
| SOURCE.NAME.
vector< Int > | getSourceTableSourceIDs () const
| Get the SOURCE.SOURCE_ID column.
std::shared_ptr< const Quantum< Vector< Double > > > | getSourceTimes () const
| SOURCE.TIME.
virtual std::set< uInt > | getSpwsForIntent (const String &intent)
| get a set of spectral windows for which the specified intent applies.
rownr_t | nRows () const
| get the number of visibilities
rownr_t | nRows (CorrelationType cType)
std::shared_ptr< const std::map< SubScanKey, rownr_t > > | getNRowMap (CorrelationType type) const
rownr_t | nRows (CorrelationType cType, Int arrayID, Int observationID, Int scanNumber, Int fieldID) const
rownr_t | nRows (CorrelationType cType, uInt fieldID) const
uInt | nSpw (Bool includewvr) const
| get number of spectral windows
uInt | nStates () const
| number of unique states (number of rows from the STATE table)
uInt | nFields () const
| get the number of fields.
std::vector< std::set< uInt > > | getSpwToDataDescriptionIDMap () const
| get a mapping of spectral window ID to data descrption IDs
std::set< uInt > | getSpwsForField (const Int fieldID) const
| get a set of spectral windows corresponding to the specified fieldID
std::set< uInt > | getSpwsForField (const String &fieldName)
| get a set of spectral windows corresponding to the specified field name
vector< String > | getFieldCodes () const
| get the values of the CODE column from the field table
std::set< Int > | getFieldIDsForSpw (const uInt spw)
| get the set of field IDs corresponding to the specified spectral window.
std::set< String > | getFieldNamesForSpw (const uInt spw)
| get the set of field names corresponding to the specified spectral window.
std::map< Int, std::set< uInt > > | getFieldsToSpwsMap () const
| get the mapping of fields to spws
std::map< SourceKey, std::shared_ptr< vector< MFrequency > > > | getRestFrequencies () const
| get rest frequencies from the SOURCE table
std::set< uInt > | getSpwsForScan (const ScanKey &scan) const
| get the set of spectral windows for the specified scan.
std::set< uInt > | getSpwsForSubScan (const SubScanKey &subScan) const
| get the set of spectral windows for the specified subscan.
std::set< Int > | getScansForSpw (uInt spw, Int obsID, Int arrayID) const
| get the set of scan numbers for the specified spectral window.
std::map< ScanKey, std::set< uInt > > | getScanToSpwsMap () const
| get the complete mapping of scans to spws
std::vector< std::set< ScanKey > > | getSpwToScansMap () const
| get the complete mapping of spws to scans
std::map< SourceKey, std::shared_ptr< vector< String > > > | getTransitions () const
| get the transitions from the SOURCE table.
uInt | nAntennas () const
| get the number of antennas in the ANTENNA table
std::set< uInt > | getTDMSpw ()
| ALMA-specific.
std::set< uInt > | getFDMSpw ()
| ALMA-specific.
std::set< uInt > | getChannelAvgSpw ()
| ALMA-specific.
std::set< uInt > | getWVRSpw () const
| ALMA-specific.
std::set< uInt > | getSQLDSpw ()
| ALMA-specific.
std::set< Int > | getScansForTimes (Double center, Double tol, Int obsID, Int arrayID) const
| Get the scan numbers which fail into the specified time range (center-tol to center+tol), inclusive.
std::set< Double > | getTimesForScans (std::set< ScanKey > scans) const
| Get the times for the specified scans.
std::set< Double > | getTimesForScan (const ScanKey &scan) const
| get the times for the specified scan.
std::map< uInt, std::set< Double > > | getSpwToTimesForScan (const ScanKey &scan) const
std::pair< Double, Double > | getTimeRangeForScan (const ScanKey &scanKey) const
| get the time range for the specified scan.
std::shared_ptr< const std::map< ScanKey, std::pair< Double, Double > > > | getScanToTimeRangeMap () const
| get the map of scans to time ranges.
std::set< Int > | getStatesForScan (Int obsID, Int arrayID, Int scan) const
| get the stateIDs associated with the specified scan.
std::vector< std::set< Double > > | getTimesForSpws (Bool showProgress=True) const
| get a map of spectral windows to unique timestamps.
QVD | getAntennaOffset (uInt which) const
| get the position of the specified antenna relative to the observatory position.
QVD | getAntennaOffset (const String &name) const
| If the antenna name appears mulitple times, this will return the offset for the first occurrence of it in the antenna table.
std::vector< QVD > | getAntennaOffsets (const String &name) const
| If the antenna name appears mulitple times, this will return all the offsets for it, in the order they appear in the antenna table.
vector< QVD > | getAntennaOffsets () const
vector< MPosition > | getAntennaPositions (const vector< uInt > &which=std::vector< uInt >(0)) const
| get the positions of the specified antennas.
vector< vector< MPosition > > | getAntennaPositions (const vector< String > &names)
| names cannot be empty.
std::map< uInt, Double > | getAverageIntervalsForScan (const ScanKey &scan) const
| the first key in the returned map is the spectral window ID, the second is the average interval for the specified scan for that spw.
std::map< uInt, Quantity > | getAverageIntervalsForSubScan (const SubScanKey &subScan) const
| the first key in the returned map is the spectral window ID, the second is the average interval for the specified sub scan for that spw.
vector< uInt > | getBBCNos () const
vector< String > | getCorrBits () const
std::map< uInt, std::set< uInt > > | getBBCNosToSpwMap (SQLDSwitch sqldSwitch)
vector< vector< Double > > | getEdgeChans ()
MDirection | phaseDirFromFieldIDAndTime (const uInt fieldID, const MEpoch &ep=MEpoch(Quantity(0.0, Unit("s")))) const
| Get the phase direction for a given field id and epoch interpolate polynomial if it is the field id is such or use ephemerides table if that is attached to that field id.
MDirection | getReferenceDirection (const uInt fieldID, const MEpoch &ep=MEpoch(Quantity(0.0, Unit("s")))) const
| Get the reference direction for a given field ID and epoch interpolate polynomial if it is the field ID is such or use ephemerides table if that is attached to that field ID.
std::set< Int > | getFieldIDsForField (const String &field) const
| get the field IDs for the specified field name.
vector< String > | getFieldNames () const
| get a list of the field names in the order in which they appear in the FIELD table.
std::set< Int > | getFieldsForScan (const ScanKey &scan) const
| get field IDs associated with the specified scan number.
std::set< Int > | getFieldsForScans (const std::set< Int > &scans, Int obsID, Int arrayID) const
| get the field IDs associated with the specified scans
std::set< Int > | getFieldsForScans (const std::set< ScanKey > &scans) const
| get the field IDs associated with the specified scans
std::set< Int > | getFieldsForIntent (const String &intent)
| get the field IDs associated with the specified intent.
std::set< Int > | getFieldsForIntent (uInt sourceID) const
| get the field IDs associated with the specified source.
std::map< Int, std::set< Int > > | getFieldsForSourceMap () const
std::map< Int, std::set< String > > | getFieldNamesForSourceMap () const
vector< String > | getFieldNamesForFieldIDs (const vector< uInt > &fieldIDs)
| get the field names associated with the specified field IDs.
std::set< Int > | getFieldsForTimes (Double center, Double tol)
| Get the fields which fail into the specified time range (center-tol to center+tol).
Float | getMaxCacheSizeMB () const
| max cache size in MB
vector< String > | getObservatoryNames ()
| get telescope names in the order they are listed in the OBSERVATION table.
MPosition | getObservatoryPosition (uInt which) const
| get the position of the specified telescope (observatory).
vector< MDirection > | getPhaseDirs (const MEpoch &ep=MEpoch(Quantity(0.0, Unit("s")))) const
| get the phase directions from the FIELD subtable.
std::set< ScanKey > | getScanKeys () const
| get all ScanKeys in the dataset
std::set< ScanKey > | getScanKeys (const ArrayKey &arrayKey) const
| get all ScanKeys in the dataset that have the specified arrayKey.
std::set< Int > | getScansForIntent (const String &intent, Int obsID, Int arrayID) const
| get the scans associated with the specified intent
std::set< Int > | getScansForFieldID (Int fieldID, Int obsID, Int arrayID) const
| get the scan numbers associated with the specified field ID.
std::set< Int > | getScansForField (const String &field, Int obsID, Int arrayID) const
| get the scan numbers associated with the specified field.
std::map< std::pair< uInt, uInt >, uInt > | getSpwIDPolIDToDataDescIDMap () const
| The first value of the pair is spw, the second is polarization ID.
vector< String > | getSpwNames () const
| get a map of the spwIDs to spw names from the spw table
std::set< uInt > | getSpwIDs () const
| get all the spws associated with the data description IDs listed in the main table.
std::set< SubScanKey > | getSubScanKeys (const ArrayKey &arrayKey) const
| get all sub scan keys for the specified array key.
SubScanProperties | getSubScanProperties (const SubScanKey &subScan, Bool showProgress=False) const
| get the sub scan properties for the specified sub scan.
std::shared_ptr< const std::map< SubScanKey, SubScanProperties > > | getSubScanProperties (Bool showProgress=False) const
void | setForceSubScanPropsToCache (Bool b)
| If True, force the subscan properties structure to be cached regardless of the stipulations on the maximum cache.
Record | getSummary () const
| get a data structure, consumable by users, representing a summary of the dataset
std::set< Double > | getTimesForField (Int fieldID)
| get the times for which the specified field was observed
std::set< Double > | getTimesForIntent (const String &intent) const
| get the time stamps associated with the specified intent
Bool | hasBBCNo () const
Matrix< Bool > | getUniqueBaselines ()
| std::map<Double, Double> getExposuresForTimes() const;
virtual uInt | nBaselines (Bool includeAutoCorrelation=False)
| get the number of unique baselines represented in the main MS table which in theory can be less than n*(n-1)/2.
Quantity | getEffectiveTotalExposureTime ()
| get the effective total exposure time.
uInt | nScans ()
| get the number of scans in the dataset
uInt | nObservations () const
| get the number of observations (from the OBSERVATIONS table) in the dataset
vector< String > | getObservers () const
| get the contents of the OBSERVER column from the OBSERVATIONS table
vector< String > | getProjects () const
| get the contents of the PROJECT column from the OBSERVATIONS table
vector< vector< String > > | getSchedules () const
| get the contents of the SCHEDULE column from the OBSERVATIONS table Note that the embedded vectors may have different lengths
vector< std::pair< MEpoch, MEpoch > > | getTimeRangesOfObservations () const
| get the time ranges from the OBSERVATION table
uInt | nArrays ()
| get the number of arrays (from the ARRAY table) in the dataset
uInt | nDataDescriptions () const
| get the number of data description IDs (from the DATA_DESCRIPTION table)
Double | nUnflaggedRows () const
| get the number of unflagged rows
Double | nUnflaggedRows (CorrelationType cType) const
Double | nUnflaggedRows (CorrelationType cType, Int arrayID, uInt observationID, Int scanNumber, uInt fieldID) const
Double | nUnflaggedRows (CorrelationType cType, Int fieldID) const
Float | getCache () const
vector< Double > | getBandWidths () const
vector< Quantity > | getCenterFreqs () const
vector< QVD > | getChanEffectiveBWs (Bool asVelWidths) const
| get the effective bandwidth for each channel.
vector< QVD > | getChanFreqs () const
vector< QVD > | getChanResolutions (Bool asVelWidths) const
| get the resolution for each channel.
vector< QVD > | getChanWidths () const
vector< Quantity > | getMeanFreqs () const
vector< Int > | getNetSidebands () const
vector< MFrequency > | getRefFreqs () const
vector< uInt > | nChans () const
uInt | nPol ()
std::vector< std::map< Int, Quantity > > | getFirstExposureTimeMap ()
| DEPRECATED get a map of data desc ID, scan number pair to exposure time for the first time for that data desc ID, scan number pair.
std::map< ScanKey, FirstExposureTimeMap > | getScanToFirstExposureTimeMap (Bool showProgress) const
| get map of scans to first exposure times
std::set< uInt > | getPolarizationIDs (uInt obsID, Int arrayID, Int scan, uInt spwid) const
| get polarization IDs for the specified scan and spwid
const std::set< Int > & | getUniqueAntennaIDs () const
| get the unique antennas (the union of the ANTENNA_1 and ANTENNA_2 columns) from the main table
std::set< uInt > | getUniqueDataDescIDs () const
| get unique data description IDs that exist in the main table
std::set< Int > | getUniqueFiedIDs () const
| DEPRECATED because of spelling error.
std::set< Int > | getUniqueFieldIDs () const
| get unique field IDs that exist in the main table.
std::pair< MDirection, MDirection > | getPointingDirection (Int &ant1, Int &ant2, Double &time, rownr_t row, Bool interpolate=false, Int initialguess=0) const
| get the pointing directions associated with antenna1 and antenna2 for the specified row of the main MS table
std::pair< Double, Double > | getTimeRange (Bool showProgress=False) const
| get the time range for the entire dataset.
uInt | nUniqueSourceIDsFromSourceTable () const
| Number of unique values from SOURCE.SOURCE_ID.
std::set< uInt > | getUniqueSpwIDs () const
| get the unique spectral window IDs represented by the data description IDs that appear in the main table
const MeasurementSet * | getMS () const
void | setShowProgress (Bool b)
ColumnStats | getIntervalStatistics () const
| get statistics related to the values of the INTERVAL column.
vector< int > | getSpwReceiverBands () const
| ALMA specific CAS-13973 get receiver bands for each spw values of -1 indicate no info found for those spws.
vector< int > | getSpwSubwindows () const
| ALMA specific CAS-13973 get subwindows for each spw values of -1 indicate no info found for those spws.

## Private Member Functions

| MSMetaData (const MSMetaData &)
| disallow copy constructor and = operator
MSMetaData | operator= (const MSMetaData &)
void | _setSpwInfo (const MeasurementSet &ms)
| This comment from thunter in the original ValueMapping python class.
void | _setObservation (const MeasurementSet &ms)
| set metadata from OBSERVATION table
Bool | _cacheUpdated (const Float incrementInBytes) const
void | _checkField (uInt fieldID) const
void | _checkScan (const ScanKey &key) const
void | _checkScans (const std::set< ScanKey > &scanKeys) const
void | _checkSubScan (const SubScanKey &key) const
void | _computeScanAndSubScanProperties (std::shared_ptr< std::map< ScanKey, MSMetaData::ScanProperties > > &scanProps, std::shared_ptr< std::map< SubScanKey, MSMetaData::SubScanProperties > > &subScanProps, Bool showProgress) const
void | _mergeScanProps (std::shared_ptr< std::map< ScanKey, MSMetaData::ScanProperties > > &scanProps, std::shared_ptr< std::map< SubScanKey, MSMetaData::SubScanProperties > > &subScanProps, const std::vector< std::pair< std::map< ScanKey, ScanProperties >, std::map< SubScanKey, SubScanProperties > > > &props) const
void | _createScanRecords (Record &parent, const ArrayKey &arrayKey, const std::map< SubScanKey, SubScanProperties > &subScanProps) const
void | _createSubScanRecords (Record &parent, rownr_t &scanNRows, std::set< Int > &antennasForScan, const ScanKey &scanKey, const std::map< SubScanKey, SubScanProperties > &subScanProps) const
std::shared_ptr< const std::map< ScanKey, ScanProperties > > | _generateScanPropsIfWanted () const
| if _scanProps has been generated, just return it.
std::shared_ptr< const std::map< SubScanKey, SubScanProperties > > | _generateSubScanPropsIfWanted () const
| if _subScanProperties has been generated, just return it.
vector< String > | _getAntennaNames (std::map< String, std::set< uInt > > &namesToIDsMap) const
vector< MPosition > | _getAntennaPositions () const
void | _getAntennas (std::shared_ptr< Vector< Int > > &ant1, std::shared_ptr< Vector< Int > > &ant2) const
std::shared_ptr< Vector< Int > > | _getArrayIDs () const
std::map< ArrayKey, std::set< SubScanKey > > | _getArrayKeysToSubScanKeys () const

std::pair< std::map< ScanKey, ScanProperties >, std::map< SubScanKey, SubScanProperties > >

_getChunkSubScanProperties (const Vector< Int > &scans, const Vector< Int > &fields, const Vector< Int > &ddIDs, const Vector< Int > &states, const Vector< Double > &times, const Vector< Int > &arrays, const Vector< Int > &observations, const Vector< Int > &ant1, const Vector< Int > &ant2, const Quantum< Vector< Double > > &exposureTimes, const Quantum< Vector< Double > > &intervalTimes, const vector< uInt > &ddIDToSpw, rownr_t beginRow, rownr_t endRow) const

| Uses openmp for parallel processing.
std::shared_ptr< Vector< Int > > | _getDataDescIDs () const
std::shared_ptr< std::set< Int > > | _getEphemFieldIDs () const
| get the field IDs of ephemeris objects
std::shared_ptr< Quantum< Vector< Double > > > | _getExposureTimes () const
std::shared_ptr< Vector< Int > > | _getFieldIDs () const
void | _getFieldsAndIntentsMaps (vector< std::set< String > > &fieldToIntentsMap, std::map< String, std::set< Int > > &intentToFieldsMap)
| If there are no intents, then fieldToIntentsMap will be of length nFields() and all of its entries will be the empty set, and intentToFieldsMap will be empty.
void | _getFieldsAndScansMaps (vector< std::set< ScanKey > > &fieldToScansMap, std::map< ScanKey, std::set< Int > > &scanToFieldsMap) const
void | _getFieldsAndSpwMaps (std::map< Int, std::set< uInt > > &fieldToSpwMap, vector< std::set< Int > > &spwToFieldMap) const
void | _getFieldsAndStatesMaps (std::map< Int, std::set< Int > > &fieldToStatesMap, std::map< Int, std::set< Int > > &stateToFieldsMap)
void | _getFieldsAndTimesMaps (std::shared_ptr< std::map< Int, std::set< Double > > > &fieldToTimesMap, std::shared_ptr< std::map< Double, std::set< Int > > > &timesToFieldMap)
std::shared_ptr< ArrayColumn< Bool > > | _getFlags () const
std::map< String, std::set< Double > > | _getIntentsToTimesMap () const
std::shared_ptr< Quantum< Vector< Double > > > | _getIntervals () const
std::shared_ptr< Vector< Int > > | _getObservationIDs () const
std::shared_ptr< Vector< Int > > | _getScans () const
vector< std::set< String > > | _getSpwToIntentsMap ()
std::vector< std::vector< uInt > > | _getSpwToPolMap () const
| polarization ids will be sorted in ascending order in all member vectors
std::shared_ptr< Vector< Int > > | _getStateIDs () const
std::shared_ptr< Vector< Double > > | _getTimes () const
Bool | _hasIntent (const String &intent) const
| std::shared_ptr<std::map<Double, TimeStampProperties> > _getTimeStampProperties() const;
Bool | _hasFieldID (Int fieldID) const
Bool | _hasStateID (Int stateID) const
void | _hasAntennaID (Int antennaID)
std::map< Double, Double > | _getTimeToTotalBWMap (const Vector< Double > &times, const Vector< Int > &ddIDs)
MDirection | _getInterpolatedDirection (const MSPointingColumns &pCols, const Int &index, const Double &time) const
vector< std::set< Int > > | _getObservationIDToArrayIDsMap () const
| map<SubScanKey, Quantity> _getMeanExposureTimes() const;
vector< MPosition > | _getObservatoryPositions ()
void | _getRowStats (rownr_t &nACRows, rownr_t &nXCRows, std::map< SubScanKey, rownr_t > *&subScanToNACRowsMap, std::map< SubScanKey, rownr_t > *&subScanToNXCRowsMap, std::map< Int, rownr_t > *&fieldToNACRowsMap, std::map< Int, rownr_t > *&fieldToNXCRowsMap) const
void | _getRowStats (rownr_t &nACRows, rownr_t &nXCRows, std::shared_ptr< std::map< SubScanKey, rownr_t > > &scanToNACRowsMap, std::shared_ptr< std::map< SubScanKey, rownr_t > > &scanToNXCRowsMap, std::shared_ptr< std::map< Int, rownr_t > > &fieldToNACRowsMap, std::shared_ptr< std::map< Int, rownr_t > > &fieldToNXCRowsMap) const
std::shared_ptr< const std::map< ScanKey, MSMetaData::ScanProperties > > | _getScanProperties (Bool showProgress) const
| get scan properties
std::set< ScanKey > | _getScanKeys (const std::set< ScanKey > &scanKeys, const ArrayKey &arrayKey) const
| get the scan keys in the specified set that have the associated arrayKey
std::set< Int > | _getScanNumbers (const ArrayKey &arrayKey) const
| get all valid scan numbers associated with the specified arrayKey
void | _getScansAndDDIDMaps (std::map< ScanKey, std::set< uInt > > &scanToDDIDMap, vector< std::set< ScanKey > > &ddIDToScanMap) const
void | _getScansAndIntentsMaps (std::map< ScanKey, std::set< String > > &scanToIntentsMap, std::map< String, std::set< ScanKey > > &intentToScansMap) const
void | _getScansAndSpwMaps (std::map< ScanKey, std::set< uInt > > &scanToSpwMap, vector< std::set< ScanKey > > &spwToScanMap) const
std::map< ScanKey, std::set< Int > > | _getScanToAntennasMap () const
std::map< ScanKey, std::set< SubScanKey > > | _getScanToSubScansMap () const
std::shared_ptr< std::map< ScanKey, std::set< Double > > > | _getScanToTimesMap () const
std::map< SourceKey, SourceProperties > | _getSourceInfo () const
vector< SpwProperties > | _getSpwInfo (std::set< uInt > &avgSpw, std::set< uInt > &tdmSpw, std::set< uInt > &fdmSpw, std::set< uInt > &wvrSpw, std::set< uInt > &sqldSpw) const
void | _getSpwsAndIntentsMaps (vector< std::set< String > > &spwToIntentsMap, std::map< String, std::set< uInt > > &intentToSpwsMap)
vector< SpwProperties > | _getSpwInfo2 (std::set< uInt > &avgSpw, std::set< uInt > &tdmSpw, std::set< uInt > &fdmSpw, std::set< uInt > &wvrSpw, std::set< uInt > &sqldSpw) const
void | _getStateToIntentsMap (vector< std::set< String > > &statesToIntentsMap, std::set< String > &uniqueIntents) const
vector< String > | _getStationNames ()
void | _getSubScansAndIntentsMaps (std::shared_ptr< const std::map< SubScanKey, std::set< String > > > &subScanToIntentsMap, std::map< String, std::set< SubScanKey > > &intentToSubScansMap) const
void | _getScanAndSubScanProperties (std::shared_ptr< const std::map< ScanKey, ScanProperties > > &scanProps, std::shared_ptr< const std::map< SubScanKey, SubScanProperties > > &subScanProps, Bool showProgress) const
std::set< SubScanKey > | _getSubScanKeys () const
std::set< SubScanKey > | _getSubScanKeys (const ScanKey &scanKey) const
| get subscans related to the given scan
void | _getUnflaggedRowStats (Double &nACRows, Double &nXCRows, std::shared_ptr< std::map< SubScanKey, Double > > &subScanToNACRowsMap, std::shared_ptr< std::map< SubScanKey, Double > > &subScanToNXCRowsMap, std::shared_ptr< vector< Double > > &fieldToNACRowsMap, std::shared_ptr< vector< Double > > &fieldToNXCRowsMap) const
void | _getUnflaggedRowStats (Double &nACRows, Double &nXCRows, vector< Double > *&fieldNACRows, vector< Double > *&fieldNXCRows, std::map< SubScanKey, Double > *&scanNACRows, std::map< SubScanKey, Double > *&scanNXCRows) const
template<class T>
std::shared_ptr< Vector< T > > | _getMainScalarColumn (MSMainEnums::PredefinedColumns col) const
std::shared_ptr< vector< int > > | _almaReceiverBands (uint nspw) const

## Static Private Member Functions

static void | _checkTolerance (const Double tol)
static void | _getScalarIntColumn (Vector< Int > &v, TableProxy &table, const String &colname, rownr_t beginRow, rownr_t nrows)
static void | _getScalarDoubleColumn (Vector< Double > &v, TableProxy &table, const String &colname, rownr_t beginRow, rownr_t nrows)
static void | _getScalarQuantDoubleColumn (Quantum< Vector< Double > > &v, TableProxy &table, const String &colname, rownr_t beginRow, rownr_t nrows)
static void | _createTimeStampRecords (Record &parent, const SubScanProperties &subScanProps)
static QVD | _freqWidthToVelWidth (const QVD &v, const Quantity &refFreq)
| convert a QVD in frequency units to velocity units using the give reference frequency.
static void | _modifyFirstExposureTimeIfNecessary (FirstExposureTimeMap &current, const FirstExposureTimeMap &test)
static void | _modifyFirstExposureTimeIfNecessary (FirstExposureTimeMap &current, Int dataDescID, Double time, Double exposure, const Unit &eunit)
static uInt | _sizeof (const std::map< Double, MSMetaData::TimeStampProperties > &m)
template<class T>
static uInt | _sizeof (const std::map< T, std::set< String > > &m)
template<class T, class U>
static uInt | _sizeof (const std::map< T, std::set< U > > &m)
template<class T, class U>
static uInt | _sizeof (const std::map< T, U > &m)
static uInt | _sizeof (const vector< std::set< String > > &m)
static uInt | _sizeof (const vector< String > &m)
static uInt | _sizeof (const vector< vector< String > > &m)
template<class T>
static uInt | _sizeof (const vector< T > &v)
static uInt | _sizeof (const Quantum< Vector< Double > > &m)
template<class T>
static uInt | _sizeof (const vector< std::set< T > > &v)
template<class T>
static uInt | _sizeof (const std::map< String, std::set< T > > &map)
static uInt | _sizeof (const vector< std::map< Int, Quantity > > &map)
static uInt | _sizeof (const std::map< std::pair< Int, uInt >, std::set< uInt > > &map)
static std::map< Int, uInt > | _toUIntMap (const Vector< Int > &v)

## Private Attributes

const MeasurementSet * | _ms
| The general pattern is that a mutable gets set only once, on demand, when its setter is called for the first time.
Bool | _showProgress
Float | _cacheMB
const Float | _maxCacheMB
rownr_t | _nACRows
rownr_t | _nXCRows
uInt | _nStates
uInt | _nSpw
uInt | _nFields
uInt | _nAntennas
uInt | _nObservations
uInt | _nScans
uInt | _nArrays
uInt | _nrows
uInt | _nPol
uInt | _nDataDescIDs
std::map< ScanKey, std::set< uInt > > | _scanToSpwsMap
std::map< ScanKey, std::set< uInt > > | _scanToDDIDsMap
vector< uInt > | _dataDescIDToSpwMap
vector< uInt > | _dataDescIDToPolIDMap
std::map< Int, std::set< uInt > > | _fieldToSpwMap
std::map< ScanKey, std::set< Int > > | _scanToStatesMap
std::map< ScanKey, std::set< Int > > | _scanToFieldsMap
std::map< ScanKey, std::set< Int > > | _scanToAntennasMap
std::map< Int, std::set< Int > > | _fieldToStatesMap
std::map< Int, std::set< Int > > | _stateToFieldsMap
std::map< Int, std::set< Int > > | _sourceToFieldsMap
std::map< std::pair< uInt, uInt >, uInt > | _spwPolIDToDataDescIDMap
std::vector< std::vector< uInt > > | _spwIDToPolIDMap
std::map< String, std::set< uInt > > | _antennaNameToIDMap
std::shared_ptr< const std::map< ScanKey, ScanProperties > > | _scanProperties
std::shared_ptr< const std::map< SubScanKey, SubScanProperties > > | _subScanProperties
std::map< String, std::set< Int > > | _intentToFieldIDMap
std::map< String, std::set< ScanKey > > | _intentToScansMap
std::map< String, std::set< SubScanKey > > | _intentToSubScansMap
std::map< std::pair< ScanKey, uInt >, std::set< uInt > > | _scanSpwToPolIDMap
std::set< String > | _uniqueIntents
std::set< Int > | _uniqueFieldIDs
std::set< Int > | _uniqueStateIDs
std::set< Int > | _uniqueAntennaIDs
std::set< uInt > | _avgSpw
std::set< uInt > | _tdmSpw
std::set< uInt > | _fdmSpw
std::set< uInt > | _wvrSpw
std::set< uInt > | _sqldSpw
std::set< uInt > | _uniqueDataDescIDs
std::shared_ptr< std::map< SubScanKey, rownr_t > > | _subScanToNACRowsMap
std::shared_ptr< std::map< SubScanKey, rownr_t > > | _subScanToNXCRowsMap
std::shared_ptr< std::map< Int, rownr_t > > | _fieldToNACRowsMap
std::shared_ptr< std::map< Int, rownr_t > > | _fieldToNXCRowsMap
std::map< ScanKey, std::set< String > > | _scanToIntentsMap
std::shared_ptr< const std::map< SubScanKey, std::set< String > > > | _subScanToIntentsMap
vector< std::set< String > > | _stateToIntentsMap
vector< std::set< String > > | _spwToIntentsMap
vector< std::set< String > > | _fieldToIntentsMap
vector< SpwProperties > | _spwInfo
vector< std::set< Int > > | _spwToFieldIDsMap
vector< std::set< Int > > | _obsToArraysMap
vector< std::set< ScanKey > > | _spwToScansMap
vector< std::set< ScanKey > > | _ddidToScansMap
vector< std::set< ScanKey > > | _fieldToScansMap
vector< String > | _fieldNames
vector< String > | _antennaNames
vector< String > | _observatoryNames
vector< String > | _stationNames
vector< String > | _observers
vector< String > | _projects
vector< String > | _sourceNames
vector< String > | _fieldCodes
vector< vector< String > > | _schedules
vector< vector< Int > > | _corrTypes
vector< Array< Int > > | _corrProds
std::shared_ptr< std::map< ScanKey, std::set< Double > > > | _scanToTimesMap
std::map< String, std::set< uInt > > | _intentToSpwsMap
std::map< String, std::set< Double > > | _intentToTimesMap
std::shared_ptr< std::map< Int, std::set< Double > > > | _fieldToTimesMap
std::shared_ptr< std::map< Double, std::set< Int > > > | _timeToFieldsMap
vector< MPosition > | _observatoryPositions
vector< MPosition > | _antennaPositions
vector< QVD > | _antennaOffsets
QVD | _antennaDiameters
Matrix< Bool > | _uniqueBaselines
Quantity | _exposureTime
Double | _nUnflaggedACRows
Double | _nUnflaggedXCRows
std::shared_ptr< vector< Double > > | _unflaggedFieldNACRows
std::shared_ptr< vector< Double > > | _unflaggedFieldNXCRows
std::shared_ptr< std::map< SubScanKey, Double > > | _unflaggedSubScanNACRows
std::shared_ptr< std::map< SubScanKey, Double > > | _unflaggedSubScanNXCRows
const String | _taqlTableName
const vector< const Table * > | _taqlTempTable
Bool | _spwInfoStored
Bool | _forceSubScanPropsToCache
vector< std::map< Int, Quantity > > | _firstExposureTimeMap
vector< Int > | _numCorrs
vector< Int > | _source_sourceIDs
vector< Int > | _field_sourceIDs
std::set< ArrayKey > | _arrayKeys
std::set< ScanKey > | _scanKeys
std::set< SubScanKey > | _subscans
std::map< ScanKey, std::set< SubScanKey > > | _scanToSubScans
std::map< ArrayKey, std::set< SubScanKey > > | _arrayToSubScans
vector< std::pair< MEpoch, MEpoch > > | _timeRangesForObs
vector< MDirection > | _phaseDirs
vector< MDirection > | _sourceDirs
vector< std::pair< Quantity, Quantity > > | _properMotions
std::map< SourceKey, SourceProperties > | _sourceInfo
std::shared_ptr< std::set< Int > > | _ephemFields
std::shared_ptr< const Quantum< Vector< Double > > > | _sourceTimes

## Detailed Description

Class to interrogate an MS for metadata. Interrogation happens on demand and resulting metadata are stored for use by subsequent queries if the cache has not exceeded the specified limit. Caching of MS main table columns has been removed because the cache can be swamped by columns for large MSes, meaning that smaller data structures, which are more computationally expensive to create, aren't cached. Also, the column data is usually only needed temporarily to compute smaller data structures, and the column data is not particularly expensive to recreate if necessary. Parallel processing is enabled using openmp.

Definition at line 59 of file MSMetaData.h.

## Member Typedef Documentation

## FirstExposureTimeMap

typedef std::map<Int, std::pair<Double, Quantity> > casacore::MSMetaData::FirstExposureTimeMap

Definition at line 87 of file MSMetaData.h.

## Member Enumeration Documentation

## CorrelationType

enum casacore::MSMetaData::CorrelationType

for retrieving stats

Enumerator
AUTO |
CROSS |
BOTH |

Definition at line 64 of file MSMetaData.h.

## SQLDSwitch

enum casacore::MSMetaData::SQLDSwitch

Enumerator
SQLD_INCLUDE |
SQLD_EXCLUDE |
SQLD_ONLY |

Definition at line 70 of file MSMetaData.h.

## Constructor & Destructor Documentation

## MSMetaData() [1/2]

casacore::MSMetaData::MSMetaData | ( | const MeasurementSet *const & | ms,
|  | const Float | maxCacheSizeMB )

construct an object which stores a pointer to the MS and queries the MS only as necessary.

The MeasurementSet pointer passed in should not go out of scope in the calling code until the caller has finished with this object, or else subsequent method calls on this object will result in a segmentation fault; the pointer is not copied. maxCacheSizeMB is the maximum cache size in megabytes. <=0 means do not use a cache, in which case, each method call will have to (re)query the MS. It is highly recommended to use a cache of reasonable size for the specified MS if multiple methods are going to be called.

Referenced by MSMetaData(), and operator=().

## ~MSMetaData()

virtual casacore::MSMetaData::~MSMetaData | ( |  | ) |

virtual

## MSMetaData() [2/2]

casacore::MSMetaData::MSMetaData | ( | const MSMetaData & |  | ) |

private

disallow copy constructor and = operator

References MSMetaData().

## Member Function Documentation

## _almaReceiverBands()

std::shared_ptr< vector< int > > casacore::MSMetaData::_almaReceiverBands | ( | uint | nspw | ) | const

private

## _cacheUpdated()

Bool casacore::MSMetaData::_cacheUpdated | ( | const Float | incrementInBytes | ) | const

private

## _checkField()

void casacore::MSMetaData::_checkField | ( | uInt | fieldID | ) | const

private

## _checkScan()

void casacore::MSMetaData::_checkScan | ( | const ScanKey & | key | ) | const

private

## _checkScans()

void casacore::MSMetaData::_checkScans | ( | const std::set< ScanKey > & | scanKeys | ) | const

private

References casacore::scanKeys().

## _checkSubScan()

void casacore::MSMetaData::_checkSubScan | ( | const SubScanKey & | key | ) | const

private

## _checkTolerance()

void casacore::MSMetaData::_checkTolerance | ( | const Double | tol | ) |

static private

## _computeScanAndSubScanProperties()

void casacore::MSMetaData::_computeScanAndSubScanProperties | ( | std::shared_ptr< std::map< ScanKey, MSMetaData::ScanProperties > > & | scanProps,
|  | std::shared_ptr< std::map< SubScanKey, MSMetaData::SubScanProperties > > & | subScanProps,
|  | Bool | showProgress ) const

private

## _createScanRecords()

void casacore::MSMetaData::_createScanRecords | ( | Record & | parent,
|  | const ArrayKey & | arrayKey,
|  | const std::map< SubScanKey, SubScanProperties > & | subScanProps ) const

private

References casacore::Record().

## _createSubScanRecords()

void casacore::MSMetaData::_createSubScanRecords | ( | Record & | parent,
|  | rownr_t & | scanNRows,
|  | std::set< Int > & | antennasForScan,
|  | const ScanKey & | scanKey,
|  | const std::map< SubScanKey, SubScanProperties > & | subScanProps ) const

private

References casacore::Record(), and casacore::scanKey().

## _createTimeStampRecords()

void casacore::MSMetaData::_createTimeStampRecords | ( | Record & | parent,
|  | const SubScanProperties & | subScanProps )

static private

References casacore::Record().

## _freqWidthToVelWidth()

QVD casacore::MSMetaData::_freqWidthToVelWidth | ( | const QVD & | v,
|  | const Quantity & | refFreq )

static private

convert a QVD in frequency units to velocity units using the give reference frequency.

No explicit checking is done for unit correctness of the inputs.

## _generateScanPropsIfWanted()

std::shared_ptr< const std::map< ScanKey, ScanProperties > > casacore::MSMetaData::_generateScanPropsIfWanted | ( |  | ) | const

private

if _scanProps has been generated, just return it.

If the caller has configured the object to generate _scanProps at some point, this call will generate it. Otherwise, the returned object contains a null pointer.

## _generateSubScanPropsIfWanted()

std::shared_ptr< const std::map< SubScanKey, SubScanProperties > > casacore::MSMetaData::_generateSubScanPropsIfWanted | ( |  | ) | const

private

if _subScanProperties has been generated, just return it.

If the caller has configured the object to generate _subScanPropertiess at some point, this call will generate it. Otherwise, the returned object contains a null pointer.

## _getAntennaNames()

vector< String > casacore::MSMetaData::_getAntennaNames | ( | std::map< String, std::set< uInt > > & | namesToIDsMap | ) | const

private

## _getAntennaPositions()

vector< MPosition > casacore::MSMetaData::_getAntennaPositions | ( |  | ) | const

private

## _getAntennas()

void casacore::MSMetaData::_getAntennas | ( | std::shared_ptr< Vector< Int > > & | ant1,
|  | std::shared_ptr< Vector< Int > > & | ant2 ) const

private

## _getArrayIDs()

std::shared_ptr< Vector< Int > > casacore::MSMetaData::_getArrayIDs | ( |  | ) | const

private

## _getArrayKeysToSubScanKeys()

std::map< ArrayKey, std::set< SubScanKey > > casacore::MSMetaData::_getArrayKeysToSubScanKeys | ( |  | ) | const

private

## _getChunkSubScanProperties()

std::pair< std::map< ScanKey, ScanProperties >, std::map< SubScanKey, SubScanProperties > > casacore::MSMetaData::_getChunkSubScanProperties | ( | const Vector< Int > & | scans,
|  | const Vector< Int > & | fields,
|  | const Vector< Int > & | ddIDs,
|  | const Vector< Int > & | states,
|  | const Vector< Double > & | times,
|  | const Vector< Int > & | arrays,
|  | const Vector< Int > & | observations,
|  | const Vector< Int > & | ant1,
|  | const Vector< Int > & | ant2,
|  | const Quantum< Vector< Double > > & | exposureTimes,
|  | const Quantum< Vector< Double > > & | intervalTimes,
|  | const vector< uInt > & | ddIDToSpw,
|  | rownr_t | beginRow,
|  | rownr_t | endRow ) const

private

Uses openmp for parallel processing.

## _getDataDescIDs()

std::shared_ptr< Vector< Int > > casacore::MSMetaData::_getDataDescIDs | ( |  | ) | const

private

## _getEphemFieldIDs()

std::shared_ptr< std::set< Int > > casacore::MSMetaData::_getEphemFieldIDs | ( |  | ) | const

private

get the field IDs of ephemeris objects

## _getExposureTimes()

std::shared_ptr< Quantum< Vector< Double > > > casacore::MSMetaData::_getExposureTimes | ( |  | ) | const

private

## _getFieldIDs()

std::shared_ptr< Vector< Int > > casacore::MSMetaData::_getFieldIDs | ( |  | ) | const

private

## _getFieldsAndIntentsMaps()

void casacore::MSMetaData::_getFieldsAndIntentsMaps | ( | vector< std::set< String > > & | fieldToIntentsMap,
|  | std::map< String, std::set< Int > > & | intentToFieldsMap )

private

If there are no intents, then fieldToIntentsMap will be of length nFields() and all of its entries will be the empty set, and intentToFieldsMap will be empty.

## _getFieldsAndScansMaps()

void casacore::MSMetaData::_getFieldsAndScansMaps | ( | vector< std::set< ScanKey > > & | fieldToScansMap,
|  | std::map< ScanKey, std::set< Int > > & | scanToFieldsMap ) const

private

## _getFieldsAndSpwMaps()

void casacore::MSMetaData::_getFieldsAndSpwMaps | ( | std::map< Int, std::set< uInt > > & | fieldToSpwMap,
|  | vector< std::set< Int > > & | spwToFieldMap ) const

private

## _getFieldsAndStatesMaps()

void casacore::MSMetaData::_getFieldsAndStatesMaps | ( | std::map< Int, std::set< Int > > & | fieldToStatesMap,
|  | std::map< Int, std::set< Int > > & | stateToFieldsMap )

private

## _getFieldsAndTimesMaps()

void casacore::MSMetaData::_getFieldsAndTimesMaps | ( | std::shared_ptr< std::map< Int, std::set< Double > > > & | fieldToTimesMap,
|  | std::shared_ptr< std::map< Double, std::set< Int > > > & | timesToFieldMap )

private

## _getFlags()

std::shared_ptr< ArrayColumn< Bool > > casacore::MSMetaData::_getFlags | ( |  | ) | const

private

## _getIntentsToTimesMap()

std::map< String, std::set< Double > > casacore::MSMetaData::_getIntentsToTimesMap | ( |  | ) | const

private

## _getInterpolatedDirection()

MDirection casacore::MSMetaData::_getInterpolatedDirection | ( | const MSPointingColumns & | pCols,
|  | const Int & | index,
|  | const Double & | time ) const

private

References casacore::time().

## _getIntervals()

std::shared_ptr< Quantum< Vector< Double > > > casacore::MSMetaData::_getIntervals | ( |  | ) | const

private

## _getMainScalarColumn()

template<class T>

std::shared_ptr< Vector< T > > casacore::MSMetaData::_getMainScalarColumn | ( | MSMainEnums::PredefinedColumns | col | ) | const

private

## _getObservationIDs()

std::shared_ptr< Vector< Int > > casacore::MSMetaData::_getObservationIDs | ( |  | ) | const

private

## _getObservationIDToArrayIDsMap()

vector< std::set< Int > > casacore::MSMetaData::_getObservationIDToArrayIDsMap | ( |  | ) | const

private

map<SubScanKey, Quantity> _getMeanExposureTimes() const;

## _getObservatoryPositions()

vector< MPosition > casacore::MSMetaData::_getObservatoryPositions | ( |  | ) |

private

## _getRowStats() [1/2]

void casacore::MSMetaData::_getRowStats | ( | rownr_t & | nACRows,
|  | rownr_t & | nXCRows,
|  | std::map< SubScanKey, rownr_t > *& | subScanToNACRowsMap,
|  | std::map< SubScanKey, rownr_t > *& | subScanToNXCRowsMap,
|  | std::map< Int, rownr_t > *& | fieldToNACRowsMap,
|  | std::map< Int, rownr_t > *& | fieldToNXCRowsMap ) const

private

## _getRowStats() [2/2]

void casacore::MSMetaData::_getRowStats | ( | rownr_t & | nACRows,
|  | rownr_t & | nXCRows,
|  | std::shared_ptr< std::map< SubScanKey, rownr_t > > & | scanToNACRowsMap,
|  | std::shared_ptr< std::map< SubScanKey, rownr_t > > & | scanToNXCRowsMap,
|  | std::shared_ptr< std::map< Int, rownr_t > > & | fieldToNACRowsMap,
|  | std::shared_ptr< std::map< Int, rownr_t > > & | fieldToNXCRowsMap ) const

private

## _getScalarDoubleColumn()

void casacore::MSMetaData::_getScalarDoubleColumn | ( | Vector< Double > & | v,
|  | TableProxy & | table,
|  | const String & | colname,
|  | rownr_t | beginRow,
|  | rownr_t | nrows )

static private

## _getScalarIntColumn()

void casacore::MSMetaData::_getScalarIntColumn | ( | Vector< Int > & | v,
|  | TableProxy & | table,
|  | const String & | colname,
|  | rownr_t | beginRow,
|  | rownr_t | nrows )

static private

## _getScalarQuantDoubleColumn()

void casacore::MSMetaData::_getScalarQuantDoubleColumn | ( | Quantum< Vector< Double > > & | v,
|  | TableProxy & | table,
|  | const String & | colname,
|  | rownr_t | beginRow,
|  | rownr_t | nrows )

static private

## _getScanAndSubScanProperties()

void casacore::MSMetaData::_getScanAndSubScanProperties | ( | std::shared_ptr< const std::map< ScanKey, ScanProperties > > & | scanProps,
|  | std::shared_ptr< const std::map< SubScanKey, SubScanProperties > > & | subScanProps,
|  | Bool | showProgress ) const

private

## _getScanKeys()

std::set< ScanKey > casacore::MSMetaData::_getScanKeys | ( | const std::set< ScanKey > & | scanKeys,
|  | const ArrayKey & | arrayKey ) const

private

get the scan keys in the specified set that have the associated arrayKey

References casacore::scanKeys().

## _getScanNumbers()

std::set< Int > casacore::MSMetaData::_getScanNumbers | ( | const ArrayKey & | arrayKey | ) | const

private

get all valid scan numbers associated with the specified arrayKey

## _getScanProperties()

std::shared_ptr< const std::map< ScanKey, MSMetaData::ScanProperties > > casacore::MSMetaData::_getScanProperties | ( | Bool | showProgress | ) | const

private

get scan properties

## _getScans()

std::shared_ptr< Vector< Int > > casacore::MSMetaData::_getScans | ( |  | ) | const

private

## _getScansAndDDIDMaps()

void casacore::MSMetaData::_getScansAndDDIDMaps | ( | std::map< ScanKey, std::set< uInt > > & | scanToDDIDMap,
|  | vector< std::set< ScanKey > > & | ddIDToScanMap ) const

private

## _getScansAndIntentsMaps()

void casacore::MSMetaData::_getScansAndIntentsMaps | ( | std::map< ScanKey, std::set< String > > & | scanToIntentsMap,
|  | std::map< String, std::set< ScanKey > > & | intentToScansMap ) const

private

## _getScansAndSpwMaps()

void casacore::MSMetaData::_getScansAndSpwMaps | ( | std::map< ScanKey, std::set< uInt > > & | scanToSpwMap,
|  | vector< std::set< ScanKey > > & | spwToScanMap ) const

private

## _getScanToAntennasMap()

std::map< ScanKey, std::set< Int > > casacore::MSMetaData::_getScanToAntennasMap | ( |  | ) | const

private

## _getScanToSubScansMap()

std::map< ScanKey, std::set< SubScanKey > > casacore::MSMetaData::_getScanToSubScansMap | ( |  | ) | const

private

## _getScanToTimesMap()

std::shared_ptr< std::map< ScanKey, std::set< Double > > > casacore::MSMetaData::_getScanToTimesMap | ( |  | ) | const

private

## _getSourceInfo()

std::map< SourceKey, SourceProperties > casacore::MSMetaData::_getSourceInfo | ( |  | ) | const

private

## _getSpwInfo()

vector< SpwProperties > casacore::MSMetaData::_getSpwInfo | ( | std::set< uInt > & | avgSpw,
|  | std::set< uInt > & | tdmSpw,
|  | std::set< uInt > & | fdmSpw,
|  | std::set< uInt > & | wvrSpw,
|  | std::set< uInt > & | sqldSpw ) const

private

## _getSpwInfo2()

vector< SpwProperties > casacore::MSMetaData::_getSpwInfo2 | ( | std::set< uInt > & | avgSpw,
|  | std::set< uInt > & | tdmSpw,
|  | std::set< uInt > & | fdmSpw,
|  | std::set< uInt > & | wvrSpw,
|  | std::set< uInt > & | sqldSpw ) const

private

## _getSpwsAndIntentsMaps()

void casacore::MSMetaData::_getSpwsAndIntentsMaps | ( | vector< std::set< String > > & | spwToIntentsMap,
|  | std::map< String, std::set< uInt > > & | intentToSpwsMap )

private

## _getSpwToIntentsMap()

vector< std::set< String > > casacore::MSMetaData::_getSpwToIntentsMap | ( |  | ) |

private

## _getSpwToPolMap()

std::vector< std::vector< uInt > > casacore::MSMetaData::_getSpwToPolMap | ( |  | ) | const

private

polarization ids will be sorted in ascending order in all member vectors

## _getStateIDs()

std::shared_ptr< Vector< Int > > casacore::MSMetaData::_getStateIDs | ( |  | ) | const

private

## _getStateToIntentsMap()

void casacore::MSMetaData::_getStateToIntentsMap | ( | vector< std::set< String > > & | statesToIntentsMap,
|  | std::set< String > & | uniqueIntents ) const

private

## _getStationNames()

vector< String > casacore::MSMetaData::_getStationNames | ( |  | ) |

private

## _getSubScanKeys() [1/2]

std::set< SubScanKey > casacore::MSMetaData::_getSubScanKeys | ( |  | ) | const

private

## _getSubScanKeys() [2/2]

std::set< SubScanKey > casacore::MSMetaData::_getSubScanKeys | ( | const ScanKey & | scanKey | ) | const

private

get subscans related to the given scan

References casacore::scanKey().

## _getSubScansAndIntentsMaps()

void casacore::MSMetaData::_getSubScansAndIntentsMaps | ( | std::shared_ptr< const std::map< SubScanKey, std::set< String > > > & | subScanToIntentsMap,
|  | std::map< String, std::set< SubScanKey > > & | intentToSubScansMap ) const

private

## _getTimes()

std::shared_ptr< Vector< Double > > casacore::MSMetaData::_getTimes | ( |  | ) | const

private

## _getTimeToTotalBWMap()

std::map< Double, Double > casacore::MSMetaData::_getTimeToTotalBWMap | ( | const Vector< Double > & | times,
|  | const Vector< Int > & | ddIDs )

private

## _getUnflaggedRowStats() [1/2]

void casacore::MSMetaData::_getUnflaggedRowStats | ( | Double & | nACRows,
|  | Double & | nXCRows,
|  | std::shared_ptr< std::map< SubScanKey, Double > > & | subScanToNACRowsMap,
|  | std::shared_ptr< std::map< SubScanKey, Double > > & | subScanToNXCRowsMap,
|  | std::shared_ptr< vector< Double > > & | fieldToNACRowsMap,
|  | std::shared_ptr< vector< Double > > & | fieldToNXCRowsMap ) const

private

## _getUnflaggedRowStats() [2/2]

void casacore::MSMetaData::_getUnflaggedRowStats | ( | Double & | nACRows,
|  | Double & | nXCRows,
|  | vector< Double > *& | fieldNACRows,
|  | vector< Double > *& | fieldNXCRows,
|  | std::map< SubScanKey, Double > *& | scanNACRows,
|  | std::map< SubScanKey, Double > *& | scanNXCRows ) const

private

## _hasAntennaID()

void casacore::MSMetaData::_hasAntennaID | ( | Int | antennaID | ) |

private

## _hasFieldID()

Bool casacore::MSMetaData::_hasFieldID | ( | Int | fieldID | ) | const

private

## _hasIntent()

Bool casacore::MSMetaData::_hasIntent | ( | const String & | intent | ) | const

private

std::shared_ptr<std::map<Double, TimeStampProperties> > _getTimeStampProperties() const;

## _hasStateID()

Bool casacore::MSMetaData::_hasStateID | ( | Int | stateID | ) | const

private

## _mergeScanProps()

void casacore::MSMetaData::_mergeScanProps | ( | std::shared_ptr< std::map< ScanKey, MSMetaData::ScanProperties > > & | scanProps,
|  | std::shared_ptr< std::map< SubScanKey, MSMetaData::SubScanProperties > > & | subScanProps,
|  | const std::vector< std::pair< std::map< ScanKey, ScanProperties >, std::map< SubScanKey, SubScanProperties > > > & | props ) const

private

## _modifyFirstExposureTimeIfNecessary() [1/2]

void casacore::MSMetaData::_modifyFirstExposureTimeIfNecessary | ( | FirstExposureTimeMap & | current,
|  | const FirstExposureTimeMap & | test )

static private

## _modifyFirstExposureTimeIfNecessary() [2/2]

void casacore::MSMetaData::_modifyFirstExposureTimeIfNecessary | ( | FirstExposureTimeMap & | current,
|  | Int | dataDescID,
|  | Double | time,
|  | Double | exposure,
|  | const Unit & | eunit )

static private

References casacore::time().

## _setObservation()

void casacore::MSMetaData::_setObservation | ( | const MeasurementSet & | ms | ) |

private

set metadata from OBSERVATION table

## _setSpwInfo()

void casacore::MSMetaData::_setSpwInfo | ( | const MeasurementSet & | ms | ) |

private

This comment from thunter in the original ValueMapping python class.

# Determine the number of polarizations for the first OBSERVE_TARGET intent.

# Used by plotbandpass for BPOLY plots since the number of pols cannot be inferred

# correctly from the caltable alone. You cannot not simply use the first row, because

# it may be a pointing scan which may have different number of polarizations than what

# the TARGET and BANDPASS calibrator will have.

# – T. Hunter

uInt _getNumberOfPolarizations();

## _sizeof() [1/13]

uInt casacore::MSMetaData::_sizeof | ( | const Quantum< Vector< Double > > & | m | ) |

static private

## _sizeof() [2/13]

uInt casacore::MSMetaData::_sizeof | ( | const std::map< Double, MSMetaData::TimeStampProperties > & | m | ) |

static private

## _sizeof() [3/13]

uInt casacore::MSMetaData::_sizeof | ( | const std::map< std::pair< Int, uInt >, std::set< uInt > > & | map | ) |

static private

## _sizeof() [4/13]

template<class T>

uInt casacore::MSMetaData::_sizeof | ( | const std::map< String, std::set< T > > & | map | ) |

static private

## _sizeof() [5/13]

template<class T>

uInt casacore::MSMetaData::_sizeof | ( | const std::map< T, std::set< String > > & | m | ) |

static private

## _sizeof() [6/13]

template<class T, class U>

uInt casacore::MSMetaData::_sizeof | ( | const std::map< T, std::set< U > > & | m | ) |

static private

## _sizeof() [7/13]

template<class T, class U>

uInt casacore::MSMetaData::_sizeof | ( | const std::map< T, U > & | m | ) |

static private

## _sizeof() [8/13]

uInt casacore::MSMetaData::_sizeof | ( | const vector< std::map< Int, Quantity > > & | map | ) |

static private

## _sizeof() [9/13]

uInt casacore::MSMetaData::_sizeof | ( | const vector< std::set< String > > & | m | ) |

static private

## _sizeof() [10/13]

template<class T>

uInt casacore::MSMetaData::_sizeof | ( | const vector< std::set< T > > & | v | ) |

static private

## _sizeof() [11/13]

uInt casacore::MSMetaData::_sizeof | ( | const vector< String > & | m | ) |

static private

## _sizeof() [12/13]

template<class T>

uInt casacore::MSMetaData::_sizeof | ( | const vector< T > & | v | ) |

static private

## _sizeof() [13/13]

uInt casacore::MSMetaData::_sizeof | ( | const vector< vector< String > > & | m | ) |

static private

## _toUIntMap()

std::map< Int, uInt > casacore::MSMetaData::_toUIntMap | ( | const Vector< Int > & | v | ) |

static private

## getAntennaDiameters()

QVD casacore::MSMetaData::getAntennaDiameters | ( |  | ) | const

get the antenna diameters

## getAntennaID()

uInt casacore::MSMetaData::getAntennaID | ( | const String & | antennaName | ) | const

if the antenna name appears multiple times in the antenna table, the last ID that it is associated with is returned.

## getAntennaIDs() [1/2]

std::set< uInt > casacore::MSMetaData::getAntennaIDs | ( | const String & | antennaName | ) | const

get all the antenna IDs for the antenna with the specified name.

## getAntennaIDs() [2/2]

vector< std::set< uInt > > casacore::MSMetaData::getAntennaIDs | ( | const vector< String > & | antennaNames | ) | const

The returned IDs are ordered in the way they appear in the atenna table.

## getAntennaNames() [1/2]

vector< String > casacore::MSMetaData::getAntennaNames | ( | std::map< String, std::set< uInt > > & | namesToIDsMap,
|  | const vector< uInt > & | antennaIDs = vector< uInt >(0) ) const

## getAntennaNames() [2/2]

vector< String > casacore::MSMetaData::getAntennaNames | ( | std::map< String, uInt > & | namesToIDsMap,
|  | const vector< uInt > & | antennaIDs = vector< uInt >(0) ) const

In the first instance of getAntennaNames, namesToID map will have the last ID of the antenna name, if it appears multiple times in the antenna table.

In the second occurrence, namesToIDsMap will have the full set of IDs for antenna names that appear multiple times.

## getAntennaOffset() [1/2]

QVD casacore::MSMetaData::getAntennaOffset | ( | const String & | name | ) | const

If the antenna name appears mulitple times, this will return the offset for the first occurrence of it in the antenna table.

References casacore::name().

## getAntennaOffset() [2/2]

QVD casacore::MSMetaData::getAntennaOffset | ( | uInt | which | ) | const

get the position of the specified antenna relative to the observatory position.

the three vector returned represents the longitudinal, latitudinal, and elevation offsets (elements 0, 1, and 2 respectively). The longitude and latitude offsets are measured along the surface of a sphere centered at the earth's center and whose surface intersects the position of the observatory.

## getAntennaOffsets() [1/2]

vector< QVD > casacore::MSMetaData::getAntennaOffsets | ( |  | ) | const

## getAntennaOffsets() [2/2]

std::vector< QVD > casacore::MSMetaData::getAntennaOffsets | ( | const String & | name | ) | const

If the antenna name appears mulitple times, this will return all the offsets for it, in the order they appear in the antenna table.

References casacore::name().

## getAntennaPositions() [1/2]

vector< vector< MPosition > > casacore::MSMetaData::getAntennaPositions | ( | const vector< String > & | names | ) |

names cannot be empty.

## getAntennaPositions() [2/2]

vector< MPosition > casacore::MSMetaData::getAntennaPositions | ( | const vector< uInt > & | which = std::vector< uInt >(0) | ) | const

get the positions of the specified antennas.

If which is empty, return all antenna positions.

## getAntennasForScan()

std::set< Int > casacore::MSMetaData::getAntennasForScan | ( | const ScanKey & | scan | ) | const

get the set of antenna IDs for the specified scan.

## getAntennaStations() [1/2]

vector< std::vector< String > > casacore::MSMetaData::getAntennaStations | ( | const vector< String > & | antennaNames | ) |

get the antenna stations for the specified antenna names.

The outer vector is ordered respective to antennaNames. Because an antenna name can appear more than once in the antenna table, the inner vector is ordered by row number in which that antenna name appears.

## getAntennaStations() [2/2]

vector< String > casacore::MSMetaData::getAntennaStations | ( | const vector< uInt > & | antennaIDs = vector< uInt >() | ) |

get the antenna stations for the specified antenna IDs

## getAverageIntervalsForScan()

std::map< uInt, Double > casacore::MSMetaData::getAverageIntervalsForScan | ( | const ScanKey & | scan | ) | const

the first key in the returned map is the spectral window ID, the second is the average interval for the specified scan for that spw.

## getAverageIntervalsForSubScan()

std::map< uInt, Quantity > casacore::MSMetaData::getAverageIntervalsForSubScan | ( | const SubScanKey & | subScan | ) | const

the first key in the returned map is the spectral window ID, the second is the average interval for the specified sub scan for that spw.

## getBandWidths()

vector< Double > casacore::MSMetaData::getBandWidths | ( |  | ) | const

## getBBCNos()

vector< uInt > casacore::MSMetaData::getBBCNos | ( |  | ) | const

## getBBCNosToSpwMap()

std::map< uInt, std::set< uInt > > casacore::MSMetaData::getBBCNosToSpwMap | ( | SQLDSwitch | sqldSwitch | ) |

## getCache()

Float casacore::MSMetaData::getCache | ( |  | ) | const

inline

Definition at line 582 of file MSMetaData.h.

References _cacheMB.

## getCenterFreqs()

vector< Quantity > casacore::MSMetaData::getCenterFreqs | ( |  | ) | const

## getChanEffectiveBWs()

vector< QVD > casacore::MSMetaData::getChanEffectiveBWs | ( | Bool | asVelWidths | ) | const

get the effective bandwidth for each channel.

Each element in the returned vector represents a separate spectral window, with ID given by its location in the vector. If asVelWidths is True, convert the values to velocity widths.

## getChanFreqs()

vector< QVD > casacore::MSMetaData::getChanFreqs | ( |  | ) | const

## getChannelAvgSpw()

std::set< uInt > casacore::MSMetaData::getChannelAvgSpw | ( |  | ) |

ALMA-specific.

get spectral windows that have been averaged. These are windows with 1 channel.

## getChanResolutions()

vector< QVD > casacore::MSMetaData::getChanResolutions | ( | Bool | asVelWidths | ) | const

get the resolution for each channel.

Each element in the returned vector represents a separate spectral window, with ID given by its location in the vector. If asVelWidths is True, convert the values to velocity widths.

## getChanWidths()

vector< QVD > casacore::MSMetaData::getChanWidths | ( |  | ) | const

## getCorrBits()

vector< String > casacore::MSMetaData::getCorrBits | ( |  | ) | const

## getCorrProducts()

vector< Array< Int > > casacore::MSMetaData::getCorrProducts | ( |  | ) | const

POLARIZATION.CORR_PRODUCT.

## getCorrTypes()

vector< vector< Int > > casacore::MSMetaData::getCorrTypes | ( |  | ) | const

POLARIZATION.CORR_TYPE.

## getDataDescIDToPolIDMap()

vector< uInt > casacore::MSMetaData::getDataDescIDToPolIDMap | ( |  | ) | const

## getDataDescIDToSpwMap()

vector< uInt > casacore::MSMetaData::getDataDescIDToSpwMap | ( |  | ) | const

## getEdgeChans()

vector< vector< Double > > casacore::MSMetaData::getEdgeChans | ( |  | ) |

## getEffectiveTotalExposureTime()

Quantity casacore::MSMetaData::getEffectiveTotalExposureTime | ( |  | ) |

get the effective total exposure time.

This is the effective time spent collecting unflagged data.

## getFDMSpw()

std::set< uInt > casacore::MSMetaData::getFDMSpw | ( |  | ) |

ALMA-specific.

get set of spectral windows used for FDM. These are windows that do not have 1, 4, 64, 128, or 256 channels.

## getFieldCodes()

vector< String > casacore::MSMetaData::getFieldCodes | ( |  | ) | const

get the values of the CODE column from the field table

## getFieldIDsForField()

std::set< Int > casacore::MSMetaData::getFieldIDsForField | ( | const String & | field | ) | const

get the field IDs for the specified field name.

Case insensitive.

## getFieldIDsForSpw()

std::set< Int > casacore::MSMetaData::getFieldIDsForSpw | ( | const uInt | spw | ) |

get the set of field IDs corresponding to the specified spectral window.

## getFieldNames()

vector< String > casacore::MSMetaData::getFieldNames | ( |  | ) | const

get a list of the field names in the order in which they appear in the FIELD table.

## getFieldNamesForFieldIDs()

vector< String > casacore::MSMetaData::getFieldNamesForFieldIDs | ( | const vector< uInt > & | fieldIDs | ) |

get the field names associated with the specified field IDs.

If fieldIDs is empty, a vector of all the field names is returned.

## getFieldNamesForSourceMap()

std::map< Int, std::set< String > > casacore::MSMetaData::getFieldNamesForSourceMap | ( |  | ) | const

## getFieldNamesForSpw()

std::set< String > casacore::MSMetaData::getFieldNamesForSpw | ( | const uInt | spw | ) |

get the set of field names corresponding to the specified spectral window.

## getFieldsForIntent() [1/2]

std::set< Int > casacore::MSMetaData::getFieldsForIntent | ( | const String & | intent | ) |

get the field IDs associated with the specified intent.

## getFieldsForIntent() [2/2]

std::set< Int > casacore::MSMetaData::getFieldsForIntent | ( | uInt | sourceID | ) | const

get the field IDs associated with the specified source.

## getFieldsForScan()

std::set< Int > casacore::MSMetaData::getFieldsForScan | ( | const ScanKey & | scan | ) | const

get field IDs associated with the specified scan number.

## getFieldsForScans() [1/2]

std::set< Int > casacore::MSMetaData::getFieldsForScans | ( | const std::set< Int > & | scans,
|  | Int | obsID,
|  | Int | arrayID ) const

get the field IDs associated with the specified scans

## getFieldsForScans() [2/2]

std::set< Int > casacore::MSMetaData::getFieldsForScans | ( | const std::set< ScanKey > & | scans | ) | const

get the field IDs associated with the specified scans

## getFieldsForSourceMap()

std::map< Int, std::set< Int > > casacore::MSMetaData::getFieldsForSourceMap | ( |  | ) | const

## getFieldsForTimes()

std::set< Int > casacore::MSMetaData::getFieldsForTimes | ( | Double | center,
|  | Double | tol )

Get the fields which fail into the specified time range (center-tol to center+tol).

## getFieldsToSpwsMap()

std::map< Int, std::set< uInt > > casacore::MSMetaData::getFieldsToSpwsMap | ( |  | ) | const

get the mapping of fields to spws

## getFieldTableSourceIDs()

vector< Int > casacore::MSMetaData::getFieldTableSourceIDs | ( |  | ) | const

Get the FIELD.SOURCE_ID column.

## getFieldToScansMap()

vector< std::set< ScanKey > > casacore::MSMetaData::getFieldToScansMap | ( |  | ) | const

get the mapping of field ID to scans

## getFirstExposureTimeMap()

std::vector< std::map< Int, Quantity > > casacore::MSMetaData::getFirstExposureTimeMap | ( |  | ) |

DEPRECATED get a map of data desc ID, scan number pair to exposure time for the first time for that data desc ID, scan number pair.

## getIntents()

std::set< String > casacore::MSMetaData::getIntents | ( |  | ) | const

get all intents, in no particular (nor guaranteed) order.

## getIntentsForField() [1/2]

std::set< String > casacore::MSMetaData::getIntentsForField | ( | Int | fieldID | ) |

get a set of intents corresponding to a specified field

## getIntentsForField() [2/2]

std::set< String > casacore::MSMetaData::getIntentsForField | ( | String | field | ) |

get a set of intents corresponding to a specified field name

## getIntentsForScan()

std::set< String > casacore::MSMetaData::getIntentsForScan | ( | const ScanKey & | scan | ) | const

## getIntentsForSpw()

std::set< String > casacore::MSMetaData::getIntentsForSpw | ( | const uInt | spw | ) |

get a set of intents corresponding to the specified spectral window

## getIntentsForSubScan()

std::set< String > casacore::MSMetaData::getIntentsForSubScan | ( | const SubScanKey & | subScan | ) | const

## getIntentToFieldsMap()

std::map< String, std::set< Int > > casacore::MSMetaData::getIntentToFieldsMap | ( |  | ) |

## getIntentToScansMap()

std::map< String, std::set< ScanKey > > casacore::MSMetaData::getIntentToScansMap | ( |  | ) |

## getIntentToSpwsMap()

std::map< String, std::set< uInt > > casacore::MSMetaData::getIntentToSpwsMap | ( |  | ) |

## getIntervalStatistics()

ColumnStats casacore::MSMetaData::getIntervalStatistics | ( |  | ) | const

get statistics related to the values of the INTERVAL column.

Returned values are in seconds. All values in this column are used in the computation, including those which associated row flags may be set.

## getMaxCacheSizeMB()

Float casacore::MSMetaData::getMaxCacheSizeMB | ( |  | ) | const

inline

max cache size in MB

Definition at line 453 of file MSMetaData.h.

References _maxCacheMB.

## getMeanFreqs()

vector< Quantity > casacore::MSMetaData::getMeanFreqs | ( |  | ) | const

## getMS()

const MeasurementSet * casacore::MSMetaData::getMS | ( |  | ) | const

inline

Definition at line 659 of file MSMetaData.h.

References _ms.

## getNetSidebands()

vector< Int > casacore::MSMetaData::getNetSidebands | ( |  | ) | const

## getNRowMap()

std::shared_ptr< const std::map< SubScanKey, rownr_t > > casacore::MSMetaData::getNRowMap | ( | CorrelationType | type | ) | const

## getNumCorrs()

vector< Int > casacore::MSMetaData::getNumCorrs | ( |  | ) | const

number of correlations from the polarization table.

## getObservatoryNames()

vector< String > casacore::MSMetaData::getObservatoryNames | ( |  | ) |

get telescope names in the order they are listed in the OBSERVATION table.

These are the telescopes (observatories), not the antenna names.

## getObservatoryPosition()

MPosition casacore::MSMetaData::getObservatoryPosition | ( | uInt | which | ) | const

get the position of the specified telescope (observatory).

## getObservers()

vector< String > casacore::MSMetaData::getObservers | ( |  | ) | const

get the contents of the OBSERVER column from the OBSERVATIONS table

## getPhaseDirs()

vector< MDirection > casacore::MSMetaData::getPhaseDirs | ( | const MEpoch & | ep = MEpoch(Quantity(0.0, Unit("s"))) | ) | const

get the phase directions from the FIELD subtable.

The ep parameter specifies for which epoch to return the directions of any ephemeris objects in the data set. It is ignored for non-ephemeris objects.

## getPointingDirection()

std::pair< MDirection, MDirection > casacore::MSMetaData::getPointingDirection | ( | Int & | ant1,
|  | Int & | ant2,
|  | Double & | time,
|  | rownr_t | row,
|  | Bool | interpolate = false,
|  | Int | initialguess = 0 ) const

get the pointing directions associated with antenna1 and antenna2 for the specified row of the main MS table

References casacore::time().

## getPolarizationIDs()

std::set< uInt > casacore::MSMetaData::getPolarizationIDs | ( | uInt | obsID,
|  | Int | arrayID,
|  | Int | scan,
|  | uInt | spwid ) const

get polarization IDs for the specified scan and spwid

## getProjects()

vector< String > casacore::MSMetaData::getProjects | ( |  | ) | const

get the contents of the PROJECT column from the OBSERVATIONS table

## getProperMotions()

vector< std::pair< Quantity, Quantity > > casacore::MSMetaData::getProperMotions | ( |  | ) | const

SOURCE.PROPER_MOTION, first value in pair is longitudinal proper motion, second is latiduninal.

## getReferenceDirection()

MDirection casacore::MSMetaData::getReferenceDirection | ( | const uInt | fieldID,
|  | const MEpoch & | ep = MEpoch(Quantity(0.0, Unit("s"))) ) const

Get the reference direction for a given field ID and epoch interpolate polynomial if it is the field ID is such or use ephemerides table if that is attached to that field ID.

## getRefFreqs()

vector< MFrequency > casacore::MSMetaData::getRefFreqs | ( |  | ) | const

## getRestFrequencies()

std::map< SourceKey, std::shared_ptr< vector< MFrequency > > > casacore::MSMetaData::getRestFrequencies | ( |  | ) | const

get rest frequencies from the SOURCE table

## getScanKeys() [1/2]

std::set< ScanKey > casacore::MSMetaData::getScanKeys | ( |  | ) | const

get all ScanKeys in the dataset

## getScanKeys() [2/2]

std::set< ScanKey > casacore::MSMetaData::getScanKeys | ( | const ArrayKey & | arrayKey | ) | const

get all ScanKeys in the dataset that have the specified arrayKey.

If negative values for either the obsID and/or arrayID portions of the ArrayKey indicate that all obsIDs and/or arrayIDs should be used.

## getScanNumbers()

std::set< Int > casacore::MSMetaData::getScanNumbers | ( | Int | obsID,
|  | Int | arrayID ) const

get unique scan numbers

## getScansForField()

std::set< Int > casacore::MSMetaData::getScansForField | ( | const String & | field,
|  | Int | obsID,
|  | Int | arrayID ) const

get the scan numbers associated with the specified field.

Subclasses should not implement or override.

## getScansForFieldID()

std::set< Int > casacore::MSMetaData::getScansForFieldID | ( | Int | fieldID,
|  | Int | obsID,
|  | Int | arrayID ) const

get the scan numbers associated with the specified field ID.

## getScansForIntent()

std::set< Int > casacore::MSMetaData::getScansForIntent | ( | const String & | intent,
|  | Int | obsID,
|  | Int | arrayID ) const

get the scans associated with the specified intent

## getScansForSpw()

std::set< Int > casacore::MSMetaData::getScansForSpw | ( | uInt | spw,
|  | Int | obsID,
|  | Int | arrayID ) const

get the set of scan numbers for the specified spectral window.

## getScansForState()

std::set< Int > casacore::MSMetaData::getScansForState | ( | Int | stateID,
|  | Int | obsID,
|  | Int | arrayID ) const

get a set of scan numbers for the specified stateID, obsID, and arrayID.

If obsID and/or arrayID is negative, all observation IDs and/or array IDs will be used.

## getScansForTimes()

std::set< Int > casacore::MSMetaData::getScansForTimes | ( | Double | center,
|  | Double | tol,
|  | Int | obsID,
|  | Int | arrayID ) const

Get the scan numbers which fail into the specified time range (center-tol to center+tol), inclusive.

A negative value of obsID and/or arrayID indicates that all observation IDs and/or all arrayIDs should be used.

## getScanToFirstExposureTimeMap()

std::map< ScanKey, FirstExposureTimeMap > casacore::MSMetaData::getScanToFirstExposureTimeMap | ( | Bool | showProgress | ) | const

get map of scans to first exposure times

## getScanToSpwsMap()

std::map< ScanKey, std::set< uInt > > casacore::MSMetaData::getScanToSpwsMap | ( |  | ) | const

get the complete mapping of scans to spws

## getScanToStatesMap()

std::map< ScanKey, std::set< Int > > casacore::MSMetaData::getScanToStatesMap | ( |  | ) | const

get the mapping of scans to states

## getScanToTimeRangeMap()

std::shared_ptr< const std::map< ScanKey, std::pair< Double, Double > > > casacore::MSMetaData::getScanToTimeRangeMap | ( |  | ) | const

get the map of scans to time ranges.

## getSchedules()

vector< vector< String > > casacore::MSMetaData::getSchedules | ( |  | ) | const

get the contents of the SCHEDULE column from the OBSERVATIONS table Note that the embedded vectors may have different lengths

## getSourceDirections()

vector< MDirection > casacore::MSMetaData::getSourceDirections | ( |  | ) | const

SOURCE.DIRECTION.

## getSourceNames()

vector< String > casacore::MSMetaData::getSourceNames | ( |  | ) | const

SOURCE.NAME.

## getSourceTableSourceIDs()

vector< Int > casacore::MSMetaData::getSourceTableSourceIDs | ( |  | ) | const

Get the SOURCE.SOURCE_ID column.

This is a very unfortunate column name, because generally an "ID" column of the table with the same name refers to the row number in that table. But not in this case.

## getSourceTimes()

std::shared_ptr< const Quantum< Vector< Double > > > casacore::MSMetaData::getSourceTimes | ( |  | ) | const

SOURCE.TIME.

## getSpwIDPolIDToDataDescIDMap()

std::map< std::pair< uInt, uInt >, uInt > casacore::MSMetaData::getSpwIDPolIDToDataDescIDMap | ( |  | ) | const

The first value of the pair is spw, the second is polarization ID.

## getSpwIDs()

std::set< uInt > casacore::MSMetaData::getSpwIDs | ( |  | ) | const

get all the spws associated with the data description IDs listed in the main table.

This will not correspond to a list of the row numbers in the SPECTRAL_WINDOW table if there are data description IDs that are not in the main table.

## getSpwNames()

vector< String > casacore::MSMetaData::getSpwNames | ( |  | ) | const

get a map of the spwIDs to spw names from the spw table

## getSpwReceiverBands()

vector< int > casacore::MSMetaData::getSpwReceiverBands | ( |  | ) | const

ALMA specific CAS-13973 get receiver bands for each spw values of -1 indicate no info found for those spws.

## getSpwsForField() [1/2]

std::set< uInt > casacore::MSMetaData::getSpwsForField | ( | const Int | fieldID | ) | const

get a set of spectral windows corresponding to the specified fieldID

## getSpwsForField() [2/2]

std::set< uInt > casacore::MSMetaData::getSpwsForField | ( | const String & | fieldName | ) |

get a set of spectral windows corresponding to the specified field name

## getSpwsForIntent()

virtual std::set< uInt > casacore::MSMetaData::getSpwsForIntent | ( | const String & | intent | ) |

virtual

get a set of spectral windows for which the specified intent applies.

## getSpwsForScan()

std::set< uInt > casacore::MSMetaData::getSpwsForScan | ( | const ScanKey & | scan | ) | const

get the set of spectral windows for the specified scan.

## getSpwsForSubScan()

std::set< uInt > casacore::MSMetaData::getSpwsForSubScan | ( | const SubScanKey & | subScan | ) | const

get the set of spectral windows for the specified subscan.

## getSpwSubwindows()

vector< int > casacore::MSMetaData::getSpwSubwindows | ( |  | ) | const

ALMA specific CAS-13973 get subwindows for each spw values of -1 indicate no info found for those spws.

The SPW subwindow name is established by the ALMA Observing Tool and is recorded in each project's scheduling blocks. Here is an example for one spw whose subwindow name is "SW-1", as indicated by the name field. Currently, these values can range up to "SW-4", as a maximumn of 4 spws per baseband are currently offered on the ALMA correlators.

<sbl:ACASpectralWindow sideBand="LSB" windowFunction="HANNING" polnProducts="XX,YY" synthProf="ACA_CDP"> <sbl:centerFrequency unit="GHz">3.0</sbl:centerFrequency> <sbl:spectralAveragingFactor>1</sbl:spectralAveragingFactor> <sbl:name>SW-1</sbl:name> <sbl:effectiveBandwidth unit="GHz">2.0</sbl:effectiveBandwidth> <sbl:effectiveNumberOfChannels>128</sbl:effectiveNumberOfChannels> <sbl:associatedSpectralWindowNumberInPair>0</sbl:associatedSpectralWindowNumberInPair> <sbl:useThisSpectralWindow>true</sbl:useThisSpectralWindow> <sbl:representativeWindow>false</sbl:representativeWindow> <sbl:frqChProfReproduction>true</sbl:frqChProfReproduction> <sbl:ChannelAverageRegion> <sbl:startChannel>6</sbl:startChannel> <sbl:numberChannels>115</sbl:numberChannels> </sbl:ChannelAverageRegion> </sbl:ACASpectralWindow>

## getSpwToDataDescriptionIDMap()

std::vector< std::set< uInt > > casacore::MSMetaData::getSpwToDataDescriptionIDMap | ( |  | ) | const

get a mapping of spectral window ID to data descrption IDs

## getSpwToScansMap()

std::vector< std::set< ScanKey > > casacore::MSMetaData::getSpwToScansMap | ( |  | ) | const

get the complete mapping of spws to scans

## getSpwToTimesForScan()

std::map< uInt, std::set< Double > > casacore::MSMetaData::getSpwToTimesForScan | ( | const ScanKey & | scan | ) | const

## getSQLDSpw()

std::set< uInt > casacore::MSMetaData::getSQLDSpw | ( |  | ) |

ALMA-specific.

Get the square law detector (total power) spectral windows.

## getStatesForScan()

std::set< Int > casacore::MSMetaData::getStatesForScan | ( | Int | obsID,
|  | Int | arrayID,
|  | Int | scan ) const

get the stateIDs associated with the specified scan.

If obsID and/or arrayID is negative, all observation IDs and/or array IDs will be used.

## getSubScanKeys()

std::set< SubScanKey > casacore::MSMetaData::getSubScanKeys | ( | const ArrayKey & | arrayKey | ) | const

get all sub scan keys for the specified array key.

## getSubScanProperties() [1/2]

std::shared_ptr< const std::map< SubScanKey, SubScanProperties > > casacore::MSMetaData::getSubScanProperties | ( | Bool | showProgress = False | ) | const

References casacore::False.

## getSubScanProperties() [2/2]

SubScanProperties casacore::MSMetaData::getSubScanProperties | ( | const SubScanKey & | subScan,
|  | Bool | showProgress = False ) const

get the sub scan properties for the specified sub scan.

References casacore::False.

## getSubScanToIntentsMap()

std::shared_ptr< const std::map< SubScanKey, std::set< String > > > casacore::MSMetaData::getSubScanToIntentsMap | ( |  | ) | const

## getSummary()

Record casacore::MSMetaData::getSummary | ( |  | ) | const

get a data structure, consumable by users, representing a summary of the dataset

References casacore::Record().

## getTDMSpw()

std::set< uInt > casacore::MSMetaData::getTDMSpw | ( |  | ) |

ALMA-specific.

get set of spectral windows used for TDM. These are windows that have 64, 128, or 256 channels

## getTimeRange()

std::pair< Double, Double > casacore::MSMetaData::getTimeRange | ( | Bool | showProgress = False | ) | const

get the time range for the entire dataset.

min(TIME(x) - 0.5*INTERVAL(x)) to max(TIME(x) + 0.5*INTERVAL(x))

References casacore::False.

## getTimeRangeForScan()

std::pair< Double, Double > casacore::MSMetaData::getTimeRangeForScan | ( | const ScanKey & | scanKey | ) | const

get the time range for the specified scan.

The pair will contain the start and stop time of the scan, determined from min(TIME(x)-0.5*INTERVAL(x)) and max(TIME(x)-0.5*INTERVAL(x))

References casacore::scanKey().

## getTimeRangesOfObservations()

vector< std::pair< MEpoch, MEpoch > > casacore::MSMetaData::getTimeRangesOfObservations | ( |  | ) | const

get the time ranges from the OBSERVATION table

## getTimesForField()

std::set< Double > casacore::MSMetaData::getTimesForField | ( | Int | fieldID | ) |

get the times for which the specified field was observed

## getTimesForIntent()

std::set< Double > casacore::MSMetaData::getTimesForIntent | ( | const String & | intent | ) | const

get the time stamps associated with the specified intent

## getTimesForScan()

std::set< Double > casacore::MSMetaData::getTimesForScan | ( | const ScanKey & | scan | ) | const

get the times for the specified scan.

The return values come from the TIME column.

## getTimesForScans()

std::set< Double > casacore::MSMetaData::getTimesForScans | ( | std::set< ScanKey > | scans | ) | const

Get the times for the specified scans.

## getTimesForSpws()

std::vector< std::set< Double > > casacore::MSMetaData::getTimesForSpws | ( | Bool | showProgress = True | ) | const

get a map of spectral windows to unique timestamps.

References casacore::True.

## getTransitions()

std::map< SourceKey, std::shared_ptr< vector< String > > > casacore::MSMetaData::getTransitions | ( |  | ) | const

get the transitions from the SOURCE table.

If there are no transitions for a particular key, the shared ptr contains the null ptr.

## getUniqueAntennaIDs()

const std::set< Int > & casacore::MSMetaData::getUniqueAntennaIDs | ( |  | ) | const

get the unique antennas (the union of the ANTENNA_1 and ANTENNA_2 columns) from the main table

## getUniqueBaselines()

Matrix< Bool > casacore::MSMetaData::getUniqueBaselines | ( |  | ) |

std::map<Double, Double> getExposuresForTimes() const;

get the unique baselines in the MS. These are not necessarily every combination of the n(n-1)/2 possible antenna pairs, but rather the number of unique baselines represented in the main MS table, which in theory can be less than n(n-1)/2 (for example if samples for certain antenna pairs are not recorded. The returned Matrix is nAnts x nAnts in size. Pairs that are true represent baselines represented in the main MS table.

## getUniqueDataDescIDs()

std::set< uInt > casacore::MSMetaData::getUniqueDataDescIDs | ( |  | ) | const

get unique data description IDs that exist in the main table

## getUniqueFiedIDs()

std::set< Int > casacore::MSMetaData::getUniqueFiedIDs | ( |  | ) | const

inline

DEPRECATED because of spelling error.

Use getUniqueFieldIDs() instead.

Definition at line 634 of file MSMetaData.h.

References getUniqueFieldIDs().

## getUniqueFieldIDs()

std::set< Int > casacore::MSMetaData::getUniqueFieldIDs | ( |  | ) | const

get unique field IDs that exist in the main table.

Referenced by getUniqueFiedIDs().

## getUniqueSpwIDs()

std::set< uInt > casacore::MSMetaData::getUniqueSpwIDs | ( |  | ) | const

get the unique spectral window IDs represented by the data description IDs that appear in the main table

## getWVRSpw()

std::set< uInt > casacore::MSMetaData::getWVRSpw | ( |  | ) | const

ALMA-specific.

Get the spectral window set used for WVR measurements. These have 4 channels each.

## hasBBCNo()

Bool casacore::MSMetaData::hasBBCNo | ( |  | ) | const

## nAntennas()

uInt casacore::MSMetaData::nAntennas | ( |  | ) | const

get the number of antennas in the ANTENNA table

## nArrays()

uInt casacore::MSMetaData::nArrays | ( |  | ) |

get the number of arrays (from the ARRAY table) in the dataset

## nBaselines()

virtual uInt casacore::MSMetaData::nBaselines | ( | Bool | includeAutoCorrelation = False | ) |

virtual

get the number of unique baselines represented in the main MS table which in theory can be less than n*(n-1)/2.

If includeAutoCorrelation is True, include autocorrelation "baselines" in the enumeration.

References casacore::False.

## nChans()

vector< uInt > casacore::MSMetaData::nChans | ( |  | ) | const

## nDataDescriptions()

uInt casacore::MSMetaData::nDataDescriptions | ( |  | ) | const

get the number of data description IDs (from the DATA_DESCRIPTION table)

## nFields()

uInt casacore::MSMetaData::nFields | ( |  | ) | const

get the number of fields.

## nObservations()

uInt casacore::MSMetaData::nObservations | ( |  | ) | const

get the number of observations (from the OBSERVATIONS table) in the dataset

## nPol()

uInt casacore::MSMetaData::nPol | ( |  | ) |

## nRows() [1/4]

rownr_t casacore::MSMetaData::nRows | ( |  | ) | const

get the number of visibilities

## nRows() [2/4]

rownr_t casacore::MSMetaData::nRows | ( | CorrelationType | cType | ) |

## nRows() [3/4]

rownr_t casacore::MSMetaData::nRows | ( | CorrelationType | cType,
|  | Int | arrayID,
|  | Int | observationID,
|  | Int | scanNumber,
|  | Int | fieldID ) const

## nRows() [4/4]

rownr_t casacore::MSMetaData::nRows | ( | CorrelationType | cType,
|  | uInt | fieldID ) const

## nScans()

uInt casacore::MSMetaData::nScans | ( |  | ) |

get the number of scans in the dataset

## nSpw()

uInt casacore::MSMetaData::nSpw | ( | Bool | includewvr | ) | const

get number of spectral windows

## nStates()

uInt casacore::MSMetaData::nStates | ( |  | ) | const

number of unique states (number of rows from the STATE table)

## nUnflaggedRows() [1/4]

Double casacore::MSMetaData::nUnflaggedRows | ( |  | ) | const

get the number of unflagged rows

## nUnflaggedRows() [2/4]

Double casacore::MSMetaData::nUnflaggedRows | ( | CorrelationType | cType | ) | const

## nUnflaggedRows() [3/4]

Double casacore::MSMetaData::nUnflaggedRows | ( | CorrelationType | cType,
|  | Int | arrayID,
|  | uInt | observationID,
|  | Int | scanNumber,
|  | uInt | fieldID ) const

## nUnflaggedRows() [4/4]

Double casacore::MSMetaData::nUnflaggedRows | ( | CorrelationType | cType,
|  | Int | fieldID ) const

## nUniqueSourceIDsFromSourceTable()

uInt casacore::MSMetaData::nUniqueSourceIDsFromSourceTable | ( |  | ) | const

Number of unique values from SOURCE.SOURCE_ID.

## operator=()

MSMetaData casacore::MSMetaData::operator= | ( | const MSMetaData & |  | ) |

private

References MSMetaData().

## phaseDirFromFieldIDAndTime()

MDirection casacore::MSMetaData::phaseDirFromFieldIDAndTime | ( | const uInt | fieldID,
|  | const MEpoch & | ep = MEpoch(Quantity(0.0, Unit("s"))) ) const

Get the phase direction for a given field id and epoch interpolate polynomial if it is the field id is such or use ephemerides table if that is attached to that field id.

## setForceSubScanPropsToCache()

void casacore::MSMetaData::setForceSubScanPropsToCache | ( | Bool | b | ) |

inline

If True, force the subscan properties structure to be cached regardless of the stipulations on the maximum cache.

Normally, the subscan properties structure is small compared to the size of any one column that is necessary to create it, and since creating this structure can be very expensive, especially for large datasets, it is often a good idea to cache it if it will be accessed many times.

Definition at line 516 of file MSMetaData.h.

References _forceSubScanPropsToCache.

## setShowProgress()

void casacore::MSMetaData::setShowProgress | ( | Bool | b | ) |

inline

Definition at line 661 of file MSMetaData.h.

References _showProgress.

## Member Data Documentation

## _antennaDiameters

QVD casacore::MSMetaData::_antennaDiameters

mutable private

Definition at line 808 of file MSMetaData.h.

## _antennaNames

vector<String> casacore::MSMetaData::_antennaNames

private

Definition at line 793 of file MSMetaData.h.

## _antennaNameToIDMap

std::map<String, std::set<uInt> > casacore::MSMetaData::_antennaNameToIDMap

mutable private

Definition at line 773 of file MSMetaData.h.

## _antennaOffsets

vector<QVD > casacore::MSMetaData::_antennaOffsets

mutable private

Definition at line 807 of file MSMetaData.h.

## _antennaPositions

vector<MPosition> casacore::MSMetaData::_antennaPositions

private

Definition at line 806 of file MSMetaData.h.

## _arrayKeys

std::set<ArrayKey> casacore::MSMetaData::_arrayKeys

mutable private

Definition at line 821 of file MSMetaData.h.

## _arrayToSubScans

std::map<ArrayKey, std::set<SubScanKey> > casacore::MSMetaData::_arrayToSubScans

mutable private

Definition at line 825 of file MSMetaData.h.

## _avgSpw

std::set<uInt> casacore::MSMetaData::_avgSpw

mutable private

Definition at line 783 of file MSMetaData.h.

## _cacheMB

Float casacore::MSMetaData::_cacheMB

mutable private

Definition at line 761 of file MSMetaData.h.

Referenced by getCache().

## _corrProds

vector<Array<Int> > casacore::MSMetaData::_corrProds

mutable private

Definition at line 797 of file MSMetaData.h.

## _corrTypes

vector<vector<Int> > casacore::MSMetaData::_corrTypes

mutable private

Definition at line 796 of file MSMetaData.h.

## _dataDescIDToPolIDMap

vector<uInt> casacore::MSMetaData::_dataDescIDToPolIDMap

private

Definition at line 767 of file MSMetaData.h.

## _dataDescIDToSpwMap

vector<uInt> casacore::MSMetaData::_dataDescIDToSpwMap

mutable private

Definition at line 767 of file MSMetaData.h.

## _ddidToScansMap

vector<std::set<ScanKey> > casacore::MSMetaData::_ddidToScansMap

private

Definition at line 791 of file MSMetaData.h.

## _ephemFields

std::shared_ptr<std::set<Int> > casacore::MSMetaData::_ephemFields

mutable private

Definition at line 834 of file MSMetaData.h.

## _exposureTime

Quantity casacore::MSMetaData::_exposureTime

private

Definition at line 810 of file MSMetaData.h.

## _fdmSpw

std::set<uInt> casacore::MSMetaData::_fdmSpw

private

Definition at line 783 of file MSMetaData.h.

## _field_sourceIDs

vector<Int> casacore::MSMetaData::_field_sourceIDs

private

Definition at line 819 of file MSMetaData.h.

## _fieldCodes

vector<String> casacore::MSMetaData::_fieldCodes

private

Definition at line 794 of file MSMetaData.h.

## _fieldNames

vector<String> casacore::MSMetaData::_fieldNames

mutable private

Definition at line 793 of file MSMetaData.h.

## _fieldToIntentsMap

vector<std::set<String> > casacore::MSMetaData::_fieldToIntentsMap

private

Definition at line 788 of file MSMetaData.h.

## _fieldToNACRowsMap

std::shared_ptr<std::map<Int, rownr_t> > casacore::MSMetaData::_fieldToNACRowsMap

mutable private

Definition at line 785 of file MSMetaData.h.

## _fieldToNXCRowsMap

std::shared_ptr<std::map<Int, rownr_t> > casacore::MSMetaData::_fieldToNXCRowsMap

private

Definition at line 785 of file MSMetaData.h.

## _fieldToScansMap

vector<std::set<ScanKey> > casacore::MSMetaData::_fieldToScansMap

private

Definition at line 791 of file MSMetaData.h.

## _fieldToSpwMap

std::map<Int, std::set<uInt> > casacore::MSMetaData::_fieldToSpwMap

mutable private

Definition at line 768 of file MSMetaData.h.

## _fieldToStatesMap

std::map<Int, std::set<Int> > casacore::MSMetaData::_fieldToStatesMap

mutable private

Definition at line 770 of file MSMetaData.h.

## _fieldToTimesMap

std::shared_ptr<std::map<Int, std::set<Double> > > casacore::MSMetaData::_fieldToTimesMap

private

Definition at line 803 of file MSMetaData.h.

## _firstExposureTimeMap

vector<std::map<Int, Quantity> > casacore::MSMetaData::_firstExposureTimeMap

private

Definition at line 818 of file MSMetaData.h.

## _forceSubScanPropsToCache

Bool casacore::MSMetaData::_forceSubScanPropsToCache

private

Definition at line 817 of file MSMetaData.h.

Referenced by setForceSubScanPropsToCache().

## _intentToFieldIDMap

std::map<String, std::set<Int> > casacore::MSMetaData::_intentToFieldIDMap

mutable private

Definition at line 777 of file MSMetaData.h.

## _intentToScansMap

std::map<String, std::set<ScanKey> > casacore::MSMetaData::_intentToScansMap

mutable private

Definition at line 778 of file MSMetaData.h.

## _intentToSpwsMap

std::map<String, std::set<uInt> > casacore::MSMetaData::_intentToSpwsMap

private

Definition at line 800 of file MSMetaData.h.

## _intentToSubScansMap

std::map<String, std::set<SubScanKey> > casacore::MSMetaData::_intentToSubScansMap

mutable private

Definition at line 779 of file MSMetaData.h.

## _intentToTimesMap

std::map<String, std::set<Double> > casacore::MSMetaData::_intentToTimesMap

mutable private

Definition at line 801 of file MSMetaData.h.

## _maxCacheMB

const Float casacore::MSMetaData::_maxCacheMB

private

Definition at line 762 of file MSMetaData.h.

Referenced by getMaxCacheSizeMB().

## _ms

const MeasurementSet* casacore::MSMetaData::_ms

private

The general pattern is that a mutable gets set only once, on demand, when its setter is called for the first time.

If this pattern is broken, defective behavior will occur.

Definition at line 759 of file MSMetaData.h.

Referenced by getMS().

## _nACRows

rownr_t casacore::MSMetaData::_nACRows

mutable private

Definition at line 763 of file MSMetaData.h.

## _nAntennas

uInt casacore::MSMetaData::_nAntennas

private

Definition at line 764 of file MSMetaData.h.

## _nArrays

uInt casacore::MSMetaData::_nArrays

private

Definition at line 765 of file MSMetaData.h.

## _nDataDescIDs

uInt casacore::MSMetaData::_nDataDescIDs

private

Definition at line 765 of file MSMetaData.h.

## _nFields

uInt casacore::MSMetaData::_nFields

private

Definition at line 764 of file MSMetaData.h.

## _nObservations

uInt casacore::MSMetaData::_nObservations

private

Definition at line 765 of file MSMetaData.h.

## _nPol

uInt casacore::MSMetaData::_nPol

private

Definition at line 765 of file MSMetaData.h.

## _nrows

uInt casacore::MSMetaData::_nrows

private

Definition at line 765 of file MSMetaData.h.

## _nScans

uInt casacore::MSMetaData::_nScans

private

Definition at line 765 of file MSMetaData.h.

## _nSpw

uInt casacore::MSMetaData::_nSpw

private

Definition at line 764 of file MSMetaData.h.

## _nStates

uInt casacore::MSMetaData::_nStates

mutable private

Definition at line 764 of file MSMetaData.h.

## _numCorrs

vector<Int> casacore::MSMetaData::_numCorrs

mutable private

Definition at line 819 of file MSMetaData.h.

## _nUnflaggedACRows

Double casacore::MSMetaData::_nUnflaggedACRows

mutable private

Definition at line 811 of file MSMetaData.h.

## _nUnflaggedXCRows

Double casacore::MSMetaData::_nUnflaggedXCRows

private

Definition at line 811 of file MSMetaData.h.

## _nXCRows

rownr_t casacore::MSMetaData::_nXCRows

private

Definition at line 763 of file MSMetaData.h.

## _observatoryNames

vector<String> casacore::MSMetaData::_observatoryNames

private

Definition at line 793 of file MSMetaData.h.

## _observatoryPositions

vector<MPosition> casacore::MSMetaData::_observatoryPositions

mutable private

Definition at line 806 of file MSMetaData.h.

## _observers

vector<String> casacore::MSMetaData::_observers

private

Definition at line 794 of file MSMetaData.h.

## _obsToArraysMap

vector<std::set<Int> > casacore::MSMetaData::_obsToArraysMap

private

Definition at line 790 of file MSMetaData.h.

## _phaseDirs

vector<MDirection> casacore::MSMetaData::_phaseDirs

mutable private

Definition at line 829 of file MSMetaData.h.

## _projects

vector<String> casacore::MSMetaData::_projects

private

Definition at line 794 of file MSMetaData.h.

## _properMotions

vector<std::pair<Quantity, Quantity> > casacore::MSMetaData::_properMotions

mutable private

Definition at line 831 of file MSMetaData.h.

## _scanKeys

std::set<ScanKey> casacore::MSMetaData::_scanKeys

mutable private

Definition at line 822 of file MSMetaData.h.

## _scanProperties

std::shared_ptr<const std::map<ScanKey, ScanProperties> > casacore::MSMetaData::_scanProperties

mutable private

Definition at line 774 of file MSMetaData.h.

## _scanSpwToPolIDMap

std::map<std::pair<ScanKey, uInt>, std::set<uInt> > casacore::MSMetaData::_scanSpwToPolIDMap

mutable private

Definition at line 780 of file MSMetaData.h.

## _scanToAntennasMap

std::map<ScanKey, std::set<Int> > casacore::MSMetaData::_scanToAntennasMap

private

Definition at line 769 of file MSMetaData.h.

## _scanToDDIDsMap

std::map<ScanKey, std::set<uInt> > casacore::MSMetaData::_scanToDDIDsMap

private

Definition at line 766 of file MSMetaData.h.

## _scanToFieldsMap

std::map<ScanKey, std::set<Int> > casacore::MSMetaData::_scanToFieldsMap

private

Definition at line 769 of file MSMetaData.h.

## _scanToIntentsMap

std::map<ScanKey, std::set<String> > casacore::MSMetaData::_scanToIntentsMap

mutable private

Definition at line 786 of file MSMetaData.h.

## _scanToSpwsMap

std::map<ScanKey, std::set<uInt> > casacore::MSMetaData::_scanToSpwsMap

mutable private

Definition at line 766 of file MSMetaData.h.

## _scanToStatesMap

std::map<ScanKey, std::set<Int> > casacore::MSMetaData::_scanToStatesMap

mutable private

Definition at line 769 of file MSMetaData.h.

## _scanToSubScans

std::map<ScanKey, std::set<SubScanKey> > casacore::MSMetaData::_scanToSubScans

mutable private

Definition at line 824 of file MSMetaData.h.

## _scanToTimesMap

std::shared_ptr<std::map<ScanKey, std::set<Double> > > casacore::MSMetaData::_scanToTimesMap

mutable private

Definition at line 799 of file MSMetaData.h.

## _schedules

vector<vector<String> > casacore::MSMetaData::_schedules

mutable private

Definition at line 795 of file MSMetaData.h.

## _showProgress

Bool casacore::MSMetaData::_showProgress

private

Definition at line 760 of file MSMetaData.h.

Referenced by setShowProgress().

## _source_sourceIDs

vector<Int> casacore::MSMetaData::_source_sourceIDs

private

Definition at line 819 of file MSMetaData.h.

## _sourceDirs

vector<MDirection> casacore::MSMetaData::_sourceDirs

private

Definition at line 829 of file MSMetaData.h.

## _sourceInfo

std::map<SourceKey, SourceProperties> casacore::MSMetaData::_sourceInfo

mutable private

Definition at line 833 of file MSMetaData.h.

## _sourceNames

vector<String> casacore::MSMetaData::_sourceNames

private

Definition at line 794 of file MSMetaData.h.

## _sourceTimes

std::shared_ptr<const Quantum<Vector<Double> > > casacore::MSMetaData::_sourceTimes

mutable private

Definition at line 835 of file MSMetaData.h.

## _sourceToFieldsMap

std::map<Int, std::set<Int> > casacore::MSMetaData::_sourceToFieldsMap

private

Definition at line 770 of file MSMetaData.h.

## _spwIDToPolIDMap

std::vector<std::vector<uInt> > casacore::MSMetaData::_spwIDToPolIDMap

mutable private

Definition at line 772 of file MSMetaData.h.

## _spwInfo

vector<SpwProperties> casacore::MSMetaData::_spwInfo

mutable private

Definition at line 789 of file MSMetaData.h.

## _spwInfoStored

Bool casacore::MSMetaData::_spwInfoStored

mutable private

Definition at line 817 of file MSMetaData.h.

## _spwPolIDToDataDescIDMap

std::map<std::pair<uInt, uInt>, uInt> casacore::MSMetaData::_spwPolIDToDataDescIDMap

mutable private

Definition at line 771 of file MSMetaData.h.

## _spwToFieldIDsMap

vector<std::set<Int> > casacore::MSMetaData::_spwToFieldIDsMap

mutable private

Definition at line 790 of file MSMetaData.h.

## _spwToIntentsMap

vector<std::set<String> > casacore::MSMetaData::_spwToIntentsMap

private

Definition at line 788 of file MSMetaData.h.

## _spwToScansMap

vector<std::set<ScanKey> > casacore::MSMetaData::_spwToScansMap

mutable private

Definition at line 791 of file MSMetaData.h.

## _sqldSpw

std::set<uInt> casacore::MSMetaData::_sqldSpw

private

Definition at line 783 of file MSMetaData.h.

## _stateToFieldsMap

std::map<Int, std::set<Int> > casacore::MSMetaData::_stateToFieldsMap

private

Definition at line 770 of file MSMetaData.h.

## _stateToIntentsMap

vector<std::set<String> > casacore::MSMetaData::_stateToIntentsMap

mutable private

Definition at line 788 of file MSMetaData.h.

## _stationNames

vector<String> casacore::MSMetaData::_stationNames

private

Definition at line 794 of file MSMetaData.h.

## _subScanProperties

std::shared_ptr<const std::map<SubScanKey, SubScanProperties> > casacore::MSMetaData::_subScanProperties

mutable private

Definition at line 775 of file MSMetaData.h.

## _subscans

std::set<SubScanKey> casacore::MSMetaData::_subscans

mutable private

Definition at line 823 of file MSMetaData.h.

## _subScanToIntentsMap

std::shared_ptr<const std::map<SubScanKey, std::set<String> > > casacore::MSMetaData::_subScanToIntentsMap

mutable private

Definition at line 787 of file MSMetaData.h.

## _subScanToNACRowsMap

std::shared_ptr<std::map<SubScanKey, rownr_t> > casacore::MSMetaData::_subScanToNACRowsMap

mutable private

Definition at line 784 of file MSMetaData.h.

## _subScanToNXCRowsMap

std::shared_ptr<std::map<SubScanKey, rownr_t> > casacore::MSMetaData::_subScanToNXCRowsMap

private

Definition at line 784 of file MSMetaData.h.

## _taqlTableName

const String casacore::MSMetaData::_taqlTableName

private

Definition at line 814 of file MSMetaData.h.

## _taqlTempTable

const vector<const Table*> casacore::MSMetaData::_taqlTempTable

private

Definition at line 815 of file MSMetaData.h.

## _tdmSpw

std::set<uInt> casacore::MSMetaData::_tdmSpw

private

Definition at line 783 of file MSMetaData.h.

## _timeRangesForObs

vector<std::pair<MEpoch, MEpoch> > casacore::MSMetaData::_timeRangesForObs

mutable private

Definition at line 827 of file MSMetaData.h.

## _timeToFieldsMap

std::shared_ptr<std::map<Double, std::set<Int> > > casacore::MSMetaData::_timeToFieldsMap

private

Definition at line 804 of file MSMetaData.h.

## _unflaggedFieldNACRows

std::shared_ptr<vector<Double> > casacore::MSMetaData::_unflaggedFieldNACRows

mutable private

Definition at line 812 of file MSMetaData.h.

## _unflaggedFieldNXCRows

std::shared_ptr<vector<Double> > casacore::MSMetaData::_unflaggedFieldNXCRows

private

Definition at line 812 of file MSMetaData.h.

## _unflaggedSubScanNACRows

std::shared_ptr<std::map<SubScanKey, Double> > casacore::MSMetaData::_unflaggedSubScanNACRows

mutable private

Definition at line 813 of file MSMetaData.h.

## _unflaggedSubScanNXCRows

std::shared_ptr<std::map<SubScanKey, Double> > casacore::MSMetaData::_unflaggedSubScanNXCRows

private

Definition at line 813 of file MSMetaData.h.

## _uniqueAntennaIDs

std::set<Int> casacore::MSMetaData::_uniqueAntennaIDs

private

Definition at line 782 of file MSMetaData.h.

## _uniqueBaselines

Matrix<Bool> casacore::MSMetaData::_uniqueBaselines

private

Definition at line 809 of file MSMetaData.h.

## _uniqueDataDescIDs

std::set<uInt> casacore::MSMetaData::_uniqueDataDescIDs

private

Definition at line 783 of file MSMetaData.h.

## _uniqueFieldIDs

std::set<Int> casacore::MSMetaData::_uniqueFieldIDs

mutable private

Definition at line 782 of file MSMetaData.h.

## _uniqueIntents

std::set<String> casacore::MSMetaData::_uniqueIntents

mutable private

Definition at line 781 of file MSMetaData.h.

## _uniqueStateIDs

std::set<Int> casacore::MSMetaData::_uniqueStateIDs

private

Definition at line 782 of file MSMetaData.h.

## _wvrSpw

std::set<uInt> casacore::MSMetaData::_wvrSpw

private

Definition at line 783 of file MSMetaData.h.

The documentation for this class was generated from the following file:

- ms/MSOper/MSMetaData.h