#include <OnlineDB/CSCCondDB/interface/CSCChamberMapValues.h>
Public Types | |
typedef const CSCChamberMap * | ReturnType |
Public Member Functions | |
CSCChamberMapValues (const edm::ParameterSet &) | |
ReturnType | produceChamberMap (const CSCChamberMapRcd &) |
~CSCChamberMapValues () | |
Static Public Member Functions | |
static CSCChamberMap * | fillChamberMap () |
Private Member Functions | |
void | setIntervalFor (const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &) |
Private Attributes | |
CSCChamberMap * | mapObj |
Definition at line 22 of file CSCChamberMapValues.h.
typedef const CSCChamberMap* CSCChamberMapValues::ReturnType |
Definition at line 29 of file CSCChamberMapValues.h.
CSCChamberMapValues::CSCChamberMapValues | ( | const edm::ParameterSet & | iConfig | ) |
Definition at line 11 of file CSCChamberMapValues.cc.
References fillChamberMap(), mapObj, produceChamberMap(), and edm::ESProducer::setWhatProduced().
00012 { 00013 //the following line is needed to tell the framework what 00014 // data is being produced 00015 mapObj = fillChamberMap(); 00016 setWhatProduced(this,&CSCChamberMapValues::produceChamberMap); 00017 findingRecord<CSCChamberMapRcd>(); 00018 //now do what ever other initialization is needed 00019 }
CSCChamberMapValues::~CSCChamberMapValues | ( | ) |
Definition at line 22 of file CSCChamberMapValues.cc.
References mapObj.
00023 { 00024 00025 // do anything here that needs to be done at desctruction time 00026 // (e.g. close files, deallocate resources etc.) 00027 delete mapObj; 00028 }
CSCChamberMap * CSCChamberMapValues::fillChamberMap | ( | ) | [inline, static] |
Definition at line 45 of file CSCChamberMapValues.h.
References c, CSCChamberMap::ch_map, cscmap1::chamber(), count, i, j, k, edm::es::l(), python::multivaluedict::map(), and r.
Referenced by CSCChamberMapValues().
00046 { 00047 CSCChamberMap * mapobj = new CSCChamberMap(); 00048 cscmap1 *map = new cscmap1 (); 00049 CSCMapItem::MapItem item; 00050 00051 int i,j,k,l; //i - endcap, j - station, k - ring, l - chamber. 00052 int r,c; //r - number of rings, c - number of chambers. 00053 int count=0; 00054 int chamberid; 00055 00056 /* This is version for 540 chambers. */ 00057 for(i=1;i<=2;++i){ 00058 for(j=1;j<=4;++j){ 00059 if(j==1) r=3; 00060 //else if(j==4) r=1; 00061 else r=2; 00062 for(k=1;k<=r;++k){ 00063 if(j>1 && k==1) c=18; 00064 else c=36; 00065 for(l=1;l<=c;++l){ 00066 chamberid=i*100000+j*10000+k*1000+l*10; 00067 map->chamber(chamberid,&item); 00068 mapobj->ch_map[chamberid]=item; 00069 count=count+1; 00070 } 00071 } 00072 } 00073 } 00074 return mapobj; 00075 }
CSCChamberMapValues::ReturnType CSCChamberMapValues::produceChamberMap | ( | const CSCChamberMapRcd & | iRecord | ) |
Definition at line 37 of file CSCChamberMapValues.cc.
References mapObj.
Referenced by CSCChamberMapValues().
00038 { 00039 //need a new object so to not be deleted at exit 00040 CSCChamberMap* mydata=new CSCChamberMap( *mapObj ); 00041 return mydata; 00042 00043 }
void CSCChamberMapValues::setIntervalFor | ( | const edm::eventsetup::EventSetupRecordKey & | , | |
const edm::IOVSyncValue & | , | |||
edm::ValidityInterval & | oValidity | |||
) | [private, virtual] |
Implements edm::EventSetupRecordIntervalFinder.
Definition at line 45 of file CSCChamberMapValues.cc.
References edm::IOVSyncValue::beginOfTime(), and edm::IOVSyncValue::endOfTime().
00047 { 00048 oValidity = edm::ValidityInterval(edm::IOVSyncValue::beginOfTime(),edm::IOVSyncValue::endOfTime()); 00049 00050 }
CSCChamberMap* CSCChamberMapValues::mapObj [private] |
Definition at line 36 of file CSCChamberMapValues.h.
Referenced by CSCChamberMapValues(), produceChamberMap(), and ~CSCChamberMapValues().