CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

EcalTrigPrimESProducer Class Reference

#include <EcalTrigPrimESProducer.h>

Inheritance diagram for EcalTrigPrimESProducer:
edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

List of all members.

Public Member Functions

 EcalTrigPrimESProducer (const edm::ParameterSet &)
std::auto_ptr< EcalTPGStripStatusproduceBadStrip (const EcalTPGStripStatusRcd &)
std::auto_ptr< EcalTPGTowerStatusproduceBadTT (const EcalTPGTowerStatusRcd &)
std::auto_ptr
< EcalTPGCrystalStatus
produceBadX (const EcalTPGCrystalStatusRcd &)
std::auto_ptr
< EcalTPGFineGrainEBIdMap
produceFineGrainEB (const EcalTPGFineGrainEBIdMapRcd &)
std::auto_ptr
< EcalTPGFineGrainEBGroup
produceFineGrainEBGroup (const EcalTPGFineGrainEBGroupRcd &)
std::auto_ptr
< EcalTPGFineGrainStripEE
produceFineGrainEEstrip (const EcalTPGFineGrainStripEERcd &)
std::auto_ptr
< EcalTPGFineGrainTowerEE
produceFineGrainEEtower (const EcalTPGFineGrainTowerEERcd &)
std::auto_ptr
< EcalTPGLinearizationConst
produceLinearizationConst (const EcalTPGLinearizationConstRcd &)
std::auto_ptr< EcalTPGLutIdMapproduceLUT (const EcalTPGLutIdMapRcd &)
std::auto_ptr< EcalTPGLutGroupproduceLutGroup (const EcalTPGLutGroupRcd &)
std::auto_ptr< EcalTPGPedestalsproducePedestals (const EcalTPGPedestalsRcd &)
std::auto_ptr
< EcalTPGPhysicsConst
producePhysicsConst (const EcalTPGPhysicsConstRcd &)
std::auto_ptr
< EcalTPGSlidingWindow
produceSlidingWindow (const EcalTPGSlidingWindowRcd &)
std::auto_ptr< EcalTPGSpikeproduceSpike (const EcalTPGSpikeRcd &)
std::auto_ptr< EcalTPGWeightIdMapproduceWeight (const EcalTPGWeightIdMapRcd &)
std::auto_ptr< EcalTPGWeightGroupproduceWeightGroup (const EcalTPGWeightGroupRcd &)
 ~EcalTrigPrimESProducer ()

Private Member Functions

std::vector< int > getRange (int subdet, int smNb, int towerNbInSm, int stripNbInTower=0, int xtalNbInStrip=0)
void parseTextFile ()

Private Attributes

std::string dbFilename_
bool flagPrint_
std::map< uint32_t,
std::vector< uint32_t > > 
mapFg_
std::map< uint32_t,
std::vector< uint32_t > > 
mapLut_
std::map< uint32_t,
std::vector< float > > 
mapPhys_
std::map< uint32_t,
std::vector< uint32_t > > 
mapStrip_ [2]
std::map< uint32_t,
std::vector< uint32_t > > 
mapTower_ [2]
std::map< uint32_t,
std::vector< uint32_t > > 
mapWeight_
std::map< uint32_t,
std::vector< uint32_t > > 
mapXtal_

Detailed Description

Definition at line 50 of file EcalTrigPrimESProducer.h.


Constructor & Destructor Documentation

EcalTrigPrimESProducer::EcalTrigPrimESProducer ( const edm::ParameterSet iConfig)

Definition at line 62 of file EcalTrigPrimESProducer.cc.

References produceBadStrip(), produceBadTT(), produceBadX(), produceFineGrainEB(), produceFineGrainEBGroup(), produceFineGrainEEstrip(), produceFineGrainEEtower(), produceLinearizationConst(), produceLUT(), produceLutGroup(), producePedestals(), producePhysicsConst(), produceSlidingWindow(), produceSpike(), produceWeight(), produceWeightGroup(), and edm::ESProducer::setWhatProduced().

