casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes
sdmbin::BaselineMetadata Class Reference

Class for baseline-based metadata objects, one type of component in SDM data objects. More...

#include <BaselineMetadata.h>

List of all members.

Public Member Functions

int numValue ()
 Total (cross+auto) number of metadata values.
virtual int numAnt ()=0
 Accessor to a generic number of antennas $ N_{ant} $ Specifities are defined in the derived classes.
virtual int actualNumAnt ()=0
 Accessor to an actual number of antennas $ N'_{ant} $ Specifities are defined in the derived classes.
int numBaseline ()
 Accessor to the number of baselines.
int numBaseband ()
 Accessor to the number of basebands.
int numPolProduct (int basebandNum) throw (Error)
 Accessor to the number of polarization products of a given baseband.
vector< int > numPolProduct ()
 Accessor to the number of polarization products.
int numBin (int basebandNum) throw (Error)
 Accessor to the number of bins (steps or phases in scwitching cycles) for a given baseband.
vector< int > numBin ()
 Accessor to the number of bins (steps or phases in scwitching cycles) for each baseband.
int correlationMode ()
 Accessor to the correlation mode.
int numAutoPolProduct (int basebandNum) throw (Error)
 Accessor to the (derived) number of polarization products for the zero baselines for a given baseband.
vector< int > numAutoPolProduct ()
 Accessor to the (derived) number of polarization products for the zero baselines for all the basebands.
virtual 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.
int baselineNum (int anti, int antj) throw (Error)
 Baseline number (one-based) given a pair of antenna indices.
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.
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.
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.
vector< 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.
vector< vector< 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.
int numValue ()
 Total (cross+auto) number of metadata values.
virtual int numAnt ()=0
 Accessor to a generic number of antennas $ N_{ant} $ Specifities are defined in the derived classes.
virtual int actualNumAnt ()=0
 Accessor to an actual number of antennas $ N'_{ant} $ Specifities are defined in the derived classes.
int numBaseline ()
 Accessor to the number of baselines.
int numBaseband ()
 Accessor to the number of basebands.
int numPolProduct (int basebandNum) throw (Error)
 Accessor to the number of polarization products of a given baseband.
vector< int > numPolProduct ()
 Accessor to the number of polarization products.
int numBin (int basebandNum) throw (Error)
 Accessor to the number of bins (steps or phases in scwitching cycles) for a given baseband.
vector< int > numBin ()
 Accessor to the number of bins (steps or phases in scwitching cycles) for each baseband.
int correlationMode ()
 Accessor to the correlation mode.
int numAutoPolProduct (int basebandNum) throw (Error)
 Accessor to the (derived) number of polarization products for the zero baselines for a given baseband.
vector< int > numAutoPolProduct ()
 Accessor to the (derived) number of polarization products for the zero baselines for all the basebands.
virtual 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.
int baselineNum (int anti, int antj) throw (Error)
 Baseline number (one-based) given a pair of antenna indices.
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.
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.
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.
vector< 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.
vector< vector< 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.

Static Public Attributes

static int FLAGLIMIT

Protected Member Functions

 BaselineMetadata ()
 Default constructor.
virtual ~BaselineMetadata ()
 Virtual destructor.
void mkBaselineMetadata (vector< int > v_npp, vector< int > v_nbin, int nbb, int nant, int correlationMode)
 Method to instantiate the base of the hierarchy.
bool wrongBasebandNum (int basebandNum)
 Utility to access the validity of an input basebandNum.
bool notFor (bool interfero)
 Utility method to check that a query is relevant or not for interferometric data.
bool wrongAntennaIndex (int antIndex)
 Utility method to check that the input value of antenna index in a query is valid or not.
