casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
SwitchCyclesList.h
Go to the documentation of this file.
00001 #if     !defined(_SWITCHCYCLESLIST_H) 
00002 
00003 #include <vector>
00004 #include <map>
00005 
00006 #include "ASDMEntities.h"
00007 
00008 #include <BasebandName.h>
00009 
00010 using namespace std;
00011 using namespace asdm;
00012 
00013 namespace sdmbin {
00014 
00016   class SwitchCyclesList
00017   {
00018   public:
00019 
00025     vector<Tag>  getSwitchCyclesList(); 
00026 
00032     vector<Tag>  getSwitchCyclesList(BasebandName basebandName); 
00033 
00038     vector<int>  getNumBin();
00039 
00044     vector<int>  getNumBin(BasebandName basebandName);
00045 
00048     SwitchCyclesList(const SwitchCyclesList &);
00049 
00050     virtual ~SwitchCyclesList();
00051 
00052   protected:
00053 
00054     map<BasebandName,vector<Tag> > m_bn_v_scId_;   //<! map of vectors of SwitchCycle identifiers, one vector per named baseband
00055     map<BasebandName,vector<int> > m_bn_v_numBin_; //<! number of steps for every spw in every baseband (size numBaseband)
00056     vector<vector<int> >           vv_numBin_;     //<! number of steps for every spw in every baseband (size numBaseband)
00057     vector<int>                    v_numBin_;      //<! number of steps in every datadescription in the sequence in configDescription
00058     ASDM*                          datasetPtr_;    //<! pointer on an ASDM dataset.
00059 
00060     SwitchCyclesList();
00061 
00068     SwitchCyclesList(ASDM* const datasetPtr, vector<Tag> v_switchCycleId);
00069 
00076     SwitchCyclesList(ASDM* const datasetPtr, vector<vector<Tag> > vv_switchCycleId);
00077 
00086     SwitchCyclesList(ASDM* const datasetPtr, vector<vector<int> > vv_switchCycleId);
00087 
00100     virtual void mapScToBaseband() = 0;
00101 
00102     vector<vector<Tag> > vv_switchCycleId_ ; //<! list of vector of SwitchCycle identifiers for the sequence of basebands
00103     vector<Tag>           v_switchCycleId_ ; //<! list of SwitchCycle id (would they be spw indepedent in a bb) for the sequence of basebands
00104   };
00105 }
00106 
00107 #define _SWITCHCYCLESLIST_H
00108 #endif