EcalTrigPrimESProducer::~EcalTrigPrimESProducer ( )

Definition at line 88 of file EcalTrigPrimESProducer.cc.

{ 
}

Member Function Documentation

std::vector< int > EcalTrigPrimESProducer::getRange ( int  subdet,
int  smNb,
int  towerNbInSm,
int  stripNbInTower = 0,
int  xtalNbInStrip = 0 
) [private]

Definition at line 720 of file EcalTrigPrimESProducer.cc.

{
  std::vector<int> range ;
  if (subdet == 0) { 
    // Barrel
    range.push_back(37)  ; // stccNbMin
    range.push_back(73) ; // tccNbMax
    range.push_back(1)  ; // towerNbMin
    range.push_back(69) ; // towerNbMax
    range.push_back(1)  ; // stripNbMin
    range.push_back(6)  ; // stripNbMax
    range.push_back(1)  ; // xtalNbMin
    range.push_back(6)  ; // xtalNbMax
  } else {
    // Endcap eta >0
    if (subdet >0 ) {
      range.push_back(73) ; // tccNbMin
      range.push_back(109) ; // tccNbMax
    } else { //endcap eta <0
      range.push_back(1) ; // tccNbMin
      range.push_back(37) ; // tccNbMax
    }
    range.push_back(1)  ; // towerNbMin
    range.push_back(29) ; // towerNbMax
    range.push_back(1)  ; // stripNbMin
    range.push_back(6)  ; // stripNbMax
    range.push_back(1)  ; // xtalNbMin
    range.push_back(6)  ; // xtalNbMax
  }

  if (tccNb>0) {
    range[0] = tccNb ; 
    range[1] = tccNb+1 ;
  }
  if (towerNbInTcc>0) {
    range[2] = towerNbInTcc ; 
    range[3] = towerNbInTcc+1 ;
  }
  if (stripNbInTower>0) {
    range[4] = stripNbInTower ; 
    range[5] = stripNbInTower+1 ;
  }
  if (xtalNbInStrip>0) {
    range[6] = xtalNbInStrip ; 
    range[7] = xtalNbInStrip+1 ;
  }

  return range ;
}
void EcalTrigPrimESProducer::parseTextFile ( ) [private]

Definition at line 334 of file EcalTrigPrimESProducer.cc.

References gather_cfg::cout, AlCaHLTBitMon_QueryRunRegistry::data, dbFilename_, lut2db_cfg::filename, flagPrint_, edm::FileInPath::fullPath(), i, EdgesToViz::infile, gen::k, geometryCSVtoXML::line, mapFg_, mapLut_, mapPhys_, mapStrip_, mapTower_, mapWeight_, mapXtal_, and pickleFileParser::slash.

Referenced by produceBadTT(), produceBadX(), produceFineGrainEB(), produceFineGrainEBGroup(), produceFineGrainEEstrip(), produceFineGrainEEtower(), produceLinearizationConst(), produceLUT(), produceLutGroup(), producePedestals(), producePhysicsConst(), produceSlidingWindow(), produceSpike(), produceWeight(), and produceWeightGroup().

