Integration.h

Go to the documentation of this file.
00001 #if     !defined(_INTEGRATION_H)
00002 
00003 #include <vector>
00004 #include <CorrelationMode.h>
00005 #include <AxisName.h>
00006 #include <NetSideband.h>
00007 #include <stdint.h>
00008 
00009 using namespace std;
00010 
00011 namespace sdmbin {
00012 
00045   class DataStructure{
00046   public:
00048     DataStructure();
00049 
00059     DataStructure(  uint32_t      numPolProduct,     
00060                     uint32_t      numBin,            
00061                     Enum<NetSideband> e_sideband,        
00062                     uint32_t      numBaseband,       
00063                     uint32_t      numAnt,            
00064                     CorrelationMode   correlationMode);  
00065 
00087     DataStructure(  uint32_t      numPolProduct,
00088                     uint32_t      numSpectralPoint,
00089                     uint32_t      numBin,
00090                     Enum<NetSideband> e_sideband,
00091                     uint32_t      numBaseband,
00092                     uint32_t      numAnt,
00093                     CorrelationMode   correlationMode);
00094 
00121     DataStructure( vector<vector<uint32_t> >       vv_numCrossPolProduct,// /bb/spw
00122                    vector<vector<uint32_t> >       vv_numAutoPolProduct, // /bb/spw
00123                    vector<vector<uint32_t> >       vv_numSpectralPoint,  // /bb/spw
00124                    vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
00125                    vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
00126                    uint32_t                        numApc,
00127                    vector<uint32_t>                v_numSpectralWindow,  // /bb
00128                    uint32_t                        numBaseband,
00129                    uint32_t                        numAnt,
00130                    CorrelationMode                     correlationMode);
00131 
00158     DataStructure( vector<vector<uint32_t> >       vv_numAutoPolProduct, // /bb/spw
00159                    vector<vector<uint32_t> >       vv_numSpectralPoint,  // /bb/spw
00160                    vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
00161                    vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
00162                    uint32_t                        numApc,
00163                    vector<uint32_t>                v_numSpectralWindow,  // /bb
00164                    uint32_t                        numBaseband,
00165                    uint32_t                        numAnt,
00166                    CorrelationMode                     correlationMode);
00167 
00169     DataStructure( const DataStructure &);
00170 
00172     ~DataStructure();
00173 
00174 
00178     vector<vector<uint32_t> > numCrossPolProducts();
00179 
00183     vector<vector<uint32_t> > numAutoPolProducts();
00184 
00188     vector<vector<uint32_t> > numSpectralPoints();
00189 
00190 
00194     vector<vector<uint32_t> > numBins();
00195 
00199     vector<vector<Enum<NetSideband> > > sidebands();
00200 
00202     uint32_t                  numApc();
00203 
00205     vector<uint32_t>          numSpectralWindows();
00206 
00208     uint32_t                  numBaseband();
00209 
00211     uint32_t                  numAnt();
00212 
00218     CorrelationMode                 correlationMode();
00219 
00230     vector<uint32_t> leafAxisSizes();
00231 
00244     vector<uint32_t> leafAxisSizes(uint32_t basebandIndex, uint32_t spectralWindowIndex);
00245 
00260     vector<uint32_t> leafAxisSizes(uint32_t dataDescriptionIndex);
00261 
00262 
00271     uint32_t         isIndexible() const;
00272 
00273 
00281     vector<uint32_t> eAxisSizes() const;
00282 
00289     vector<uint32_t> axisSizes() const;
00290 
00295     uint32_t         dimension() const;
00296 
00301     vector<uint32_t> minAxSize() const;
00302 
00307     vector<uint32_t> maxAxSize() const;
00308 
00311     uint32_t         numAutoData() const;
00312 
00315     uint32_t         numCrossData() const;
00316 
00320     string               axisSequence() const;
00321 
00324     void                 summary() const;
00325 
00326   protected:
00327     vector<vector<uint32_t> >       vv_numCrossPolProduct_;// /bb/spw
00328     vector<vector<uint32_t> >       vv_numAutoPolProduct_; // /bb/spw
00329     vector<vector<uint32_t> >       vv_numSpectralPoint_;  // /bb/spw
00330     vector<vector<uint32_t> >       vv_numBin_;            // /bb/spw
00331     vector<vector<Enum<NetSideband> > > vv_e_sideband_;        // /bb/spw
00332     uint32_t                        numApc_;
00333     vector<uint32_t>                v_numSpectralWindow_;  // /bb
00334     uint32_t                        numBaseband_;
00335     uint32_t                        numAnt_;
00336     CorrelationMode                     correlationMode_;
00337     string                              axisSequence_;
00338     vector<uint32_t>                v_minSize_;
00339     vector<uint32_t>                v_maxSize_;
00340     
00341   private:
00342     string                              setStructureProperties();
00343   };
00344 
00371   class DataDump : public DataStructure {
00372   public:
00373     DataDump();
00374     
00396     DataDump( uint32_t      numPolProduct,
00397               uint32_t      numBin,
00398               Enum<NetSideband> e_sideband,
00399               uint32_t      numBaseband,
00400               uint32_t      numAnt,
00401               CorrelationMode   correlationMode,
00402               uint64_t         time,
00403               uint64_t         timeCentroid,  
00404               uint64_t         interval, 
00405               uint64_t         exposure,
00406               const float*      floatData);
00407 
00433     DataDump( uint32_t      numSdPolProduct,
00434               uint32_t      numSpectralPoint,
00435               uint32_t      numBin,
00436               Enum<NetSideband> e_sideband,
00437               uint32_t      numBaseband,
00438               uint32_t      numAnt,
00439               CorrelationMode   correlationMode,
00440               uint64_t         time, 
00441               uint64_t         timeCentroid, 
00442               uint64_t         interval,
00443               uint64_t         exposure,
00444               const float*             floatData, 
00445               const uint32_t* dataFlags); // TODO
00446 
00450     DataDump( vector<vector<uint32_t> >       vv_numPolProduct,     // /bb/spw
00451               vector<vector<uint32_t> >       vv_numSpectralPoint,  // /bb/spw
00452               vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
00453               vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
00454               uint32_t                        numApc,
00455               vector<uint32_t>                v_numSpectralWindow,  // /bb
00456               uint32_t                        numBaseband,
00457               uint32_t                        numAnt,
00458               CorrelationMode                     correlationMode,
00459               uint64_t                           time, 
00460               uint64_t                           timeCentroid, 
00461               uint64_t                           interval, 
00462               uint64_t                           exposure,
00463               const float*                        floatData);
00464 
00468     DataDump( vector<vector<uint32_t> >       vv_numPolProduct,     // /bb/spw
00469               vector<vector<uint32_t> >       vv_numSpectralPoint,  // /bb/spw
00470               vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
00471               vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
00472               uint32_t                        numApc,
00473               vector<uint32_t>                v_numSpectralWindow,  // /bb
00474               uint32_t                        numBaseband,
00475               uint32_t                        numAnt,
00476               CorrelationMode                     correlationMode,
00477               uint64_t                           time,
00478               uint64_t                           timeCentroid,  
00479               uint64_t                           interval, 
00480               uint64_t                           exposure,
00481               const float*                        floatData, 
00482               const uint32_t*                 dataFlags);
00483 
00486     DataDump( vector<vector<uint32_t> >       vv_numCrossPolProduct,// /bb/spw
00487               vector<vector<uint32_t> >       vv_numAutoPolProduct, // /bb/spw
00488               vector<vector<uint32_t> >       vv_numSpectralPoint,  // /bb/spw
00489               vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
00490               vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
00491               uint32_t                        numApc,
00492               vector<uint32_t>                v_numSpectralWindow,  // /bb
00493               uint32_t                        numBaseband,
00494               uint32_t                        numAnt,
00495               CorrelationMode                     correlationMode,
00496               uint64_t                           time,
00497               uint64_t                           timeCentroid,  
00498               uint64_t                           interval, 
00499               uint64_t                           exposure);
00500 
00518     ~DataDump();
00519 
00523     DataDump(const DataDump& a);
00524 
00526     DataDump & operator = (const DataDump& a);
00527 
00528     void attachFlags( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00529                       uint32_t numData, const uint32_t* flagsPtr);
00530     void importFlags( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00531                       uint32_t numData, const uint32_t* flagsPtr);
00532 
00533     void attachActualTimes( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00534                             uint32_t numData, const int64_t * actualTimesPtr);
00535 
00536     void importActualTimes( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00537                             uint32_t numData, const  int64_t * actualTimesPtr);
00538 
00539     void attachActualDurations( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00540                                 uint32_t numData, const int64_t * durationsPtr);
00541 
00542     void importActualDurations( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00543                                 uint32_t numData, const int64_t * durationsPtr);
00544 
00545 
00546     void attachZeroLags ( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00547                           uint32_t numData, const float* zeroLagsPtr);
00548 
00549     void importZeroLags ( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00550                           uint32_t numData, const float* zeroLagsPtr);
00551 
00552 
00553     void attachAutoData ( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00554                           uint32_t numData, const float * autoDataPtr);
00555 
00556     void importAutoData ( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00557                           uint32_t numData, const float * autoDataPtr);
00558 
00559     void attachCrossData ( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00560                            uint32_t numData, const short int* crossDataPtr);
00561     void importCrossData ( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00562                            uint32_t numData, const short int* crossDataPtr);
00563     void attachCrossData ( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00564                            uint32_t numData, const int * crossDataPtr);
00565     void importCrossData ( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00566                            uint32_t numData, const int * crossDataPtr);
00567     void attachCrossData ( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00568                            uint32_t numData, const float * crossDataPtr);
00569     void importCrossData ( uint32_t declaredSize, EnumSet<AxisName> es_an, 
00570                            uint32_t numData, const float * crossDataPtr);
00571 
00572     void         setScaleFactor(vector<vector<float> > vv_scaleFactor);
00573     uint32_t setIntegration(uint32_t integNum);
00574     uint32_t setSubintegration(uint32_t integNum, uint32_t subintegNum);
00575     uint32_t setContextUsingProjectPath(string projectPathUri);
00576 
00577     // Accessor
00578     uint32_t integrationNum();
00579     uint32_t subintegrationNum();
00580 
00581     float scaleFactor(uint32_t nbb, uint32_t nspw);
00582 
00583     float scaleFactor(uint32_t ndd);
00584 
00589     uint64_t      time() const;
00590     uint64_t      timeCentroid() const;
00591     uint64_t      interval() const;
00592     uint64_t      exposure() const;
00594 
00599     const int64_t* actualTimes() const;
00600     const int64_t* actualDurations() const;
00605     const uint32_t*      flags()    const;
00606     const float*             zeroLags() const;
00607 
00608 
00620     const float*             autoData() const;
00621 
00622     const short*             crossDataShort() const;
00623 
00624     const int*              crossDataLong() const;
00625 
00626     const float*             crossDataFloat() const;
00627 
00638     uint32_t floatData(vector<vector<float>& >);
00639 
00640 
00657     uint32_t floatData(vector<vector<float*> >&);
00658 
00659 
00665     uint32_t floatData(vector<vector<vector<float> > >&);
00666 
00667 
00685     uint32_t floatData(vector<vector<vector<float*> > >&);
00686 
00687 
00703     uint32_t floatData(vector<vector<vector<vector<float> > > >&);
00704 
00705 
00706 
00712     uint32_t floatData(vector<vector<vector<vector<float*> > > >&);
00713 
00721     uint32_t floatData(vector<vector<vector<vector<vector<float> > > > >&);
00722 
00723     // /nant/nbb/nspw/nbin/napc/nsp/npol
00724     // |    |   |    |    |    |   | 
00725     // |    |   |    |    |    | corr or uncorr (enum)
00726     // |    |   |    |    | scId (global keys)
00727     // |    |   |    | spwNames (keys in baseband context)
00728     // |    |   | basebandNames (global keys)
00729     // |    | antNames (global keys)
00730     // | configDescId (global key)
00731 
00733 
00762     DataDump            operator - (const DataDump & B);  // shape unchanged
00763 
00788     DataDump           operator -= (const DataDump &);  // shape unchanged
00789 
00817     DataDump            operator + (const DataDump &);  // shape unchanged
00818 
00819 
00848     DataDump      operator += (const DataDump &);
00849 
00850     DataDump      operator *  (const float &);
00851     DataDump      operator /  (const float &);
00852 /*     DataDump      operator *  (const DataProfile &); */
00853 /*     DataDump      operator /  (const DataProfile &); */
00854 /*     DataProfile   operator *= (const DataProfile &); */
00855 /*     Dataprofile   operator /= (const DataProfile &); */
00856 
00857 
00858 
00860 
00866     DataDump      spectralAverage();
00867     DataDump      spectralAverage(uint32_t startIndex, uint32_t endIndex);
00868     DataDump            decim(const DataDump &);
00869     DataDump      subtractRef(const DataDump &);
00871 
00872 
00873     //DataDump     binSequence(vector<const DataDump &>); see Subscan
00874 
00875   protected:
00876 
00877     uint32_t              integrationNum_;
00878     uint32_t              subintegrationNum_;
00879     uint64_t                 time_;
00880     uint64_t                 timeCentroid_; 
00881     uint64_t                 interval_;
00882     uint64_t                 exposure_;
00883 
00884     EnumSet<AxisName>         es_flagsAxes_;
00885     EnumSet<AxisName>         es_actualTimesAxes_;
00886     EnumSet<AxisName>         es_actualDurationsAxes_;
00887     EnumSet<AxisName>         es_weightsAxes_;
00888     EnumSet<AxisName>         es_zeroLagsAxes_;
00889     EnumSet<AxisName>         es_autoDataAxes_;
00890     EnumSet<AxisName>         es_crossDataAxes_;
00891 
00892     uint32_t              numFlags_;
00893     uint32_t              numActualTimes_;
00894     uint32_t              numActualDurations_;
00895     uint32_t              numWeights_;
00896     uint32_t              numZeroLags_;
00897     uint32_t              numAutoData_;
00898     uint32_t              numCrossData_;
00899 
00900     vector<vector<float> >    vv_scaleFactor_;     // /bb/spw
00901     vector<float>             v_scaleFactor_;      // /ndd      linearized version of vv_scaleFactor_ for fast access
00902 
00903     const uint32_t*     cuintFlagsPtr_;
00904     const int64_t*      clonlonActualTimesPtr_;
00905     const int64_t*      clonlonActualDurationsPtr_;
00906     const float*        cfloatWeightsPtr_;
00907     const float*        cfloatZeroLagsPtr_;
00908     const float*        cfloatAutoDataPtr_;
00909     const short int*    cshortCrossDataPtr_;
00910     const int*          cintCrossDataPtr_;
00911     const float*        cfloatCrossDataPtr_;
00912 
00913     uint32_t*   uintFlagsPtr_;
00914     int64_t*    lonlonActualTimesPtr_;
00915     int64_t*    lonlonActualDurationsPtr_;
00916     float*      floatWeightsPtr_;
00917     float*      floatZeroLagsPtr_;
00918     float*      floatAutoDataPtr_;
00919     short int*  shortCrossDataPtr_;
00920     int*        intCrossDataPtr_;
00921     float*      floatCrossDataPtr_;
00922 
00924     DataDump( vector<vector<uint32_t> >       vv_numCrossPolProduct,// /bb/spw
00925               vector<vector<uint32_t> >       vv_numAutoPolProduct, // /bb/spw
00926               vector<vector<uint32_t> >       vv_numSpectralPoint,  // /bb/spw
00927               vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
00928               vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
00929               uint32_t                        numApc,
00930               vector<uint32_t>                v_numSpectralWindow,  // /bb
00931               uint32_t                        numBaseband,
00932               uint32_t                        numAnt,
00933               CorrelationMode                     correlationMode,
00934               uint64_t                           time,
00935               uint64_t                           timeCentroid,  
00936               uint64_t                           interval, 
00937               uint64_t                           exposure,
00938               uint32_t                    numCrossData,
00939               const int*                      crossData,
00940               uint32_t                    numAutoData,
00941               const float*                    floatData,
00942               uint32_t                    numFlags,
00943               const uint32_t*            dataFlags);
00944 
00945   private:
00946 
00947     void                          getDataStructure();
00948   };
00949 
00950 
00955   class Integration : public DataDump
00956   {
00957   public:
00958     Integration();
00959     Integration( vector<vector<uint32_t> >       vv_numPolProduct,     // /bb/spw
00960                  vector<vector<uint32_t> >       vv_numSpectralPoint,  // /bb/spw
00961                  vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
00962                  vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
00963                  uint32_t                        numApc,
00964                  vector<uint32_t>                v_numSpectralWindow,  // /bb
00965                  uint32_t                        numBaseband,
00966                  uint32_t                        numAnt,
00967                  CorrelationMode                     correlationMode,
00968                  uint64_t                           time,
00969                  uint64_t                           timeCentroid,  
00970                  uint64_t                           interval, 
00971                  uint64_t                           exposure,
00972                  float*                              floatData, 
00973                  uint32_t                        integNum);
00974 
00975 
00976     Integration( vector<vector<uint32_t> >       vv_numPolProduct,     // /bb/spw
00977                  vector<vector<uint32_t> >       vv_numSpectralPoint,  // /bb/spw
00978                  vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
00979                  vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
00980                  uint32_t                        numApc,
00981                  vector<uint32_t>                v_numSpectralWindow,  // /bb
00982                  uint32_t                        numBaseband,
00983                  uint32_t                        numAnt,
00984                  CorrelationMode                     correlationMode,
00985                  uint64_t                           time, 
00986                  uint64_t                           timeCentroid, 
00987                  uint64_t                           interval,
00988                  uint64_t                           exposure, 
00989                  float*                              floatData, 
00990                  uint32_t*                       dataFlags,
00991                  uint32_t                        integNum);
00992 
00993     Integration( uint32_t      numPolProduct,
00994                  uint32_t      numSpectralPoint,
00995                  uint32_t      numBin,
00996                  Enum<NetSideband> e_sideband,
00997                  uint32_t      numApc,
00998                  uint32_t      numSpectralWindow,
00999                  uint32_t      numBaseband,
01000                  uint32_t      numAnt, 
01001                  CorrelationMode   correlationMode,
01002                  uint64_t         time, 
01003                  uint64_t         timeCentroid,
01004                  uint64_t         interval,
01005                  uint64_t         exposure, 
01006                  float*            floatData);
01007 
01008     Integration( uint32_t      numPolProduct,
01009                  uint32_t      numSpectralPoint,
01010                  uint32_t      numBin,
01011                  Enum<NetSideband> e_sideband,
01012                  uint32_t      numApc,
01013                  uint32_t      numSpectralWindow,
01014                  uint32_t      numBaseband,
01015                  uint32_t      numAnt,
01016                  CorrelationMode   correlationMode,
01017                  uint64_t         time, 
01018                  uint64_t         timeCentroid, 
01019                  uint64_t         interval,
01020                  uint64_t         exposure, 
01021                  float*            floatData, 
01022                  uint32_t*   dataFlags,  // TODO
01023                  uint32_t      integNum);
01024     ~Integration();
01025 
01026     Integration( const Integration & a);
01027 
01028   
01029   private:
01030 /*     uint32_t integrationNum_; */
01031 /*     uint32_t subintegrationNum_; */
01032   };
01033 
01034 /*   uint32_t Integration::subintegrationNum_=0; */
01035 
01041   class Subintegration : public DataDump
01042   {
01043   public:
01044 
01053     Subintegration (const Integration&, uint32_t subintegNum );
01054 
01061     Subintegration( vector<vector<uint32_t> >       vv_numPolProduct,     // /bb/spw
01062                     vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
01063                     vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
01064                     vector<uint32_t>                v_numSpectralWindow,  // /bb
01065                     uint32_t                        numBaseband,
01066                     uint32_t                        numAnt,
01067                     CorrelationMode                     correlationMode, 
01068                     uint64_t                           time,
01069                     uint64_t                           timeCentroid, 
01070                     uint64_t                           interval,
01071                     uint64_t                           exposure,
01072                     float*                              floatData,
01073                     uint32_t                        integNum,
01074                     uint32_t                        subintegNum);
01075 
01082     Subintegration( vector<vector<uint32_t> >       vv_numPolProduct,     // /bb/spw
01083                     vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
01084                     vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
01085                     vector<uint32_t>                v_numSpectralWindow,  // /bb
01086                     uint32_t                        numBaseband,
01087                     uint32_t                        numAnt,
01088                     CorrelationMode                     correlationMode, 
01089                     uint64_t                           time, 
01090                     uint64_t                           timeCentroid, 
01091                     uint64_t                           interval,
01092                     uint64_t                           exposure, 
01093                     float*                              floatData,
01094                     uint32_t*                 dataFlags,  // TODO
01095                     uint32_t                        integNum,
01096                     uint32_t                        subintegNum);
01097 
01105     Subintegration( vector<vector<uint32_t> >       vv_numPolProduct,     // /bb/spw
01106                     vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
01107                     vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
01108                     uint32_t                        numApc,
01109                     vector<uint32_t>                v_numSpectralWindow,  // /bb
01110                     uint32_t                        numBaseband,
01111                     uint32_t                        numAnt,
01112                     CorrelationMode                     correlationMode, 
01113                     uint64_t                           time,
01114                     uint64_t                           timeCentroid, 
01115                     uint64_t                           interval,
01116                     uint64_t                           exposure,
01117                     float*                              floatData,
01118                     uint32_t                        integNum,
01119                     uint32_t                        subintegNum);
01120 
01126     Subintegration( vector<vector<uint32_t> >       vv_numPolProduct,     // /bb/spw
01127                     vector<vector<uint32_t> >       vv_numSpectralPoint,  // /bb/spw
01128                     vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
01129                     vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
01130                     uint32_t                        numApc,
01131                     vector<uint32_t>                v_numSpectralWindow,  // /bb
01132                     uint32_t    numBaseband,
01133                     uint32_t    numAnt, 
01134                     CorrelationMode correlationMode,
01135                     uint64_t       time, 
01136                     uint64_t       timeCentroid, 
01137                     uint64_t       interval,
01138                     uint64_t       exposure, 
01139                     float*          floatData,
01140                     uint32_t    integNum,
01141                     uint32_t    subintegNum);
01142 
01148     Subintegration( vector<vector<uint32_t> >       vv_numPolProduct,     // /bb/spw
01149                     vector<vector<uint32_t> >       vv_numSpectralPoint,  // /bb/spw
01150                     vector<vector<uint32_t> >       vv_numBin,            // /bb/spw
01151                     vector<vector<Enum<NetSideband> > > vv_e_sideband,        // /bb/spw
01152                     uint32_t                        numApc,
01153                     vector<uint32_t>                v_numSpectralWindow,  // /bb
01154                     uint32_t    numBaseband,
01155                     uint32_t    numAnt,
01156                     CorrelationMode correlationMode,
01157                     uint64_t       time, 
01158                     uint64_t       timeCentroid, 
01159                     uint64_t       interval,
01160                     uint64_t       exposure, 
01161                     float*          floatData, 
01162                     uint32_t*   dataFlags, // TODO
01163                     uint32_t    integNum,
01164                     uint32_t    subintegNum);
01165 
01166   private:
01167 
01168 /*     uint32_t integrationNum_; */
01169 /*     uint32_t subintegrationNum_; */
01170 
01171   };
01172 
01173 }
01174 
01175 #define _INTEGRATION_H 
01176 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines