casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
SDMDataViews.h
Go to the documentation of this file.
00001 #if     !defined(_SDMDATAVIEWS_H)
00002 
00003 #include <ArrayTime.h>
00004 #include <ArrayTimeInterval.h>
00005 #include <CAtmPhaseCorrection.h>
00006 
00007 using asdm::ArrayTime;
00008 using asdm::Interval;
00009 
00010 namespace sdmbin{
00011    
00016   typedef struct {
00017     public:
00018 
00019     ArrayTime                       time;             
00020 
00021 /*     int                             scanNum; */
00022 /*     int                             subscanNum; */
00023     int                             integrationNum;
00024     int                             subintegrationNum;
00025 
00026     Interval                        interval;         
00027 
00028     vector<ArrayTime>               v_timeCentroid;   
00029     vector<Interval>                v_exposure;       
00030 
00031     string                          axisStructure;    
00032     vector<vector<unsigned int> >   vv_sizes;         
00033     vector<vector<float*> >         vv_floatData;     
00034 
00035     vector<int>                     v_flagAnt;        
00036     vector<vector<int> >            vv_flagPol;       
00037     vector<vector<vector<int> > >   vvv_flagBaseband; 
00038 
00039   } SDMData;
00040 
00043   typedef struct {
00044     public:
00045     bool         sig;         
00046     bool         ref;         
00047     double       cal;         
00048     double       load;        
00049     unsigned int subscanNum;  
00050     string       obsMode;     
00051   } MSState;
00052 
00056   typedef struct {
00057     public:   
00058     int                         processorId;          
00059     int                         antennaId1;           
00060     int                         antennaId2;           
00061     int                         feedId1;              
00062     int                         feedId2;              
00063     int                         dataDescId;           
00064     double                      time;                 
00065     int                         fieldId;              
00066     double                      interval;             
00067     double                      timeCentroid;         
00068     double                      exposure;             
00069     vector<unsigned int>        projectPath;          
00070     vector<AtmPhaseCorrection>  v_atmPhaseCorrection; 
00071     int                         binNum;               
00072     int                         numData;              
00073     vector<unsigned int>        v_dataShape;          
00074     vector<float*>              v_data;               
00075     float*                      cData;                
00076     float*                      mData;                
00077     vector<vector<Angle> >      phaseDir;             
00078     int                         stateId;              
00079     MSState                     msState;              
00080     unsigned int                flag;                 
00081   } MSData;
00082   
00083 
00093   typedef struct {
00094     public:
00095 
00096     int                             processorId;          
00097     vector<double>                  v_time;               
00098     vector<int>                     v_fieldId;            
00099 
00100     vector<double>                  v_interval;           
00101     vector<AtmPhaseCorrection>      v_atmPhaseCorrection; 
00102     int                             binNum;               
00103 
00104     vector<unsigned int>            v_projectPath;        
00105     vector<int>                     v_antennaId1;         
00106     vector<int>                     v_antennaId2;         
00107     vector<int>                     v_feedId1;            
00108     vector<int>                     v_feedId2;            
00109     vector<int>                     v_dataDescId;         
00110     vector<double>                  v_timeCentroid;       
00111     vector<double>                  v_exposure;           
00112     vector<int>                     v_numData;            
00113     vector<vector<unsigned int> >   vv_dataShape;         
00114     vector<map<AtmPhaseCorrection,float*> > v_m_data;     
00115     vector<vector<vector<Angle> > > v_phaseDir;           
00116     vector<int>                     v_stateId;            
00117     vector<MSState>                 v_msState;            
00118     vector<unsigned int>            v_flag;               
00119   } VMSData;
00120   
00121 }
00122 
00123 #define _SDMDATAVIEWS_H
00124 #endif