{
  if (mapXtal_.size() != 0) return ; // just parse the file once!

  uint32_t id ;
  std::string dataCard ;
  std::string line;
  std::ifstream infile ; 
  std::vector<unsigned int> param ;
  std::vector<float> paramF ;
  int NBstripparams[2] = {4, 4} ;
  unsigned int data ;
  float dataF ;

  std::string bufString;
  std::string iString;
  std::string fString;
  std::string filename = "SimCalorimetry/EcalTrigPrimProducers/data/"+dbFilename_;
  std::string finalFileName ;
  size_t slash=dbFilename_.find("/");
  if (slash!=0) {
    edm::FileInPath fileInPath(filename);
    finalFileName = fileInPath.fullPath() ;
  }
  else {
    finalFileName = dbFilename_.c_str() ;
    edm::LogWarning("EcalTPG") <<"Couldnt find database file via fileinpath, trying with pathname directly!!";
  }


  int k=0;

  GzInputStream gis(finalFileName.c_str()) ;
  while (gis>>dataCard) {

    if (dataCard == "PHYSICS_EB" || dataCard == "PHYSICS_EE") {
      gis>>std::dec>>id ;
      
      if (flagPrint_){
        std::cout<<dataCard<<" "<<std::dec<<id <<std::endl;
      }
      
      paramF.clear() ;
      
      std::string st1;
      std::string st2;
      
      for (int i=0 ; i <7 ; i++) {
        gis>>std::dec>>dataF ;
        paramF.push_back(dataF) ;
        
        //std::cout<<", "<<std::dec<<dataF ;
        if (flagPrint_){
        //---------------------------------
          if (i < 3){
            std::ostringstream oss;
            oss << dataF; 
            std::string result1 = oss.str();

            st1.append(result1);
            if (i != 2)
              st1.append(" ");
          }

          if (i > 2){
            std::ostringstream oss;
            oss << dataF; 
            std::string result2 = oss.str();
 
            st2.append(result2);
            if (i != 6)  
              st2.append(" ");
          }
        //----------------------------------     
        }
      }
      
      if (flagPrint_){
        std::cout << "" << st1 << std::endl;
        std::cout << "" << st2 << std::endl;
        std::cout << ""<< std::endl;  
      }
      
      //std::cout<<std::endl ;
      mapPhys_[id] = paramF ;
    }

    if (dataCard == "CRYSTAL") {
      
      gis>>std::dec>>id ;
      //std::cout<<dataCard<<" "<<std::dec<<id;
      std::string st3;
      std::string st4;
      std::string st5;      
      
      if(flagPrint_){
      //Print this comment only one time 
        if(k==0)
          std::cout << "COMMENT ====== barrel crystals ====== " <<std::endl;
      
        if (k==61200)
          std::cout << "COMMENT ====== endcap crystals ====== " <<std::endl;
        
        k=k+1;

        std::cout<<dataCard<<" "<<std::dec<<id << std::endl;
      }
      
      param.clear() ;
      for (int i=0 ; i <9 ; i++) {
        gis>>std::hex>>data ;
        //std::cout<<", "<<std::hex<<data ;
        param.push_back(data);
        
        if(flagPrint_){
          if (i<3){
            std::ostringstream oss;
            oss << std::hex<< data; 
            std::string result1 = oss.str();
           
            st3.append("0x"); 
            st3.append(result1);
            if (i !=2)
              st3.append(" ");
        
          }else if(i>2 && i<6){
            std::ostringstream oss;
            oss << std::hex << data; 
            std::string result2 = oss.str();
          
            st4.append("0x");
            st4.append(result2);
            if (i != 5) 
              st4.append(" ");
          }else if(i>5 && i<9){
            std::ostringstream oss;
            oss << std::hex<< data; 
            std::string result3 = oss.str();
          
            st5.append("0x");
            st5.append(result3);
            if (i != 8)
              st5.append(" ");
          }
        }
        
      }//end for
      
      if(flagPrint_){
        std::cout << " " << st3 << std::endl;
        std::cout << " " << st4 << std::endl;
        std::cout << " " << st5 << std::endl;
      }
      
      //std::cout<<std::endl ;
      mapXtal_[id] = param ;
    }

    if (dataCard == "STRIP_EB") {
      gis>>std::dec>>id ;
      
      std::string st1;
      
      if(flagPrint_)
        std::cout<<dataCard<<" "<<std::dec<<id <<std::endl;
       
      param.clear() ;
      for (int i=0 ; i <NBstripparams[0] ; i++) {
        gis>>std::hex>>data ;
        //std::cout << " data = " << data << std::endl;
        param.push_back(data);
        
        if(flagPrint_){
          if (i==0){
           std::cout<<"0x"<<std::hex<< data << std::endl;
          }
          else if (i==1){
            std::cout<<""<<std::hex<< data << std::endl;
          }
          else if (i>1){
            std::ostringstream oss;
            if (i==2){
              oss<<"0x"<<std::hex<<data;
              std::string result4 = oss.str();
              st1.append(result4);
            }else if(i==3){
              std::ostringstream oss;
              oss<<" 0x"<<std::hex<<data;
              std::string result5 = oss.str();
          
              st1.append(result5);
              std::cout<< "" << st1 << std::endl;
           }
          }
        }
      }
      
      //std::cout<<std::endl ;
      mapStrip_[0][id] = param ;
    }

    if (dataCard == "STRIP_EE") {
      gis>>std::dec>>id ;
      
      std::string st6;
      
      if(flagPrint_){
        std::cout<<dataCard<<" "<<std::dec<<id << std::endl;
      }
      
      param.clear() ;
      for (int i=0 ; i <NBstripparams[1] ; i++) {
        gis>>std::hex>>data ;
        param.push_back(data);
        
        if(flagPrint_){
          if (i==0){
            std::cout<<"0x"<<std::hex<<data << std::endl;
          }else if (i==1){
            std::cout<<" "<<std::hex<<data<< std::endl;
          }else if (i>1){
            std::ostringstream oss;
            if (i==2){
              oss<<"0x"<<std::hex<<data;
              std::string result4 = oss.str();
              st6.append(result4);
            }else if(i==3){
              std::ostringstream oss;
              oss<<" 0x"<<std::hex<<data;
              std::string result5 = oss.str();
          
              st6.append(result5);
              std::cout<< "" << st6 << std::endl;
           }
          }
        }
      }
      
      //std::cout<<std::endl ;
      mapStrip_[1][id] = param ;
    }
    
    if(dataCard == "TOWER_EE"){
      gis>>std::dec>>id ;
      
      if(flagPrint_)
        std::cout<<dataCard<<" "<<std::dec<<id <<std::endl;

      param.clear() ;
      for (int i=0 ; i <2 ; i++) {
        gis>>std::hex>>data ;
        param.push_back(data);
      
        if(flagPrint_){
          if(i==1){
            std::cout << "0x" <<std::dec<<data << std::endl;
          }else{
            std::cout << " " <<std::dec<<data << std::endl;
          }
        }
      }
      
      //std::cout<<std::endl ;
      mapTower_[1][id] = param ;
    }

    if (dataCard == "TOWER_EB") {
      gis>>std::dec>>id ;
      
      if(flagPrint_)
        std::cout<<dataCard<<" "<<std::dec<<id << std::endl;

      param.clear() ;
      for (int i=0 ; i <3 ; i++) {
        gis>>std::dec>>data ;
        
        if(flagPrint_){ 
          std::cout << " " << std::dec <<  data << std::endl;
        }
        
        param.push_back(data) ;
      }
      
      //std::cout<<std::endl ;
      mapTower_[0][id] = param ;
    }

    if (dataCard == "WEIGHT") {
          
      if(flagPrint_) 
        std::cout<<std::endl;
     
      gis>>std::hex>>id ;  
      if(flagPrint_){
        std::cout<<dataCard<<" "<<std::dec<<id <<std::endl;
      }
      
      param.clear() ;
     
      std::string st6;
      for (int i=0 ; i <5 ; i++) {
        gis>>std::hex>>data ;
        param.push_back(data);
        
        if(flagPrint_){
          std::ostringstream oss;
          oss << std::hex<< data; 
          std::string result4 = oss.str();

          st6.append("0x");
          st6.append(result4);
          st6.append(" ");
        }
        
      }
      
      if(flagPrint_){
        std::cout << st6 << std::endl;
        std::cout<<std::endl;
      }
       
      //std::cout<<std::endl ;
      mapWeight_[id] = param ;
    }

    if (dataCard == "FG") {
      
      if(flagPrint_)
        std::cout <<std::endl;
      
      gis>>std::hex>>id ;      
      if(flagPrint_)
        std::cout<<dataCard<<" "<<std::dec<<id <<std::endl;

      param.clear() ;
      std::string st7;
      for (int i=0 ; i <5 ; i++) {
        gis>>std::hex>>data ;
        param.push_back(data);
        
        if(flagPrint_){
          std::ostringstream oss;
          oss << std::hex<< data; 
        
          std::string result5 = oss.str();

          st7.append("0x");
          st7.append(result5);
          if (i != 4)
            st7.append(" ");
        }
      }
      
      if(flagPrint_){
        std::cout << st7 << std::endl;
        std::cout<<std::endl ;
      }
      
      mapFg_[id] = param ;
    }
 
    if (dataCard == "LUT") {
      gis>>std::hex>>id ;
      
      if(flagPrint_)
        std::cout<<dataCard<<" "<<std::dec<<id <<std::endl;

      param.clear() ;
      for (int i=0 ; i <1024 ; i++) {
        gis>>std::hex>>data ;
        param.push_back(data);
       
        if(flagPrint_){
          std::cout<<"0x"<<std::hex<<data <<std::endl;
        }
      }
      
      if(flagPrint_)
        std::cout<<std::endl ;
        std::cout<<std::endl ;
        
      mapLut_[id] = param ;
    }
  }
}
std::auto_ptr< EcalTPGStripStatus > EcalTrigPrimESProducer::produceBadStrip ( const EcalTPGStripStatusRcd iRecord)

