casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SDMDataViews.h
Go to the documentation of this file.
1 #if !defined(_SDMDATAVIEWS_H)
2 
3 #include <alma/ASDM/Angle.h>
4 #include <alma/ASDM/ArrayTime.h>
7 
8 #ifndef WITHOUT_BOOST
9 #include <boost/shared_array.hpp>
10 #endif
11 
12 namespace sdmbin{
13 
18  typedef struct {
19  public:
20 
22 
23 /* int scanNum; */
24 /* int subscanNum; */
27 
29 
30  std::vector<asdm::ArrayTime> v_timeCentroid;
31  std::vector<asdm::Interval> v_exposure;
32 
33  std::string axisStructure;
34  std::vector<std::vector<unsigned int> > vv_sizes;
35  std::vector<std::vector<float*> > vv_floatData;
36 
37  std::vector<int> v_flagAnt;
38  std::vector<std::vector<int> > vv_flagPol;
39  std::vector<std::vector<std::vector<int> > > vvv_flagBaseband;
40 
41  } SDMData;
42 
45  typedef struct {
46  public:
47  bool sig;
48  bool ref;
49  double cal;
50  double load;
51  unsigned int subscanNum;
52  std::string obsMode;
53  } MSState;
54 
58  typedef struct {
59  public:
61  int antennaId1;
62  int antennaId2;
63  int feedId1;
64  int feedId2;
65  int dataDescId;
66  double time;
67  int fieldId;
68  double interval;
69  double timeCentroid;
70  double exposure;
71  std::vector<unsigned int> projectPath;
72  std::vector<AtmPhaseCorrectionMod::AtmPhaseCorrection> v_atmPhaseCorrection;
73  int binNum;
74  int numData;
75  std::vector<unsigned int> v_dataShape;
76  std::vector<float*> v_data;
77  float* cData;
78  float* mData;
79  std::vector<std::vector<asdm::Angle> > phaseDir;
80  int stateId;
82  unsigned int flag;
83  } MSData;
84 
85 
95  typedef struct {
96  public:
97 
99  std::vector<double> v_time;
100  std::vector<int> v_fieldId;
101 
102  std::vector<double> v_interval;
103  std::vector<AtmPhaseCorrectionMod::AtmPhaseCorrection> v_atmPhaseCorrection;
104  int binNum;
105 
106  std::vector<unsigned int> v_projectPath;
107  std::vector<int> v_antennaId1;
108  std::vector<int> v_antennaId2;
109  std::vector<int> v_feedId1;
110  std::vector<int> v_feedId2;
111  std::vector<int> v_dataDescId;
112  std::vector<double> v_timeCentroid;
113  std::vector<double> v_exposure;
114  std::vector<int> v_numData;
115  std::vector<std::vector<unsigned int> > vv_dataShape;
116  std::vector<std::map<AtmPhaseCorrectionMod::AtmPhaseCorrection,float*> > v_m_data;
117  std::vector<std::vector<std::vector<asdm::Angle> > > v_phaseDir;
118  std::vector<int> v_stateId;
119  std::vector<MSState> v_msState;
120  std::vector<unsigned int> v_flag;
121  } VMSData;
122 
123 
124  // This struct, using boost::shared_array, is not used by CASA. It is not available when WITHOUT_BOOST is set.
125  // It may be used by ALMA code and so has not been eliminated.
126 #ifndef WITHOUT_BOOST
127 
139  typedef struct {
140  public:
141 
143  std::vector<double> v_time;
144  std::vector<int> v_fieldId;
145 
146  std::vector<double> v_interval;
147  std::vector<AtmPhaseCorrectionMod::AtmPhaseCorrection> v_atmPhaseCorrection;
148  int binNum;
149 
150  std::vector<unsigned int> v_projectPath;
151  std::vector<int> v_antennaId1;
152  std::vector<int> v_antennaId2;
153  std::vector<int> v_feedId1;
154  std::vector<int> v_feedId2;
155  std::vector<int> v_dataDescId;
156  std::vector<double> v_timeCentroid;
157  std::vector<double> v_exposure;
158  std::vector<int> v_numData;
159  std::vector<std::vector<unsigned int> > vv_dataShape;
160  std::vector<std::map<AtmPhaseCorrectionMod::AtmPhaseCorrection,boost::shared_array<float> > > v_m_data;
161  std::vector<std::vector<std::vector<asdm::Angle> > > v_phaseDir;
162  std::vector<int> v_stateId;
163  std::vector<MSState> v_msState;
164  std::vector<unsigned int> v_flag;
166 #endif
167 }
168 
169 #define _SDMDATAVIEWS_H
170 #endif
std::vector< double > v_exposure
from BINARIES actual duration for the observations
Definition: SDMDataViews.h:113
A structure containing a block of data for a single MS Main table row.
Definition: SDMDataViews.h:58
std::vector< std::vector< unsigned int > > vv_dataShape
from SDM numPol,numChan,numApc=1
Definition: SDMDataViews.h:159
double timeCentroid
actual epoch for the observations
Definition: SDMDataViews.h:69
The Interval class implements an interval of time in units of nanoseconds.
Definition: Interval.h:58
double exposure
actual duration for the observations
Definition: SDMDataViews.h:70
int numData
number of data (visibility or autocorrelations): nbin?*nbl*SUM(nsp*npp)
Definition: SDMDataViews.h:74
std::vector< int > v_antennaId1
from SDM antenna 1 identifiers
Definition: SDMDataViews.h:107
float * mData
actual mixed float complex data or NULL
Definition: SDMDataViews.h:78
std::vector< AtmPhaseCorrectionMod::AtmPhaseCorrection > v_atmPhaseCorrection
from QUERY data filtering
Definition: SDMDataViews.h:147
int processorId
from SDM identifier of the processor used for these data
Definition: SDMDataViews.h:142
std::vector< int > v_feedId2
from SDM feed identifiers used with antenna 1
Definition: SDMDataViews.h:154
int binNum
from QUERY data filtering (a MS row cannot have data for more than one step)
Definition: SDMDataViews.h:148
std::vector< std::vector< std::vector< int > > > vvv_flagBaseband
Baseband-based flags; size=numAnt (numBaseband per ant and numpol per baseband)
Definition: SDMDataViews.h:39
std::vector< double > v_time
from BINARIES Epoch of obs requested epoch when obs. ordered
Definition: SDMDataViews.h:99
std::vector< asdm::ArrayTime > v_timeCentroid
Actual epoch for the observations; size=numAnt.
Definition: SDMDataViews.h:30
int fieldId
field identifier
Definition: SDMDataViews.h:67
std::vector< int > v_fieldId
from SDM Identifier of the field every of these data dumps
Definition: SDMDataViews.h:100
unsigned int subscanNum
Subscan number.
Definition: SDMDataViews.h:51
int antennaId1
identifier for antenna 1
Definition: SDMDataViews.h:61
asdm::Interval interval
Requested exposure time when observations ordered.
Definition: SDMDataViews.h:28
std::vector< unsigned int > v_projectPath
from BINARIES the rel. project-path URI for evry fragment of data it belongs to
Definition: SDMDataViews.h:150
std::vector< double > v_timeCentroid
from BINARIES actual epoch for the observations
Definition: SDMDataViews.h:156
std::vector< MSState > v_msState
from SDM MS state tuples
Definition: SDMDataViews.h:119
std::vector< int > v_feedId1
from SDM feed identifiers used with antenna 1
Definition: SDMDataViews.h:153
bool ref
True for a reference phase.
Definition: SDMDataViews.h:48
std::vector< int > v_antennaId2
from SDM antenna 2 identifiers (=v_antennaId1 if auto-correlations)
Definition: SDMDataViews.h:152
std::vector< double > v_exposure
from BINARIES actual duration for the observations
Definition: SDMDataViews.h:157
std::vector< double > v_timeCentroid
from BINARIES actual epoch for the observations
Definition: SDMDataViews.h:112
MSState msState
State information using the MS view.
Definition: SDMDataViews.h:81
std::vector< int > v_numData
from SDM number of auto-correlations or cross-correlation
Definition: SDMDataViews.h:114
std::vector< double > v_time
from BINARIES Epoch of obs requested epoch when obs. ordered
Definition: SDMDataViews.h:143
std::vector< unsigned int > v_projectPath
from BINARIES the rel. project-path URI for evry fragment of data it belongs to
Definition: SDMDataViews.h:106
std::vector< std::vector< std::vector< asdm::Angle > > > v_phaseDir
from SDM the ref phase directions at the epochs (v_timeCentroid) to use for uvw
Definition: SDMDataViews.h:161
int processorId
processor identifier
Definition: SDMDataViews.h:60
std::vector< int > v_numData
from SDM number of auto-correlations or cross-correlation
Definition: SDMDataViews.h:158
std::string obsMode
Observing mode defined by a set of reserved keywords characterizing the current observing mode...
Definition: SDMDataViews.h:52
std::vector< int > v_feedId2
from SDM feed identifiers used with antenna 1
Definition: SDMDataViews.h:110
std::vector< int > v_antennaId1
from SDM antenna 1 identifiers
Definition: SDMDataViews.h:151
int binNum
bin number in case of switch cyle obs. mode (1-based)
Definition: SDMDataViews.h:73
std::vector< unsigned int > v_flag
from BINARIES
Definition: SDMDataViews.h:120
std::vector< int > v_flagAnt
Antenna-based flags; size=numAnt.
Definition: SDMDataViews.h:37
std::vector< std::vector< std::vector< asdm::Angle > > > v_phaseDir
from SDM the ref phase directions at the epochs (v_timeCentroid) to use for uvw
Definition: SDMDataViews.h:117
float * cData
actual corrected float complex data or NULL
Definition: SDMDataViews.h:77
std::vector< int > v_dataDescId
from SDM auto-find for the auto-correlation if correlMode=2
Definition: SDMDataViews.h:111
bool sig
True if the source signal is being observed.
Definition: SDMDataViews.h:47
A structure containing the data from a single SDM BLOB (origin: version for TP FBT, FV 12 Avril 2007) with the view of one row in the SDM Main table.
Definition: SDMDataViews.h:18
A structure containing state information following the MSv2.0 data model.
Definition: SDMDataViews.h:45
The ArrayTime class implements the concept of a point in time, implemented as an Interval of time sin...
Definition: ArrayTime.h:89
std::string axisStructure
Axis structure for the data.
Definition: SDMDataViews.h:33
double interval
requested duration (sec) for the observations
Definition: SDMDataViews.h:68
std::vector< std::map< AtmPhaseCorrectionMod::AtmPhaseCorrection, boost::shared_array< float > > > v_m_data
from BINARIES vector of maps (size num MS rows), map size=v_atmPhaseCorrection.size() ...
Definition: SDMDataViews.h:160
std::vector< MSState > v_msState
from SDM MS state tuples
Definition: SDMDataViews.h:163
std::vector< asdm::Interval > v_exposure
Actual duration for the observations; size=numAnt.
Definition: SDMDataViews.h:31
std::vector< float * > v_data
float complex data (size=numApc) or float data (size=1, not atm phase corrected)
Definition: SDMDataViews.h:76
std::vector< unsigned int > v_flag
from BINARIES
Definition: SDMDataViews.h:164
std::vector< unsigned int > projectPath
from BINARIES the relative project-path URI these data belongs to.
Definition: SDMDataViews.h:71
std::vector< int > v_antennaId2
from SDM antenna 2 identifiers (=v_antennaId1 if auto-correlations)
Definition: SDMDataViews.h:108
double load
Load temperature (zero if no load)
Definition: SDMDataViews.h:50
std::vector< int > v_fieldId
from SDM Identifier of the field every of these data dumps
Definition: SDMDataViews.h:144
std::vector< AtmPhaseCorrectionMod::AtmPhaseCorrection > v_atmPhaseCorrection
from QUERY data filtering
Definition: SDMDataViews.h:103
std::vector< AtmPhaseCorrectionMod::AtmPhaseCorrection > v_atmPhaseCorrection
code: 0=uncorrected 1=corrected 2=uncorr. and corrected data
Definition: SDMDataViews.h:72
std::vector< std::vector< unsigned int > > vv_sizes
axis sizes of the multi-dimensional data leaves; size=numDataDesc (dim of leaf/spw) ...
Definition: SDMDataViews.h:34
int feedId2
feed identifier used with antenna 2
Definition: SDMDataViews.h:64
std::vector< unsigned int > v_dataShape
numPol, numChan and numApc=1 sizes
Definition: SDMDataViews.h:75
std::vector< std::vector< float * > > vv_floatData
Actual data; size=numAnt (numBaseband per ant)
Definition: SDMDataViews.h:35
unsigned int flag
flag
Definition: SDMDataViews.h:82
int binNum
from QUERY data filtering (a MS row cannot have data for more than one step)
Definition: SDMDataViews.h:104
std::vector< double > v_interval
from BINARIES Requested exposure time when observations ordered
Definition: SDMDataViews.h:102
int stateId
State identifier.
Definition: SDMDataViews.h:80
int antennaId2
identifier for antenna 2 (same as antennaId1 in case of auto-correlations)
Definition: SDMDataViews.h:62
std::vector< int > v_stateId
from SDM need to be redefined when numBin&gt;1 &amp; checked when baseline&gt;0
Definition: SDMDataViews.h:118
std::vector< std::map< AtmPhaseCorrectionMod::AtmPhaseCorrection, float * > > v_m_data
from BINARIES vector of maps (size num MS rows), map size=v_atmPhaseCorrection.size() ...
Definition: SDMDataViews.h:116
std::vector< int > v_stateId
from SDM need to be redefined when numBin&gt;1 &amp; checked when baseline&gt;0
Definition: SDMDataViews.h:162
int dataDescId
dataDescription identifier
Definition: SDMDataViews.h:65
std::vector< std::vector< unsigned int > > vv_dataShape
from SDM numPol,numChan,numApc=1
Definition: SDMDataViews.h:115
asdm::ArrayTime time
Epoch of obs requested epoch when obs. ordered.
Definition: SDMDataViews.h:21
std::vector< int > v_feedId1
from SDM feed identifiers used with antenna 1
Definition: SDMDataViews.h:109
int processorId
from SDM identifier of the processor used for these data
Definition: SDMDataViews.h:98
double cal
Noise calibration temperature (zero if not added)
Definition: SDMDataViews.h:49
int feedId1
feed identifier used with antenna 1
Definition: SDMDataViews.h:63
This struct, using boost::shared_array, is not used by CASA.
Definition: SDMDataViews.h:139
A structure containing the data from a single SDM BLOB.
Definition: SDMDataViews.h:95
std::vector< std::vector< asdm::Angle > > phaseDir
the reference phase direction to be used to determine the UVW
Definition: SDMDataViews.h:79
std::vector< int > v_dataDescId
from SDM auto-find for the auto-correlation if correlMode=2
Definition: SDMDataViews.h:155
std::vector< double > v_interval
from BINARIES Requested exposure time when observations ordered
Definition: SDMDataViews.h:146
double time
time (MJD) (requested epoch for the observations)
Definition: SDMDataViews.h:66
std::vector< std::vector< int > > vv_flagPol
Polarization-based flags; size=numAnt (numBaseband per ant)
Definition: SDMDataViews.h:38