CMS 3D CMS Logo

FEDNumbering.cc

Go to the documentation of this file.
00001 
00007 #include "DataFormats/FEDRawData/interface/FEDNumbering.h"
00008 
00009 
00010 
00011 using namespace std;
00012 
00013 
00014 bool FEDNumbering::init_ = true;
00015 bool *FEDNumbering::in_ = new bool[1024];
00016 
00017 vector<string> FEDNumbering::from_(1024,"");
00018 
00019 pair<int,int> FEDNumbering::getSiStripFEDIds(){
00020 
00021   return pair<int,int> (MINSiStripFEDID, MAXSiStripFEDID);
00022 
00023 }
00024 
00025 
00026 pair<int,int> FEDNumbering::getSiPixelFEDIds(){
00027 
00028   return pair<int,int> (MINSiPixelFEDID, MAXSiPixelFEDID);
00029 
00030 }
00031 
00032 
00033 pair<int,int> FEDNumbering::getDTFEDIds(){
00034 
00035   return pair<int,int> (MINDTFEDID, MAXDTFEDID);
00036 
00037 }
00038 
00039 pair<int,int> FEDNumbering::getDTTFFEDIds(){
00040 
00041   return pair<int,int> (MINDTTFFEDID, MAXDTTFFEDID);
00042 
00043 }
00044 
00045 
00046 
00047 pair<int,int> FEDNumbering::getCSCFEDIds(){
00048 
00049   return pair<int,int> (MINCSCFEDID, MAXCSCFEDID);
00050 
00051 }
00052 pair<int,int> FEDNumbering::getCSCTFFEDIds(){
00053 
00054   return pair<int,int> (MINCSCTFFEDID, MAXCSCTFFEDID);
00055 
00056 }
00057 
00058 
00059 pair<int,int> FEDNumbering::getRPCFEDIds(){
00060 
00061   return pair<int,int> (MINRPCFEDID, MAXRPCFEDID);
00062 
00063 }
00064 
00065 
00066 pair<int,int> FEDNumbering::getPreShowerFEDIds(){
00067 
00068   return pair<int,int> (MINPreShowerFEDID, MAXPreShowerFEDID);
00069 
00070 }
00071 
00072 
00073 pair<int,int> FEDNumbering::getEcalFEDIds(){
00074 
00075   return pair<int,int> (MINECALFEDID, MAXECALFEDID);
00076 
00077 }
00078 
00079 
00080 pair<int,int> FEDNumbering::getCastorFEDIds(){
00081 
00082   return pair<int,int> (MINCASTORFEDID, MAXCASTORFEDID);
00083 
00084 }
00085 
00086 
00087 pair<int,int> FEDNumbering::getHcalFEDIds(){
00088 
00089   return pair<int,int> (MINHCALFEDID, MAXHCALFEDID);
00090 
00091 }
00092 
00093 pair<int,int> FEDNumbering::getLumiScalersFEDIds(){
00094 
00095   return pair<int,int> (MINLUMISCALERSFEDID, MAXLUMISCALERSFEDID);
00096 
00097 }
00098 
00099 pair<int,int> FEDNumbering::getTriggerGTPFEDIds(){
00100 
00101   return pair<int,int> (MINTriggerGTPFEDID, MAXTriggerGTPFEDID);
00102 
00103 }
00104 
00105 
00106 pair<int,int> FEDNumbering::getTriggerEGTPFEDIds(){
00107 
00108   return pair<int,int> (MINTriggerEGTPFEDID, MAXTriggerEGTPFEDID);
00109 
00110 }
00111 
00112 
00113 pair<int,int> FEDNumbering::getTriggerGCTFEDIds(){
00114 
00115   return pair<int,int> (MINTriggerGCTFEDID, MAXTriggerGCTFEDID);
00116 
00117 }
00118 
00119 
00120 pair<int,int> FEDNumbering::getTriggerLTCmtccFEDIds(){
00121 
00122   return pair<int,int> (MINTriggerLTCmtccFEDID, MAXTriggerLTCmtccFEDID);
00123 
00124 
00125 }
00126 pair<int,int> FEDNumbering::getTriggerLTCFEDIds(){
00127 
00128   return pair<int,int> (MINTriggerLTCFEDID, MAXTriggerLTCFEDID);
00129 
00130 }
00131 
00132 
00133 pair<int, int> FEDNumbering::getTriggerLTCTriggerFEDID(){
00134 
00135 return pair<int,int>(MINTriggerLTCTriggerFEDID, MAXTriggerLTCTriggerFEDID);
00136 
00137 }
00138 
00139 pair<int, int> FEDNumbering::getTriggerLTCHCALFEDID(){
00140 
00141   return pair<int,int>(MINTriggerLTCHCALFEDID, MAXTriggerLTCHCALFEDID);
00142 
00143 }
00144 
00145 pair<int, int> FEDNumbering::getTriggerLTCSiStripFEDID(){
00146 
00147   return pair<int,int>(MINTriggerLTCSiStripFEDID, MAXTriggerLTCSiStripFEDID);
00148 
00149 }
00150 
00151 pair<int, int> FEDNumbering::getTriggerLTCECALFEDID(){
00152 
00153 return pair<int,int>(MINTriggerLTCECALFEDID, MAXTriggerLTCECALFEDID);
00154 
00155 }
00156 
00157 pair<int, int> FEDNumbering::getTriggerLTCTotemCastorFEDID(){
00158 
00159   return pair<int,int>(MINTriggerLTCTotemCastorFEDID, MAXTriggerLTCTotemCastorFEDID);
00160 
00161 }
00162 
00163 pair<int, int> FEDNumbering::getTriggerLTCRPCFEDID(){
00164 
00165 return pair<int,int>(MINTriggerLTCRPCFEDID, MAXTriggerLTCRPCFEDID);
00166 
00167 }
00168 pair<int, int> FEDNumbering::getTriggerLTCCSCFEDID(){
00169 
00170 return pair<int,int>(MINTriggerLTCCSCFEDID, MAXTriggerLTCCSCFEDID);
00171 
00172 }
00173 pair<int, int> FEDNumbering::getTriggerLTCDTFEDID(){
00174 
00175 return pair<int,int>(MINTriggerLTCDTFEDID, MAXTriggerLTCDTFEDID);
00176 
00177 }
00178 pair<int, int> FEDNumbering::getTriggerLTCSiPixelFEDID(){
00179 
00180 return pair<int,int>(MINTriggerLTCSiPixelFEDID, MAXTriggerLTCSiPixelFEDID);
00181 
00182 }
00183 
00184 pair<int, int> FEDNumbering::getCSCDDUFEDIds(){
00185 
00186 return pair<int,int>(MINCSCDDUFEDID, MAXCSCDDUFEDID);  
00187 
00188 }
00189 
00190 pair<int, int> FEDNumbering::getCSCContingencyFEDIds(){
00191 
00192 return pair<int,int>(MINCSCContingencyFEDID, MAXCSCContingencyFEDID);  
00193 
00194 }
00195 
00196 pair<int, int> FEDNumbering::getCSCTFSPFEDIds(){
00197 
00198 return pair<int,int>(MINCSCTFSPFEDID, MAXCSCTFSPFEDID);  
00199 
00200 }
00201 
00202 pair<int, int> FEDNumbering::getDAQeFEDFEDIds(){
00203 
00204 return pair<int,int>(MINDAQeFEDFEDID, MAXDAQeFEDFEDID);  
00205 
00206 }
00207 
00208 int FEDNumbering::lastFEDId(){
00209   return MAXFEDID;
00210 }
00211 
00212 void FEDNumbering::init()
00213 {
00214   int i = 0;
00215   for(i=0; i< lastFEDId(); i++)
00216     in_[i] = false;
00217   for(i=getSiPixelFEDIds().first; i<=getSiPixelFEDIds().second; i++)
00218     {
00219       in_[i] = true;
00220       from_[i] = "SiPixel";
00221     }
00222   for(i=getSiStripFEDIds().first; i<=getSiStripFEDIds().second; i++)
00223     {
00224       in_[i] = true;
00225       from_[i] = "SiStrip";
00226     }
00227   for(i=getPreShowerFEDIds().first; i<=getPreShowerFEDIds().second; i++)
00228     {
00229       in_[i] = true;
00230       from_[i] = "PreShower";
00231     }
00232   for(i=getEcalFEDIds().first; i<=getEcalFEDIds().second; i++)
00233     {
00234       in_[i] = true;
00235       from_[i] = "Ecal";
00236     }
00237   for(i=getCastorFEDIds().first; i<=getCastorFEDIds().second; i++)
00238     {
00239       in_[i] = true;
00240       from_[i] = "Castor";
00241     }
00242   for(i=getHcalFEDIds().first; i<=getHcalFEDIds().second; i++)
00243     {
00244       in_[i] = true;
00245       from_[i] = "Hcal";
00246     }
00247   for(i=getLumiScalersFEDIds().first; i<=getLumiScalersFEDIds().second; i++)
00248     {
00249       in_[i] = true;
00250       from_[i] = "LumiScalers";
00251     }
00252   for(i=getCSCFEDIds().first; i<=getCSCFEDIds().second; i++)
00253     {
00254       in_[i] = true;
00255       from_[i] = "CSC";
00256     }
00257   for(i=getCSCTFFEDIds().first; i<=getCSCTFFEDIds().second; i++)
00258     {
00259       in_[i] = true;
00260       from_[i] = "CSCTF";
00261     }
00262   for(i=getDTFEDIds().first; i<=getDTFEDIds().second; i++)
00263     {
00264       in_[i] = true;
00265       from_[i] = "DT";
00266     }
00267   for(i=getDTTFFEDIds().first; i<=getDTTFFEDIds().second; i++)
00268     {
00269       in_[i] = true;
00270       from_[i] = "DTTF";
00271     }
00272   for(i=getRPCFEDIds().first; i<=getRPCFEDIds().second; i++)
00273     {
00274       in_[i] = true;
00275       from_[i] = "RPC";
00276     }
00277   for(i=getTriggerGTPFEDIds().first; i<=getTriggerGTPFEDIds().second; i++)
00278     {
00279       in_[i] = true;
00280       from_[i] = "TriggerGTP";
00281     }
00282   for(i=getTriggerEGTPFEDIds().first; i<=getTriggerEGTPFEDIds().second; i++)
00283     {
00284       in_[i] = true;
00285       from_[i] = "TriggerEGTP";
00286     }
00287   for(i=getTriggerGCTFEDIds().first; i<=getTriggerGCTFEDIds().second; i++)
00288     {
00289       in_[i] = true;
00290       from_[i] = "TriggerGCT";
00291     }
00292   for(i=getTriggerLTCFEDIds().first; i<=getTriggerLTCFEDIds().second; i++)
00293     {
00294       in_[i] = true;
00295       from_[i] = "TriggerLTC";
00296     }
00297   for(i=getTriggerLTCmtccFEDIds().first; i<=getTriggerLTCmtccFEDIds().second; i++)
00298     {
00299       in_[i] = true;
00300       from_[i] = "TriggerLTCmtcc";
00301     }
00302   for(i=getCSCDDUFEDIds().first; i<=getCSCDDUFEDIds().second; i++)
00303     {
00304       in_[i] = true;
00305       from_[i] = "CSCDDU";
00306     }
00307   for(i=getCSCContingencyFEDIds().first; i<=getCSCContingencyFEDIds().second; i++)
00308     {
00309       in_[i] = true;
00310       from_[i] = "CSCContingency";
00311     }
00312   for(i=getCSCTFSPFEDIds().first; i<=getCSCTFSPFEDIds().second; i++)
00313     {
00314       in_[i] = true;
00315       from_[i] = "CSCTFSP";
00316     }
00317   for(i=getDAQeFEDFEDIds().first; i<=getDAQeFEDFEDIds().second; i++)
00318     {
00319       in_[i] = true;
00320       from_[i] = "DAQeFED";
00321     }
00322 
00323 
00324   init_ = false;
00325 }
00326 
00327 bool FEDNumbering::inRange(int i) 
00328 {
00329   if(init_) init();
00330   return in_[i];
00331 }
00332 bool FEDNumbering::inRangeNoGT(int i) 
00333 {
00334   if(init_) init();
00335   if((i>=MINTriggerGTPFEDID && i<=MAXTriggerGTPFEDID) || (i>=MINTriggerEGTPFEDID && i<=MAXTriggerEGTPFEDID)) return false;
00336   return in_[i];
00337 }
00338 
00339 string const &FEDNumbering::fromDet(int i) 
00340 {
00341   if(init_) init();
00342   return from_[i];
00343 }  

Generated on Tue Jun 9 17:30:46 2009 for CMSSW by  doxygen 1.5.4