Definition at line 294 of file EcalTrigPrimESProducer.cc.

References parseEventContent::prod.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGStripStatus> prod(new EcalTPGStripStatus());
  // returns an empty map     
  return prod;
  
}
std::auto_ptr< EcalTPGTowerStatus > EcalTrigPrimESProducer::produceBadTT ( const EcalTPGTowerStatusRcd iRecord)

Definition at line 302 of file EcalTrigPrimESProducer.cc.

References begin, mapTower_, parseTextFile(), and parseEventContent::prod.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGTowerStatus> prod(new EcalTPGTowerStatus());
  parseTextFile() ;
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
  //Barrel
  for (it = mapTower_[0].begin() ; it != mapTower_[0].end() ; it++) {
    //set the BadTT status to 0
    prod->setValue(it->first,0) ;
  }
  //Endcap
  for (it = mapTower_[1].begin() ; it != mapTower_[1].end() ; it++) {
    //set the BadTT status to 0
    prod->setValue(it->first,0) ;
  }
  
  return prod; 
}
std::auto_ptr< EcalTPGCrystalStatus > EcalTrigPrimESProducer::produceBadX ( const EcalTPGCrystalStatusRcd iRecord)

Definition at line 279 of file EcalTrigPrimESProducer.cc.

References mapXtal_, parseTextFile(), parseEventContent::prod, and EcalTPGCrystalStatusCode::setStatusCode().

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGCrystalStatus> prod(new EcalTPGCrystalStatus());
  parseTextFile() ;
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
  for (it = mapXtal_.begin() ; it != mapXtal_.end() ; it++) {
    
    EcalTPGCrystalStatusCode badXValue;
    badXValue.setStatusCode(0);
    prod->setValue(it->first,badXValue) ;
  }
  return prod;
  
}
std::auto_ptr< EcalTPGFineGrainEBIdMap > EcalTrigPrimESProducer::produceFineGrainEB ( const EcalTPGFineGrainEBIdMapRcd iRecord)

