CMS 3D CMS Logo

CSCBadChambersConditions Class Reference

#include <CalibMuon/CSCCalibration/interface/CSCBadChambersConditions.h>

Inheritance diagram for CSCBadChambersConditions:

edm::ESProducer edm::EventSetupRecordIntervalFinder edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

List of all members.

Public Types

typedef const CSCBadChambersReturnType

Public Member Functions

 CSCBadChambersConditions (const edm::ParameterSet &)
ReturnType produceBadChambers (const CSCBadChambersRcd &)
 ~CSCBadChambersConditions ()

Static Public Member Functions

static CSCBadChambersprefillBadChambers ()

Private Member Functions

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

Private Attributes

CSCBadChamberscndbBadChambers


Detailed Description

Definition at line 20 of file CSCBadChambersConditions.h.


Member Typedef Documentation

typedef const CSCBadChambers* CSCBadChambersConditions::ReturnType

Definition at line 28 of file CSCBadChambersConditions.h.


Constructor & Destructor Documentation

CSCBadChambersConditions::CSCBadChambersConditions ( const edm::ParameterSet iConfig  ) 

Definition at line 10 of file CSCBadChambersConditions.cc.

References cndbBadChambers, prefillBadChambers(), produceBadChambers(), and edm::ESProducer::setWhatProduced().

00011 {
00012   //the following line is needed to tell the framework what
00013   // data is being produced
00014   cndbBadChambers = prefillBadChambers();
00015   setWhatProduced(this,&CSCBadChambersConditions::produceBadChambers);
00016   findingRecord<CSCBadChambersRcd>();
00017   //now do what ever other initialization is needed
00018 }

CSCBadChambersConditions::~CSCBadChambersConditions (  ) 

Definition at line 21 of file CSCBadChambersConditions.cc.

References cndbBadChambers.

00022 {
00023  
00024    // do anything here that needs to be done at desctruction time
00025    // (e.g. close files, deallocate resources etc.)
00026   delete cndbBadChambers;
00027 }


Member Function Documentation

CSCBadChambers * CSCBadChambersConditions::prefillBadChambers (  )  [inline, static]

Definition at line 44 of file CSCBadChambersConditions.h.

References TestMuL1L2Filter_cff::cerr, CSCBadChambers::chambers, lat::endl(), cmsRelvalreport::exit, i, in, and CSCBadChambers::numberOfBadChambers.

Referenced by CSCBadChambersConditions().

00045 {
00046   //  const int MAX_SIZE = 468;
00047   //cndbbadchambers = new CSCBadChambers();
00048 
00049   CSCBadChambers * cndbbadchambers = new CSCBadChambers();
00050 
00051   int new_chambers;
00052   std::vector<int> new_badchambers;
00053 
00054   int new_nrlines;
00055   new_nrlines=0;
00056  
00057   std::ifstream newdata;
00058 
00059   newdata.open("badchambers.dat",std::ios::in);
00060   if(!newdata) {
00061     std::cerr <<"Error: badchambers.dat -> no such file!"<< std::endl;
00062     exit(1);
00063   }
00064 
00065   while(!newdata.eof() ) {
00066     newdata >> new_chambers;
00067     new_badchambers.push_back(new_chambers);
00068     new_nrlines++;
00069   }
00070   newdata.close();
00071   
00072   cndbbadchambers->numberOfBadChambers = new_nrlines;
00073   //std::cout <<"numberOfBadChambers "<<new_nrlines<<std::endl;
00074 
00075   std::vector<int>& itemvector = cndbbadchambers->chambers;
00076   itemvector.resize(new_nrlines);
00077   
00078   for(int i=0; i<new_nrlines;i++){
00079      itemvector[i] =  new_badchambers[i];
00080      // std::cout<<"itemvector= "<<i<<"  "<<itemvector[i]<<std::endl;
00081   }
00082  
00083  
00084    return cndbbadchambers;
00085 }

CSCBadChambersConditions::ReturnType CSCBadChambersConditions::produceBadChambers ( const CSCBadChambersRcd iRecord  ) 

Definition at line 36 of file CSCBadChambersConditions.cc.

References cndbBadChambers.

Referenced by CSCBadChambersConditions().

00037 {
00038   //need a new object so to not be deleted at exit
00039   CSCBadChambers* mydata=new CSCBadChambers( *cndbBadChambers );
00040   return mydata;
00041   
00042 }

void CSCBadChambersConditions::setIntervalFor ( const edm::eventsetup::EventSetupRecordKey ,
const edm::IOVSyncValue ,
edm::ValidityInterval oValidity 
) [private, virtual]

Implements edm::EventSetupRecordIntervalFinder.

Definition at line 44 of file CSCBadChambersConditions.cc.

References edm::IOVSyncValue::beginOfTime(), and edm::IOVSyncValue::endOfTime().


Member Data Documentation

CSCBadChambers* CSCBadChambersConditions::cndbBadChambers [private]

Definition at line 35 of file CSCBadChambersConditions.h.

Referenced by CSCBadChambersConditions(), produceBadChambers(), and ~CSCBadChambersConditions().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:17:04 2009 for CMSSW by  doxygen 1.5.4