SDMDataViews.h
Go to the documentation of this file.00001 #if !defined(_SDMDATAVIEWS_H)
00002
00003 #include <Angle.h>
00004 #include <ArrayTime.h>
00005 #include <ArrayTimeInterval.h>
00006 #include <CAtmPhaseCorrection.h>
00007
00008 #include <memory>
00009
00010 using asdm::ArrayTime;
00011 using asdm::Interval;
00012
00013 namespace sdmbin{
00014
00019 typedef struct {
00020 public:
00021
00022 ArrayTime time;
00023
00024
00025
00026 int integrationNum;
00027 int subintegrationNum;
00028
00029 Interval interval;
00030
00031 vector<ArrayTime> v_timeCentroid;
00032 vector<Interval> v_exposure;
00033
00034 string axisStructure;
00035 vector<vector<unsigned int> > vv_sizes;
00036 vector<vector<float*> > vv_floatData;
00037
00038 vector<int> v_flagAnt;
00039 vector<vector<int> > vv_flagPol;
00040 vector<vector<vector<int> > > vvv_flagBaseband;
00041
00042 } SDMData;
00043
00046 typedef struct {
00047 public:
00048 bool sig;
00049 bool ref;
00050 double cal;
00051 double load;
00052 unsigned int subscanNum;
00053 string obsMode;
00054 } MSState;
00055
00059 typedef struct {
00060 public:
00061 int processorId;
00062 int antennaId1;
00063 int antennaId2;
00064 int feedId1;
00065 int feedId2;
00066 int dataDescId;
00067 double time;
00068 int fieldId;
00069 double interval;
00070 double timeCentroid;
00071 double exposure;
00072 vector<unsigned int> projectPath;
00073 vector<AtmPhaseCorrectionMod::AtmPhaseCorrection> v_atmPhaseCorrection;
00074 int binNum;
00075 int numData;
00076 vector<unsigned int> v_dataShape;
00077 vector<float*> v_data;
00078 float* cData;
00079 float* mData;
00080 vector<vector<asdm::Angle> > phaseDir;
00081 int stateId;
00082 MSState msState;
00083 unsigned int flag;
00084 } MSData;
00085
00086
00096 typedef struct {
00097 public:
00098
00099 int processorId;
00100 vector<double> v_time;
00101 vector<int> v_fieldId;
00102
00103 vector<double> v_interval;
00104 vector<AtmPhaseCorrectionMod::AtmPhaseCorrection> v_atmPhaseCorrection;
00105 int binNum;
00106
00107 vector<unsigned int> v_projectPath;
00108 vector<int> v_antennaId1;
00109 vector<int> v_antennaId2;
00110 vector<int> v_feedId1;
00111 vector<int> v_feedId2;
00112 vector<int> v_dataDescId;
00113 vector<double> v_timeCentroid;
00114 vector<double> v_exposure;
00115 vector<int> v_numData;
00116 vector<vector<unsigned int> > vv_dataShape;
00117 vector<map<AtmPhaseCorrectionMod::AtmPhaseCorrection,float*> > v_m_data;
00118 vector<vector<vector<asdm::Angle> > > v_phaseDir;
00119 vector<int> v_stateId;
00120 vector<MSState> v_msState;
00121 vector<unsigned int> v_flag;
00122 } VMSData;
00123
00136 typedef struct {
00137 public:
00138
00139 int processorId;
00140 vector<double> v_time;
00141 vector<int> v_fieldId;
00142
00143 vector<double> v_interval;
00144 vector<AtmPhaseCorrectionMod::AtmPhaseCorrection> v_atmPhaseCorrection;
00145 int binNum;
00146
00147 vector<unsigned int> v_projectPath;
00148 vector<int> v_antennaId1;
00149 vector<int> v_antennaId2;
00150 vector<int> v_feedId1;
00151 vector<int> v_feedId2;
00152 vector<int> v_dataDescId;
00153 vector<double> v_timeCentroid;
00154 vector<double> v_exposure;
00155 vector<int> v_numData;
00156 vector<vector<unsigned int> > vv_dataShape;
00157 vector<map<AtmPhaseCorrectionMod::AtmPhaseCorrection,std::shared_ptr<float> > > v_m_data;
00158 vector<vector<vector<asdm::Angle> > > v_phaseDir;
00159 vector<int> v_stateId;
00160 vector<MSState> v_msState;
00161 vector<unsigned int> v_flag;
00162 } VMSDataWithSharedPtr;
00163 }
00164
00165 #define _SDMDATAVIEWS_H
00166 #endif