Definition at line 145 of file EcalTrigPrimESProducer.cc.

References mapFg_, parseTextFile(), parseEventContent::prod, and EcalTPGFineGrainConstEB::setValues().

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGFineGrainEBIdMap> prod(new EcalTPGFineGrainEBIdMap());
  parseTextFile() ;
  EcalTPGFineGrainConstEB fg ;
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
  for (it = mapFg_.begin() ; it != mapFg_.end() ; it++) {
    fg.setValues((it->second)[0], (it->second)[1], (it->second)[2], (it->second)[3], (it->second)[4]) ;
    prod->setValue(it->first,fg) ;
  }
  return prod;
}
std::auto_ptr< EcalTPGFineGrainEBGroup > EcalTrigPrimESProducer::produceFineGrainEBGroup ( const EcalTPGFineGrainEBGroupRcd iRecord)

Definition at line 249 of file EcalTrigPrimESProducer.cc.

References begin, mapTower_, parseTextFile(), and parseEventContent::prod.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGFineGrainEBGroup> prod(new EcalTPGFineGrainEBGroup());
  parseTextFile() ;
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
  for (it = mapTower_[0].begin() ; it != mapTower_[0].end() ; it++) {
    prod->setValue(it->first,(it->second)[1]) ;
  }
  return prod;
}
std::auto_ptr< EcalTPGFineGrainStripEE > EcalTrigPrimESProducer::produceFineGrainEEstrip ( const EcalTPGFineGrainStripEERcd iRecord)