bool wrongBasebandIndex (int bbIndex)
 Utility method to check that the input baseband index value in a query is valid or not.
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.
virtual void display ()=0
 Common part shared by the derived classes for summary information Display, for each baseband sizes (i.e.
 BaselineMetadata ()
 Default constructor.
virtual ~BaselineMetadata ()
 Virtual destructor.
void mkBaselineMetadata (vector< int > v_npp, vector< int > v_nbin, int nbb, int nant, int correlationMode)
 Method to instantiate the base of the hierarchy.
bool wrongBasebandNum (int basebandNum)
 Utility to access the validity of an input basebandNum.
bool notFor (bool interfero)
 Utility method to check that a query is relevant or not for interferometric data.
bool wrongAntennaIndex (int antIndex)
 Utility method to check that the input value of antenna index in a query is valid or not.
bool wrongBasebandIndex (int bbIndex)
 Utility method to check that the input baseband index value in a query is valid or not.
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.
virtual void display ()=0
 Common part shared by the derived classes for summary information Display, for each baseband sizes (i.e.

Protected Attributes

vector< int > v_numPolProduct_
 Number of cross polarization products for every baseband.
vector< int > v_numBin_
 Number of phases in SwitchCycles for every baseband.
int numBaseband_
 Number of basebands.
int numAnt_
 Number of antennas.
int numBaseline_
 Number of baselines.
int autoSize_
 Number of metadata values for all the zero baselines (second part in size formula)
int crossSize_
 Number of metadata values for all the non-zero baselines (first part in size formula)
int correlationMode_
 Correlation mode.
vector< int > v_numAutoPolProduct_
 Number of auto polarization products for every baseband.

Private Member Functions

void sizes ()
 Method to get the size (in number of typed values).
void sizes ()
 Method to get the size (in number of typed values).

Private Attributes

int numValPerBaseline_
 Number of metadata values per non-zero baseline (first sum in size formula)
int numValPerZeroBaseline_
 Number of metadata values per zero baseline (second sum in size formula)

Detailed Description

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.


Constructor & Destructor Documentation

Default constructor.

virtual sdmbin::BaselineMetadata::~BaselineMetadata ( ) [protected, virtual]

Virtual destructor.

Default constructor.

virtual sdmbin::BaselineMetadata::~BaselineMetadata ( ) [protected, virtual]

Virtual destructor.


Member Function Documentation

virtual int sdmbin::BaselineMetadata::actualNumAnt ( ) [pure virtual]

Accessor to an actual number of antennas $ N'_{ant} $ Specifities are defined in the derived classes.

virtual int sdmbin::BaselineMetadata::actualNumAnt ( ) [pure virtual]

Accessor to an actual number of antennas $ N'_{ant} $ Specifities are defined in the derived classes.

virtual vector<int> sdmbin::BaselineMetadata::antennaIndexUsed ( unsigned long int  valLimit) [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.

Parameters:
valLimitcritical flagging limit
Returns:
The list of antenna indices fulfilling the criterion
virtual vector<int> sdmbin::BaselineMetadata::antennaIndexUsed ( unsigned long int  valLimit) [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.

Parameters:
valLimitcritical flagging limit
Returns:
The list of antenna indices fulfilling the criterion
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.

Parameters:
npppolarization product index
nbinbin index (always 0 when there is no switching mode used)
nbbbaseband index
iantenna index i
jantenna index j (if i=j this means a zero-baseline)
Returns:
the index in the container of baseline-based metadata for this node.
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.

Parameters:
npppolarization product index
nbinbin index (always 0 when there is no switching mode used)
nbbbaseband index
iantenna index i
jantenna index j (if i=j this means a zero-baseline)
Returns:
the index in the container of baseline-based metadata for this node.
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.

Parameters:
npppolarization product index
nbbbaseband index
iantenna index i
jantenna index j (if i=j this means a zero-baseline)
Returns:
A set of indices, one per bin, defining locations in the container of baseline-based metadata for this set of nodes.
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.

Parameters:
npppolarization product index
nbbbaseband index
iantenna index i
jantenna index j (if i=j this means a zero-baseline)
Returns:
A set of indices, one per bin, defining locations in the container of baseline-based metadata for this set of nodes.
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.

Parameters:
npppolarization product index
nbinbin index (always 0 when there is no switching mode used)
nbbbaseband index
Returns:
A set of indices, one per non-zero baseline, defining locations in the container of baseline-based metadata for this set of nodes.
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.

Parameters:
npppolarization product index
nbinbin index (always 0 when there is no switching mode used)
nbbbaseband index
Returns:
A set of indices, one per non-zero baseline, defining locations in the container of baseline-based metadata for this set of nodes.
vector<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.

Parameters:
nbinbin index (always 0 when there is no switching mode used)
nbbbaseband index
Returns:
a two levels tree of indices (a set of subsets of indices)
vector<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.

Parameters:
nbinbin index (always 0 when there is no switching mode used)
nbbbaseband index
Returns:
a two levels tree of indices (a set of subsets of indices)
vector<vector<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.

Parameters:
crosstrue to select the indices for the non-zero baselines, else false for the zero baselines
iantenna index i to select all baselines involving this antenna of index i
Returns:
a three levels tree (polarization product, baseband, baseline) of indices
vector<vector<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.

Parameters:
crosstrue to select the indices for the non-zero baselines, else false for the zero baselines
iantenna index i to select all baselines involving this antenna of index i
Returns:
a three levels tree (polarization product, baseband, baseline) of indices
int sdmbin::BaselineMetadata::baselineNum ( int  anti,
int  antj 
) throw (Error)

Baseline number (one-based) given a pair of antenna indices.

Parameters:
antiindex (zero-based) for antenna i
antjindex (zero-based) for antenna i
Returns:
The baseline number
Exceptions:
Errorthe indices anti and/or antj exceed the limit for the number of baselines.
int sdmbin::BaselineMetadata::baselineNum ( int  anti,
int  antj 
) throw (Error)

Baseline number (one-based) given a pair of antenna indices.

Parameters:
antiindex (zero-based) for antenna i
antjindex (zero-based) for antenna i
Returns:
The baseline number
Exceptions:
Errorthe indices anti and/or antj exceed the limit for the number of baselines.

Accessor to the correlation mode.

Returns:
The correlation mode:
  • 0 means that the data contains only interferometric data. This does not imply that the baseline-based metadata are exclusively for the non-zero baselines! See the documentation of the sizes() method.
  • 1 means that the data are exclusively for the zero baselines. In this case the baseline-based metadata are also exclusively for the zero baselines.
  • 2 means that both the non-zero and zero baselines are present.

Accessor to the correlation mode.

Returns:
The correlation mode:
  • 0 means that the data contains only interferometric data. This does not imply that the baseline-based metadata are exclusively for the non-zero baselines! See the documentation of the sizes() method.
  • 1 means that the data are exclusively for the zero baselines. In this case the baseline-based metadata are also exclusively for the zero baselines.
  • 2 means that both the non-zero and zero baselines are present.
virtual void sdmbin::BaselineMetadata::display ( ) [protected, pure 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)

virtual void sdmbin::BaselineMetadata::display ( ) [protected, pure 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)

void sdmbin::BaselineMetadata::mkBaselineMetadata ( vector< int >  v_npp,
vector< int >  v_nbin,
int  nbb,
int  nant,
int  correlationMode 
) [protected]

Method to instantiate the base of the hierarchy.

Parameters:
v_nppNumber of polarization product for every baseband
v_nbinNumber of bins (phases in a switch cycle) for every baseband
nbbNumber of baseband (should be the size of v_npp and v_nbin)
nantNumber of antennas ( $ N_{ant} $)
correlationModeThe correlation mode (must be 0 or 1 or 2).
void sdmbin::BaselineMetadata::mkBaselineMetadata ( vector< int >  v_npp,
vector< int >  v_nbin,
int  nbb,
int  nant,
int  correlationMode 
) [protected]

Method to instantiate the base of the hierarchy.

Parameters:
v_nppNumber of polarization product for every baseband
v_nbinNumber of bins (phases in a switch cycle) for every baseband
nbbNumber of baseband (should be the size of v_npp and v_nbin)
nantNumber of antennas ( $ N_{ant} $)
correlationModeThe correlation mode (must be 0 or 1 or 2).
bool sdmbin::BaselineMetadata::notFor ( bool  interfero) [protected]

Utility method to check that a query is relevant or not for interferometric data.

Parameters:
interfero
Returns:
True or false depending on the correlationMode value
bool sdmbin::BaselineMetadata::notFor ( bool  interfero) [protected]

Utility method to check that a query is relevant or not for interferometric data.

Parameters:
interfero
Returns:
True or false depending on the correlationMode value
virtual int sdmbin::BaselineMetadata::numAnt ( ) [pure virtual]

Accessor to a generic number of antennas $ N_{ant} $ Specifities are defined in the derived classes.

virtual int sdmbin::BaselineMetadata::numAnt ( ) [pure virtual]

Accessor to a generic number of antennas $ N_{ant} $ 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.

Parameters:
basebandNumThe baseband number (one-based)
Returns:
The number of products for that baseband number
Exceptions:
Errorthe method returns -1 in lax mode
int sdmbin::BaselineMetadata::numAutoPolProduct ( int  basebandNum) throw (Error)

Accessor to the (derived) number of polarization products for the zero baselines for a given baseband.

Parameters:
basebandNumThe baseband number (one-based)
Returns:
The number of products for that baseband number
Exceptions:
Errorthe method returns -1 in lax mode

Accessor to the (derived) number of polarization products for the zero baselines for all the basebands.

Returns:
The number of products for each of the basebands in the configuration

Accessor to the (derived) number of polarization products for the zero baselines for all the basebands.

Returns:
The number of products for each of the basebands in the configuration

Accessor to the number of basebands.

Returns:
The number of basebands $ N_{bb} $

Accessor to the number of basebands.

Returns:
The number of basebands $ N_{bb} $

Accessor to the number of baselines.

Returns:
the number of baselines $ N_{bl} $

Accessor to the number of baselines.

Returns:
the number of baselines $ N_{bl} $
int sdmbin::BaselineMetadata::numBin ( int  basebandNum) throw (Error)

Accessor to the number of bins (steps or phases in scwitching cycles) for a given baseband.

Parameters:
basebandNumThe basbabnd number (one-based)
Returns:
The number of bins
Exceptions:
Errorthe method returns -1 in lax mode
int sdmbin::BaselineMetadata::numBin ( int  basebandNum) throw (Error)

Accessor to the number of bins (steps or phases in scwitching cycles) for a given baseband.

Parameters:
basebandNumThe basbabnd number (one-based)
Returns:
The number of bins
Exceptions:
Errorthe method returns -1 in lax mode

Accessor to the number of bins (steps or phases in scwitching cycles) for each baseband.

Returns:
A vector of number of bins, one number per baseband.

Accessor to the number of bins (steps or phases in scwitching cycles) for each baseband.

Returns:
A vector of number of bins, one number per baseband.
int sdmbin::BaselineMetadata::numPolProduct ( int  basebandNum) throw (Error)

Accessor to the number of polarization products of a given baseband.

Parameters:
basebandNumBaseband number (one-based)
Returns:
The number of polarization products ( $ N_{pp}^{oo} $
Exceptions:
Errorthe method returns -1 in lax mode
Note:
Use the method numAutoPolProduct(int) to get the antenna-based number of product $ N_{pp}^{o}$ if correlationMode=1.
int sdmbin::BaselineMetadata::numPolProduct ( int  basebandNum) throw (Error)

Accessor to the number of polarization products of a given baseband.

Parameters:
basebandNumBaseband number (one-based)
Returns:
The number of polarization products ( $ N_{pp}^{oo} $
Exceptions:
Errorthe method returns -1 in lax mode
Note:
Use the method numAutoPolProduct(int) to get the antenna-based number of product $ N_{pp}^{o}$ if correlationMode=1.

Accessor to the number of polarization products.

The constraint is that all spectral windows in a baseband are associated with a common polarization identifier.

Returns:
a vector of numbers of products, one number per baseband.
Note:
Use the method numAutoPolProduct() to get the antenna-based number of products if correlationMode=1.

Accessor to the number of polarization products.

The constraint is that all spectral windows in a baseband are associated with a common polarization identifier.

Returns:
a vector of numbers of products, one number per baseband.
Note:
Use the method numAutoPolProduct() to get the antenna-based number of products if correlationMode=1.

Total (cross+auto) number of metadata values.

Returns:
The sum of the cross and auto baseline-based metadata values
Note:
The size is determined in the method sizes() from the following formula:
$ N_{bl}~ \sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{oo}(i) + N_{ant}~\sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{o}(i) $
and the peculiar non-standard mode ({ correlationMode}=0) by:
$ N_{bl}~ \sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{oo}(i) + N_{ant}~\sum_{i=1}^{N_{bb}} N_{bin}(i)~f(N_{pp})(i)~ $
with in this specific case
$ f(N_{pp}(i)) = \left\| \begin{array} {r@{\quad if\quad}l} 1 & N_{pp}^{oo}(i)=1\\ 2 & N_{pp}^{oo}(i)>1\\ \end{array} \right. $
In this abstract class $N_{ant}$ must be considered as generic. Its actual value depends of the context in the derived classes.
The size of the containers for the baseline-based metadata may also be obtained, in number of bytes, with methods of the asdmBinary::BinaryHeaderElement class.

Total (cross+auto) number of metadata values.

Returns:
The sum of the cross and auto baseline-based metadata values
Note:
The size is determined in the method sizes() from the following formula:
$ N_{bl}~ \sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{oo}(i) + N_{ant}~\sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{o}(i) $
and the peculiar non-standard mode ({ correlationMode}=0) by:
$ N_{bl}~ \sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{oo}(i) + N_{ant}~\sum_{i=1}^{N_{bb}} N_{bin}(i)~f(N_{pp})(i)~ $
with in this specific case
$ f(N_{pp}(i)) = \left\| \begin{array} {r@{\quad if\quad}l} 1 & N_{pp}^{oo}(i)=1\\ 2 & N_{pp}^{oo}(i)>1\\ \end{array} \right. $
In this abstract class $N_{ant}$ must be considered as generic. Its actual value depends of the context in the derived classes.
The size of the containers for the baseline-based metadata may also be obtained, in number of bytes, with methods of the asdmBinary::BinaryHeaderElement class.
void sdmbin::BaselineMetadata::sizes ( ) [private]

Method to get the size (in number of typed values).

The size is determined from the following formula:
$ N_{bl}~ \sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{oo}(i) + N_{ant}~\sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{o}(i) $
and the peculiar non-standard mode (correlationMode=0) by:
$ N_{bl}~ \sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{oo}(i) + N_{ant}~\sum_{i=1}^{N_{bb}} N_{bin}(i)~f(N_{pp})(i)~ $
with in this specific case
$ f(N_{pp}(i)) = \left\| \begin{array} {r@{\quad if\quad}l} 1 & N_{pp}^{oo}(i)=1\\ 2 & N_{pp}^{oo}(i)>1\\ \end{array} \right. $
In this abstract class $N_{ant}$ must be considered as generic. Its actual value depends of the context in the derived classes.

Note:
The size of the containers for the baseline-based metadata may also be obtained, in number of bytes, with methods of the asdmBinary::BinaryHeaderElement class.
void sdmbin::BaselineMetadata::sizes ( ) [private]

Method to get the size (in number of typed values).

The size is determined from the following formula:
$ N_{bl}~ \sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{oo}(i) + N_{ant}~\sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{o}(i) $
and the peculiar non-standard mode (correlationMode=0) by:
$ N_{bl}~ \sum_{i=1}^{N_{bb}} N_{bin}(i)~N_{pp}^{oo}(i) + N_{ant}~\sum_{i=1}^{N_{bb}} N_{bin}(i)~f(N_{pp})(i)~ $
with in this specific case
$ f(N_{pp}(i)) = \left\| \begin{array} {r@{\quad if\quad}l} 1 & N_{pp}^{oo}(i)=1\\ 2 & N_{pp}^{oo}(i)>1\\ \end{array} \right. $
In this abstract class $N_{ant}$ must be considered as generic. Its actual value depends of the context in the derived classes.

Note:
The size of the containers for the baseline-based metadata may also be obtained, in number of bytes, with methods of the asdmBinary::BinaryHeaderElement class.
bool sdmbin::BaselineMetadata::wrongAntennaIndex ( int  antIndex) [protected]

Utility method to check that the input value of antenna index in a query is valid or not.

Parameters:
antIndexThe antenna index
Returns:
True or false depending on the upper limit coming from the number of antennas
bool sdmbin::BaselineMetadata::wrongAntennaIndex ( int  antIndex) [protected]

Utility method to check that the input value of antenna index in a query is valid or not.

Parameters:
antIndexThe antenna index
Returns:
True or false depending on the upper limit coming from the number of antennas
bool sdmbin::BaselineMetadata::wrongBasebandIndex ( int  bbIndex) [protected]

Utility method to check that the input baseband index value in a query is valid or not.

Parameters:
bbIndexThe baseband index
Returns:
True or false depending on the upper limit coming from the number of basebands set in the configuartion
bool sdmbin::BaselineMetadata::wrongBasebandIndex ( int  bbIndex) [protected]

Utility method to check that the input baseband index value in a query is valid or not.

Parameters:
bbIndexThe baseband index
Returns:
True or false depending on the upper limit coming from the number of basebands set in the configuartion
bool sdmbin::BaselineMetadata::wrongBasebandNum ( int  basebandNum) [protected]

Utility to access the validity of an input basebandNum.

Parameters:
basebandNumBaseband number
Returns:
True if not one-based or exceeds the number of basebands in the configuration, else false
bool sdmbin::BaselineMetadata::wrongBasebandNum ( int  basebandNum) [protected]

Utility to access the validity of an input basebandNum.

Parameters:
basebandNumBaseband number
Returns:
True if not one-based or exceeds the number of basebands in the configuration, else false
bool sdmbin::BaselineMetadata::wrongPolProductIndex ( int  ppIndex,
int  bbIndex,
int  antIndex_i,
int  antIndex_j 
) [protected]

Utility method to check that the input set of index values in a query is valid or not.

Parameters:
ppIndexThe polarization product index
bbIndexThe baseband index
antIndex_iThe antenna index for antenna i
antIndex_jThe antenna index for antenna j
Returns:
True or false depending on the upper limit for each of these items. Note that ppIndex is a function of the baseband index.
bool sdmbin::BaselineMetadata::wrongPolProductIndex ( int  ppIndex,
int  bbIndex,
int  antIndex_i,
int  antIndex_j 
) [protected]

Utility method to check that the input set of index values in a query is valid or not.

Parameters:
ppIndexThe polarization product index
bbIndexThe baseband index
antIndex_iThe antenna index for antenna i
antIndex_jThe antenna index for antenna j
Returns:
True or false depending on the upper limit for each of these items. Note that ppIndex is a function of the baseband index.

Member Data Documentation

Number of metadata values for all the zero baselines (second part in size formula)

Definition at line 206 of file BaselineMetadata.h.

Correlation mode.

Definition at line 208 of file BaselineMetadata.h.

Number of metadata values for all the non-zero baselines (first part in size formula)

Definition at line 207 of file BaselineMetadata.h.

Definition at line 181 of file BaselineMetadata.h.

Number of antennas.

Definition at line 203 of file BaselineMetadata.h.

Number of basebands.

Definition at line 202 of file BaselineMetadata.h.

Number of baselines.

Definition at line 204 of file BaselineMetadata.h.

Number of metadata values per non-zero baseline (first sum in size formula)

Definition at line 256 of file BaselineMetadata.h.

Number of metadata values per zero baseline (second sum in size formula)

Definition at line 257 of file BaselineMetadata.h.

Number of auto polarization products for every baseband.

Definition at line 209 of file BaselineMetadata.h.

vector< int > sdmbin::BaselineMetadata::v_numBin_ [protected]

Number of phases in SwitchCycles for every baseband.

Definition at line 201 of file BaselineMetadata.h.

vector< int > sdmbin::BaselineMetadata::v_numPolProduct_ [protected]

Number of cross polarization products for every baseband.

Definition at line 200 of file BaselineMetadata.h.


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