casa
5.7.0-16
|
Class for baseline-based metadata objects, one type of component in SDM data objects. More...
#include <BaselineMetadata.h>
Public Member Functions | |
int | numValue () |
Total (cross+auto) number of metadata values. More... | |
virtual int | numAnt ()=0 |
Accessor to a generic number of antennas Specifities are defined in the derived classes. More... | |
virtual int | actualNumAnt ()=0 |
Accessor to an actual number of antennas Specifities are defined in the derived classes. More... | |
int | numBaseline () |
Accessor to the number of baselines. More... | |
int | numBaseband () |
Accessor to the number of basebands. More... | |
int | numPolProduct (int basebandNum) throw (Error) |
Accessor to the number of polarization products of a given baseband. More... | |
std::vector< int > | numPolProduct () |
Accessor to the number of polarization products. More... | |
int | numBin (int basebandNum) throw (Error) |
Accessor to the number of bins (steps or phases in scwitching cycles) for a given baseband. More... | |
std::vector< int > | numBin () |
Accessor to the number of bins (steps or phases in scwitching cycles) for each baseband. More... | |
int | correlationMode () |
Accessor to the correlation mode. More... | |
int | numAutoPolProduct (int basebandNum) throw (Error) |
Accessor to the (derived) number of polarization products for the zero baselines for a given baseband. More... | |
std::vector< int > | numAutoPolProduct () |
Accessor to the (derived) number of polarization products for the zero baselines for all the basebands. More... | |
virtual std::vector< int > | antennaIndexUsed (unsigned long int valLimit)=0 |
Method to get the list of the antenna indices restricted to those which are not flagged above a certain critical limit in all baseband. More... | |
int | baselineNum (int anti, int antj) throw (Error) |
Baseline number (one-based) given a pair of antenna indices. More... | |
int | at (int npp, int nbin, int nbb, int i, int j) |
Index in a container of baseline-based metadata given a node specified by a full set of indices of the parameter space. More... | |
std::vector< int > | at (int npp, int nbb, int i, int j) |
Set of indices, one per polarization product, in a container of baseline-based metadata given a set of nodes specified by a subset of indices of the parameter space. More... | |
std::vector< int > | at (int npp, int nbin, int nbb) |
Set of indices, one per non-zero basleine, in a container of baseline-based metadata given a set of nodes specified by a subset of indices of the parameter space. More... | |
std::vector< std::vector< int > > | at (int nbin, int nbb) |
Set of indices in a container of baseline-based metadata given a set of nodes node specified by a subset of indices of the parameter space. More... | |
std::vector< std::vector < std::vector< int > > > | at (bool cross, int i) |
Set of indices in a container of baseline-based metadata given a set of nodes node specified by a subset of indices of the parameter space. More... | |
Static Public Attributes | |
static int | FLAGLIMIT |
Protected Member Functions | |
BaselineMetadata () | |
Default constructor. More... | |
virtual | ~BaselineMetadata () |
Virtual destructor. More... | |
void | mkBaselineMetadata (std::vector< int > v_npp, std::vector< int > v_nbin, int nbb, int nant, int correlationMode) |
Method to instantiate the base of the hierarchy. More... | |
bool | wrongBasebandNum (int basebandNum) |
Utility to access the validity of an input basebandNum. More... | |
bool | notFor (bool interfero) |
Utility method to check that a query is relevant or not for interferometric data. More... | |
bool | wrongAntennaIndex (int antIndex) |
Utility method to check that the input value of antenna index in a query is valid or not. More... | |
bool | wrongBasebandIndex (int bbIndex) |
Utility method to check that the input baseband index value in a query is valid or not. More... | |
bool | wrongPolProductIndex (int ppIndex, int bbIndex, int antIndex_i, int antIndex_j) |
Utility method to check that the input set of index values in a query is valid or not. More... | |
virtual void | display ()=0 |
Common part shared by the derived classes for summary information Display, for each baseband sizes (i.e. More... | |
Protected Attributes | |
std::vector< int > | v_numPolProduct_ |
Number of cross polarization products for every baseband. More... | |
std::vector< int > | v_numBin_ |
Number of phases in SwitchCycles for every baseband. More... | |
int | numBaseband_ |
Number of basebands. More... | |
int | numAnt_ |
Number of antennas. More... | |
int | numBaseline_ |
Number of baselines. More... | |
int | autoSize_ |
Number of metadata values for all the zero baselines (second part in size formula) More... | |
int | crossSize_ |
Number of metadata values for all the non-zero baselines (first part in size formula) More... | |
int | correlationMode_ |
Correlation mode. More... | |
std::vector< int > | v_numAutoPolProduct_ |
Number of auto polarization products for every baseband. More... | |
Private Member Functions | |
void | sizes () |
Method to get the size (in number of typed values). More... | |
Private Attributes | |
int | numValPerBaseline_ |
Number of metadata values per non-zero baseline (first sum in size formula) More... | |
int | numValPerZeroBaseline_ |
Number of metadata values per zero baseline (second sum in size formula) More... | |
Class for baseline-based metadata objects, one type of component in SDM data objects.
There are three baseline-based metadata in these objects, the flags, the actual times (the mid-point) and the actual durations. Sharing the same type of tree structure they derive from this BaselineMetadata virtual class, the common base.
An example of how to Access to the baseline-based metadata is given in a test program which uses methods defined in this base but also other methods which are extensions defined in the BaselineFlagsMetada and the ActualTimeDurations classes.
Definition at line 14 of file BaselineMetadata.h.
|
protected |
Default constructor.
|
protectedvirtual |
Virtual destructor.
|
pure virtual |
Accessor to an actual number of antennas Specifities are defined in the derived classes.
|
pure virtual |
Method to get the list of the antenna indices restricted to those which are not flagged above a certain critical limit in all baseband.
valLimit | critical flagging limit |
int sdmbin::BaselineMetadata::at | ( | int | npp, |
int | nbin, | ||
int | nbb, | ||
int | i, | ||
int | j | ||
) |
Index in a container of baseline-based metadata given a node specified by a full set of indices of the parameter space.
npp | polarization product index |
nbin | bin index (always 0 when there is no switching mode used) |
nbb | baseband index |
i | antenna index i |
j | antenna index j (if i=j this means a zero-baseline) |
std::vector<int> sdmbin::BaselineMetadata::at | ( | int | npp, |
int | nbb, | ||
int | i, | ||
int | j | ||
) |
Set of indices, one per polarization product, in a container of baseline-based metadata given a set of nodes specified by a subset of indices of the parameter space.
npp | polarization product index |
nbb | baseband index |
i | antenna index i |
j | antenna index j (if i=j this means a zero-baseline) |
std::vector<int> sdmbin::BaselineMetadata::at | ( | int | npp, |
int | nbin, | ||
int | nbb | ||
) |
Set of indices, one per non-zero basleine, in a container of baseline-based metadata given a set of nodes specified by a subset of indices of the parameter space.
npp | polarization product index |
nbin | bin index (always 0 when there is no switching mode used) |
nbb | baseband index |
std::vector<std::vector<int> > sdmbin::BaselineMetadata::at | ( | int | nbin, |
int | nbb | ||
) |
Set of indices in a container of baseline-based metadata given a set of nodes node specified by a subset of indices of the parameter space.
nbin | bin index (always 0 when there is no switching mode used) |
nbb | baseband index |
std::vector<std::vector<std::vector<int> > > sdmbin::BaselineMetadata::at | ( | bool | cross, |
int | i | ||
) |
Set of indices in a container of baseline-based metadata given a set of nodes node specified by a subset of indices of the parameter space.
cross | true to select the indices for the non-zero baselines, else false for the zero baselines |
i | antenna index i to select all baselines involving this antenna of index i |
int sdmbin::BaselineMetadata::baselineNum | ( | int | anti, |
int | antj | ||
) | |||
throw | ( | Error | |
) |
Baseline number (one-based) given a pair of antenna indices.
anti | index (zero-based) for antenna i |
antj | index (zero-based) for antenna i |
Error | the indices anti and/or antj exceed the limit for the number of baselines. |
int sdmbin::BaselineMetadata::correlationMode | ( | ) |
Accessor to the correlation mode.
|
protectedpure virtual |
Common part shared by the derived classes for summary information Display, for each baseband sizes (i.e.
number of branches in the baseline-based metadata tree)
|
protected |
Method to instantiate the base of the hierarchy.
v_npp | Number of polarization product for every baseband |
v_nbin | Number of bins (phases in a switch cycle) for every baseband |
nbb | Number of baseband (should be the size of v_npp and v_nbin) |
nant | Number of antennas ( ) |
correlationMode | The correlation mode (must be 0 or 1 or 2). |
|
protected |
Utility method to check that a query is relevant or not for interferometric data.
interfero |
|
pure virtual |
Accessor to a generic number of antennas Specifities are defined in the derived classes.
int sdmbin::BaselineMetadata::numAutoPolProduct | ( | int | basebandNum | ) | |
throw | ( | Error | |||
) |
Accessor to the (derived) number of polarization products for the zero baselines for a given baseband.
basebandNum | The baseband number (one-based) |
Error | the method returns -1 in lax mode |
std::vector<int> sdmbin::BaselineMetadata::numAutoPolProduct | ( | ) |
Accessor to the (derived) number of polarization products for the zero baselines for all the basebands.
int sdmbin::BaselineMetadata::numBaseband | ( | ) |
Accessor to the number of basebands.
int sdmbin::BaselineMetadata::numBaseline | ( | ) |
Accessor to the number of baselines.
int sdmbin::BaselineMetadata::numBin | ( | int | basebandNum | ) | |
throw | ( | Error | |||
) |
Accessor to the number of bins (steps or phases in scwitching cycles) for a given baseband.
basebandNum | The basbabnd number (one-based) |
Error | the method returns -1 in lax mode |
std::vector<int> sdmbin::BaselineMetadata::numBin | ( | ) |
Accessor to the number of bins (steps or phases in scwitching cycles) for each baseband.
int sdmbin::BaselineMetadata::numPolProduct | ( | int | basebandNum | ) | |
throw | ( | Error | |||
) |
Accessor to the number of polarization products of a given baseband.
basebandNum | Baseband number (one-based) |
Error | the method returns -1 in lax mode |
std::vector<int> sdmbin::BaselineMetadata::numPolProduct | ( | ) |
Accessor to the number of polarization products.
The constraint is that all spectral windows in a baseband are associated with a common polarization identifier.
int sdmbin::BaselineMetadata::numValue | ( | ) |
Total (cross+auto) number of metadata values.
|
private |
Method to get the size (in number of typed values).
The size is determined from the following formula:
and the peculiar non-standard mode (correlationMode=0) by:
with in this specific case
In this abstract class must be considered as generic. Its actual value depends of the context in the derived classes.
|
protected |
Utility method to check that the input value of antenna index in a query is valid or not.
antIndex | The antenna index |
|
protected |
Utility method to check that the input baseband index value in a query is valid or not.
bbIndex | The baseband index |
|
protected |
Utility to access the validity of an input basebandNum.
basebandNum | Baseband number |
|
protected |
Utility method to check that the input set of index values in a query is valid or not.
ppIndex | The polarization product index |
bbIndex | The baseband index |
antIndex_i | The antenna index for antenna i |
antIndex_j | The antenna index for antenna j |
|
protected |
Number of metadata values for all the zero baselines (second part in size formula)
Definition at line 206 of file BaselineMetadata.h.
|
protected |
Correlation mode.
Definition at line 208 of file BaselineMetadata.h.
|
protected |
Number of metadata values for all the non-zero baselines (first part in size formula)
Definition at line 207 of file BaselineMetadata.h.
|
static |
Definition at line 181 of file BaselineMetadata.h.
|
protected |
Number of antennas.
Definition at line 203 of file BaselineMetadata.h.
|
protected |
Number of basebands.
Definition at line 202 of file BaselineMetadata.h.
|
protected |
Number of baselines.
Definition at line 204 of file BaselineMetadata.h.
|
private |
Number of metadata values per non-zero baseline (first sum in size formula)
Definition at line 256 of file BaselineMetadata.h.
|
private |
Number of metadata values per zero baseline (second sum in size formula)
Definition at line 257 of file BaselineMetadata.h.
|
protected |
Number of auto polarization products for every baseband.
Definition at line 209 of file BaselineMetadata.h.
|
protected |
Number of phases in SwitchCycles for every baseband.
Definition at line 201 of file BaselineMetadata.h.
|
protected |
Number of cross polarization products for every baseband.
Definition at line 200 of file BaselineMetadata.h.