Definition at line 158 of file EcalTrigPrimESProducer.cc.

References begin, EcalTPGFineGrainStripEE::Item::lut, mapStrip_, parseTextFile(), parseEventContent::prod, and EcalTPGFineGrainStripEE::Item::threshold.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGFineGrainStripEE> prod(new EcalTPGFineGrainStripEE());
  parseTextFile() ;
  // EE Strips
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
  for (it = mapStrip_[1].begin() ; it != mapStrip_[1].end() ; it++) {
    EcalTPGFineGrainStripEE::Item item ;
    item.threshold = (it->second)[2] ;
    item.lut  = (it->second)[3] ;
    prod->setValue(it->first,item) ;
  }
  // EB Strips
  for (it = mapStrip_[0].begin() ; it != mapStrip_[0].end() ; it++) {
    EcalTPGFineGrainStripEE::Item item ;
    item.threshold = (it->second)[2] ;
    item.lut  = (it->second)[3] ;
    prod->setValue(it->first,item) ;
  }
  return prod;
}
std::auto_ptr< EcalTPGFineGrainTowerEE > EcalTrigPrimESProducer::produceFineGrainEEtower ( const EcalTPGFineGrainTowerEERcd iRecord)

Definition at line 180 of file EcalTrigPrimESProducer.cc.

References begin, mapTower_, parseTextFile(), and parseEventContent::prod.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGFineGrainTowerEE> prod(new EcalTPGFineGrainTowerEE());
  parseTextFile() ;
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
  for (it = mapTower_[1].begin() ; it != mapTower_[1].end() ; it++) {
    prod->setValue(it->first,(it->second)[1]) ;
  }
  return prod;
}
std::auto_ptr< EcalTPGLinearizationConst > EcalTrigPrimESProducer::produceLinearizationConst ( const EcalTPGLinearizationConstRcd iRecord)

Definition at line 114 of file EcalTrigPrimESProducer.cc.

References mapXtal_, EcalTPGLinearizationConstant::mult_x1, EcalTPGLinearizationConstant::mult_x12, EcalTPGLinearizationConstant::mult_x6, parseTextFile(), parseEventContent::prod, EcalTPGLinearizationConstant::shift_x1, EcalTPGLinearizationConstant::shift_x12, and EcalTPGLinearizationConstant::shift_x6.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGLinearizationConst> prod(new EcalTPGLinearizationConst());
  parseTextFile() ;
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
  for (it = mapXtal_.begin() ; it != mapXtal_.end() ; it++) {
    EcalTPGLinearizationConstant item ;
    item.mult_x12 = (it->second)[1] ;
    item.mult_x6  = (it->second)[4] ;
    item.mult_x1  = (it->second)[7] ;
    item.shift_x12 = (it->second)[2] ;
    item.shift_x6  = (it->second)[5] ;
    item.shift_x1  = (it->second)[8] ;
    prod->setValue(it->first,item) ;
  }
  return prod;
}
std::auto_ptr< EcalTPGLutIdMap > EcalTrigPrimESProducer::produceLUT ( const EcalTPGLutIdMapRcd iRecord)

Definition at line 191 of file EcalTrigPrimESProducer.cc.

