CMS 3D CMS Logo

Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes

CSCDDUMapValues Class Reference

#include <CSCDDUMapValues.h>

Inheritance diagram for CSCDDUMapValues:
edm::ESProducer edm::EventSetupRecordIntervalFinder edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

List of all members.

Public Types

typedef const CSCDDUMapReturnType

Public Member Functions

 CSCDDUMapValues (const edm::ParameterSet &)
ReturnType produceDDUMap (const CSCDDUMapRcd &)
 ~CSCDDUMapValues ()

Static Public Member Functions

static CSCDDUMapfillDDUMap ()

Private Member Functions

void setIntervalFor (const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &)

Private Attributes

CSCDDUMapmapObj

Detailed Description

Definition at line 22 of file CSCDDUMapValues.h.


Member Typedef Documentation

Definition at line 29 of file CSCDDUMapValues.h.


Constructor & Destructor Documentation

CSCDDUMapValues::CSCDDUMapValues ( const edm::ParameterSet iConfig)

Definition at line 10 of file CSCDDUMapValues.cc.

References fillDDUMap(), produceDDUMap(), and edm::ESProducer::setWhatProduced().

{
  //the following line is needed to tell the framework what
  // data is being produced
  fillDDUMap();
  setWhatProduced(this,&CSCDDUMapValues::produceDDUMap);
  findingRecord<CSCDDUMapRcd>();
  //now do what ever other initialization is needed
}
CSCDDUMapValues::~CSCDDUMapValues ( )

Definition at line 21 of file CSCDDUMapValues.cc.

References mapObj.

{
 
   // do anything here that needs to be done at desctruction time
   // (e.g. close files, deallocate resources etc.)
  delete mapObj;
}

Member Function Documentation

CSCDDUMap * CSCDDUMapValues::fillDDUMap ( ) [inline, static]

Definition at line 45 of file CSCDDUMapValues.h.

References trackerHits::c, cscmap1::chamber(), prof2calltree::count, CSCMapItem::MapItem::ddu, CSCMapItem::MapItem::ddu_input, CSCDDUMap::ddu_map, i, j, gen::k, prof2calltree::l, python::multivaluedict::map(), and csvReporter::r.

Referenced by CSCDDUMapValues().

{
  CSCDDUMap * mapobj = new CSCDDUMap();
  cscmap1 *map = new cscmap1 ();
  CSCMapItem::MapItem item;

  int i,j,k,l; //i - endcap, j - station, k - ring, l - chamber.
  int r,c;     //r - number of rings, c - number of chambers.
  int count=0;
  int chamberid;
  int ddu_ddu_input;

  /* This is version for 540 chambers. */
  for(i=1;i<=2;++i){
    for(j=1;j<=4;++j){
      if(j==1) r=3;
      else r=2;
      for(k=1;k<=r;++k){
       if(j>1 && k==1) c=18;
       else c=36;
        for(l=1;l<=c;++l){
         chamberid=i*100000+j*10000+k*1000+l*10;
         map->chamber(chamberid,&item);
         ddu_ddu_input=item.ddu*100+item.ddu_input;
         mapobj->ddu_map[ddu_ddu_input]=item;
         count=count+1;
        }
      }
    }
  }
  return mapobj;
}
CSCDDUMapValues::ReturnType CSCDDUMapValues::produceDDUMap ( const CSCDDUMapRcd iRecord)

Definition at line 36 of file CSCDDUMapValues.cc.

References mapObj.

Referenced by CSCDDUMapValues().

{
  //need a new object so to not be deleted at exit
  CSCDDUMap* mydata=new CSCDDUMap( *mapObj );
  return mydata;
  
}
void CSCDDUMapValues::setIntervalFor ( const edm::eventsetup::EventSetupRecordKey ,
const edm::IOVSyncValue ,
edm::ValidityInterval oValidity 
) [private, virtual]

Member Data Documentation

Definition at line 36 of file CSCDDUMapValues.h.

Referenced by produceDDUMap(), and ~CSCDDUMapValues().