References i, lumiPlot::lut, mapLut_, parseTextFile(), parseEventContent::prod, and EcalTPGLut::setLut().

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGLutIdMap> prod(new EcalTPGLutIdMap());
  parseTextFile() ;
  EcalTPGLut lut ;
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
  for (it = mapLut_.begin() ; it != mapLut_.end() ; it++) {
    unsigned int lutArray[1024] ;
    for (int i=0 ; i <1024 ; i++) lutArray[i] = (it->second)[i] ;
    lut.setLut(lutArray) ;
    prod->setValue(it->first,lut) ;
  }
  return prod;
}
std::auto_ptr< EcalTPGLutGroup > EcalTrigPrimESProducer::produceLutGroup ( const EcalTPGLutGroupRcd iRecord)

Definition at line 236 of file EcalTrigPrimESProducer.cc.

References begin, mapTower_, parseTextFile(), and parseEventContent::prod.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGLutGroup> prod(new EcalTPGLutGroup());
  parseTextFile() ;
  for (int subdet=0 ; subdet<2 ; subdet++) {
    std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
    for (it = mapTower_[subdet].begin() ; it != mapTower_[subdet].end() ; it++) {
      prod->setValue(it->first,(it->second)[0]) ;
    }
  }
  return prod;
}
std::auto_ptr< EcalTPGPedestals > EcalTrigPrimESProducer::producePedestals ( const EcalTPGPedestalsRcd iRecord)

Definition at line 99 of file EcalTrigPrimESProducer.cc.

References mapXtal_, EcalTPGPedestal::mean_x1, EcalTPGPedestal::mean_x12, EcalTPGPedestal::mean_x6, parseTextFile(), and parseEventContent::prod.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGPedestals> prod(new EcalTPGPedestals());
  parseTextFile() ;
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
  for (it = mapXtal_.begin() ; it != mapXtal_.end() ; it++) {
    EcalTPGPedestal item ;
    item.mean_x12 = (it->second)[0] ;
    item.mean_x6  = (it->second)[3] ;
    item.mean_x1  = (it->second)[6] ;
    prod->setValue(it->first,item) ;
  }
  return prod;
}
std::auto_ptr< EcalTPGPhysicsConst > EcalTrigPrimESProducer::producePhysicsConst ( const EcalTPGPhysicsConstRcd iRecord)

Definition at line 260 of file EcalTrigPrimESProducer.cc.

References EcalTPGPhysicsConst::Item::EtSat, EcalTPGPhysicsConst::Item::FG_highRatio, EcalTPGPhysicsConst::Item::FG_highThreshold, EcalTPGPhysicsConst::Item::FG_lowRatio, EcalTPGPhysicsConst::Item::FG_lowThreshold, mapPhys_, parseTextFile(), parseEventContent::prod, EcalTPGPhysicsConst::Item::ttf_threshold_High, and EcalTPGPhysicsConst::Item::ttf_threshold_Low.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGPhysicsConst> prod(new EcalTPGPhysicsConst());
  parseTextFile() ;
  std::map<uint32_t, std::vector<float> >::const_iterator it ;
  for (it = mapPhys_.begin() ; it != mapPhys_.end() ; it++) {
    EcalTPGPhysicsConst::Item item ;
    item.EtSat = (it->second)[0] ;
    item.ttf_threshold_Low = (it->second)[1] ;
    item.ttf_threshold_High = (it->second)[2] ;
    item.FG_lowThreshold = (it->second)[3] ;
    item.FG_highThreshold = (it->second)[4] ;
    item.FG_lowRatio = (it->second)[5] ;
    item.FG_highRatio = (it->second)[6] ;
    prod->setValue(it->first,item) ;
  }
  return prod;
}
std::auto_ptr< EcalTPGSlidingWindow > EcalTrigPrimESProducer::produceSlidingWindow ( const EcalTPGSlidingWindowRcd iRecord)

Definition at line 132 of file EcalTrigPrimESProducer.cc.

References begin, mapStrip_, parseTextFile(), and parseEventContent::prod.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGSlidingWindow> prod(new EcalTPGSlidingWindow());
  parseTextFile() ;
  for (int subdet=0 ; subdet<2 ; subdet++) {
    std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
    for (it = mapStrip_[subdet].begin() ; it != mapStrip_[subdet].end() ; it++) {
      prod->setValue(it->first,(it->second)[0]) ;
    }
  }
  return prod;
}
std::auto_ptr< EcalTPGSpike > EcalTrigPrimESProducer::produceSpike ( const EcalTPGSpikeRcd iRecord)

Definition at line 321 of file EcalTrigPrimESProducer.cc.

References begin, mapTower_, parseTextFile(), and parseEventContent::prod.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGSpike> prod(new EcalTPGSpike());
  parseTextFile();
  // Only need to do barrel
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it;
  for(it = mapTower_[0].begin(); it != mapTower_[0].end(); ++it)
  {
    prod->setValue(it->first, (it->second)[2]);
  }
  return prod;
}
std::auto_ptr< EcalTPGWeightIdMap > EcalTrigPrimESProducer::produceWeight ( const EcalTPGWeightIdMapRcd iRecord)

Definition at line 206 of file EcalTrigPrimESProducer.cc.

References mapWeight_, parseTextFile(), parseEventContent::prod, and EcalTPGWeights::setValues().

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGWeightIdMap> prod(new EcalTPGWeightIdMap());
  parseTextFile() ;
  EcalTPGWeights weights ;
  std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
  for (it = mapWeight_.begin() ; it != mapWeight_.end() ; it++) {
    weights.setValues((it->second)[0], 
                      (it->second)[1],
                      (it->second)[2], 
                      (it->second)[3],
                      (it->second)[4]) ;
    prod->setValue(it->first,weights) ;
  }
  return prod;
}
std::auto_ptr< EcalTPGWeightGroup > EcalTrigPrimESProducer::produceWeightGroup ( const EcalTPGWeightGroupRcd iRecord)

Definition at line 223 of file EcalTrigPrimESProducer.cc.

References begin, mapStrip_, parseTextFile(), and parseEventContent::prod.

Referenced by EcalTrigPrimESProducer().

{
  std::auto_ptr<EcalTPGWeightGroup> prod(new EcalTPGWeightGroup());
  parseTextFile() ;
  for (int subdet=0 ; subdet<2 ; subdet++) {
    std::map<uint32_t, std::vector<uint32_t> >::const_iterator it ;
    for (it = mapStrip_[subdet].begin() ; it != mapStrip_[subdet].end() ; it++) {
      prod->setValue(it->first,(it->second)[1]) ;
    }
  }
  return prod;
}

Member Data Documentation

std::string EcalTrigPrimESProducer::dbFilename_ [private]

Definition at line 78 of file EcalTrigPrimESProducer.h.

Referenced by parseTextFile().

Definition at line 79 of file EcalTrigPrimESProducer.h.

Referenced by parseTextFile().

std::map<uint32_t, std::vector<uint32_t> > EcalTrigPrimESProducer::mapFg_ [private]

Definition at line 84 of file EcalTrigPrimESProducer.h.

Referenced by parseTextFile(), and produceFineGrainEB().

std::map<uint32_t, std::vector<uint32_t> > EcalTrigPrimESProducer::mapLut_ [private]

Definition at line 85 of file EcalTrigPrimESProducer.h.

Referenced by parseTextFile(), and produceLUT().

std::map<uint32_t, std::vector<float> > EcalTrigPrimESProducer::mapPhys_ [private]

Definition at line 86 of file EcalTrigPrimESProducer.h.

Referenced by parseTextFile(), and producePhysicsConst().

std::map<uint32_t, std::vector<uint32_t> > EcalTrigPrimESProducer::mapStrip_[2] [private]
std::map<uint32_t, std::vector<uint32_t> > EcalTrigPrimESProducer::mapTower_[2] [private]
std::map<uint32_t, std::vector<uint32_t> > EcalTrigPrimESProducer::mapWeight_ [private]

Definition at line 83 of file EcalTrigPrimESProducer.h.

Referenced by parseTextFile(), and produceWeight().

std::map<uint32_t, std::vector<uint32_t> > EcalTrigPrimESProducer::mapXtal_ [private]