CMS 3D CMS Logo

PerformanceAnalyzer Class Reference

#include <Validation/Performance/interface/PerformanceAnalyzer.h>

Inheritance diagram for PerformanceAnalyzer:

edm::EDAnalyzer

List of all members.

Public Member Functions

virtual void analyze (const edm::Event &, const edm::EventSetup &)
virtual void beginJob (const edm::EventSetup &)
virtual void endJob ()
 PerformanceAnalyzer (const edm::ParameterSet &)
 ~PerformanceAnalyzer ()

Private Attributes

DQMStorefDBE
MonitorElementfEcalUnsuppDigis
MonitorElementfEcalZeroSuppDigis
MonitorElementfg4SimHits
MonitorElementfHcalUnsuppDigis
MonitorElementfMixing
MonitorElementfMuonCSCDigis
MonitorElementfMuonDTDigis
MonitorElementfMuonRPCDigis
std::string fOutputFile
MonitorElementfPreShwZeroSuppDigis
MonitorElementfSiPixelDigis
MonitorElementfSiStripDigis
MonitorElementfVtxSmeared


Detailed Description

Definition at line 11 of file PerformanceAnalyzer.h.


Constructor & Destructor Documentation

PerformanceAnalyzer::PerformanceAnalyzer ( const edm::ParameterSet ps  )  [explicit]

Definition at line 18 of file PerfomanceAnalyzer.cc.

References DQMStore::book1D(), fDBE, fEcalUnsuppDigis, fEcalZeroSuppDigis, fg4SimHits, fHcalUnsuppDigis, fMixing, fMuonCSCDigis, fMuonDTDigis, fMuonRPCDigis, fPreShwZeroSuppDigis, fSiPixelDigis, fSiStripDigis, fVtxSmeared, NULL, and DQMStore::setCurrentFolder().

00019    : fDBE( edm::Service<DQMStore>().operator->() ),
00020      fOutputFile( ps.getUntrackedParameter<std::string>("outputFile", "") )
00021 {
00022    
00023    if ( fDBE != NULL )
00024    {
00025       fDBE->setCurrentFolder("PerformanceV/CPUPerformanceTask");
00026       
00027       // is there any way to record CPU Info ???
00028       // if so, it can be done once - via beginJob() 
00029       
00030       fVtxSmeared   = fDBE->book1D( "VtxSmeared",  "VtxSmeared",   100, 0., 0.1 ) ;
00031       fg4SimHits    = fDBE->book1D( "g4SimHits",   "g4SimHits",    100, 0., 500. ) ;
00032       fMixing       = fDBE->book1D( "Mixing",      "Mixing",       100, 0., 0.5 ) ;
00033       fSiPixelDigis = fDBE->book1D( "SiPixelDigis","SiPixelDigis", 100, 0., 0.5 ) ;
00034       fSiStripDigis = fDBE->book1D( "SiStripDigis","SiStripDigis", 100, 0., 2. ) ;
00035       fEcalUnsuppDigis = fDBE->book1D( "EcalUnsuppDigis","EcalUnsuppDigis", 100, 0., 2. ) ;
00036       fEcalZeroSuppDigis = fDBE->book1D( "EcalZeroSuppDigis","EcalZeroSuppDigis", 100, 0., 2. ) ;
00037       fPreShwZeroSuppDigis = fDBE->book1D( "PreShwZeroSuppDigis","PreShwZeroSuppDigis", 100, 0., 0.1 ) ; 
00038       fHcalUnsuppDigis = fDBE->book1D( "HcalUnsuppDigis","HcalUnsuppDigis", 100, 0., 0.5 ) ;
00039       fMuonCSCDigis = fDBE->book1D( "MuonCSCDigis", "MuonCSCDigis", 100, 0., 0.1 ) ;
00040       fMuonDTDigis  = fDBE->book1D( "MuonDTDigis",  "MuonDTDigis",  100, 0., 0.1 ) ;
00041       fMuonRPCDigis = fDBE->book1D( "MuonRPCDigis", "MuonRPCDigis", 100, 0., 0.1 ) ;
00042    }
00043 }

PerformanceAnalyzer::~PerformanceAnalyzer (  ) 

Definition at line 46 of file PerfomanceAnalyzer.cc.

00047 {
00048    // don't try to delete any pointers - they're handled by DQM machinery
00049 }


Member Function Documentation

void PerformanceAnalyzer::analyze ( const edm::Event e,
const edm::EventSetup eventSetup 
) [virtual]

Implements edm::EDAnalyzer.

Definition at line 62 of file PerfomanceAnalyzer.cc.

References fEcalUnsuppDigis, fEcalZeroSuppDigis, fg4SimHits, fHcalUnsuppDigis, MonitorElement::Fill(), fMixing, fMuonCSCDigis, fMuonDTDigis, fMuonRPCDigis, fPreShwZeroSuppDigis, fSiPixelDigis, fSiStripDigis, fVtxSmeared, edm::Event::getByLabel(), i, and edm::Event::id().

00063 {
00064 
00065    if ( e.id().event() == 1) return ; // skip 1st event
00066    
00067    edm::Handle<edm::EventTime> EvtTime;
00068    e.getByLabel( "cputest", EvtTime ) ;
00069    
00070    for ( unsigned int i=0; i<EvtTime->size(); ++i )
00071    {
00072       if ( EvtTime->name(i) == "VtxSmeared" )   fVtxSmeared->Fill( EvtTime->time(i) ) ;
00073       if ( EvtTime->name(i) == "g4SimHits"  )   fg4SimHits->Fill( EvtTime->time(i) ) ;
00074       if ( EvtTime->name(i) == "mix" )          fMixing->Fill( EvtTime->time(i) ) ;
00075       if ( EvtTime->name(i) == "siPixelDigis" ) fSiPixelDigis->Fill( EvtTime->time(i) ) ;
00076       if ( EvtTime->name(i) == "siStripDigis" ) fSiStripDigis->Fill( EvtTime->time(i) ) ;
00077       if ( EvtTime->name(i) == "ecalUnsuppressedDigis" ) fEcalUnsuppDigis->Fill( EvtTime->time(i) ) ;
00078       if ( EvtTime->name(i) == "ecalDigis")     fEcalZeroSuppDigis->Fill( EvtTime->time(i) ) ;
00079       if ( EvtTime->name(i) == "ecalPreshowerDigis") fPreShwZeroSuppDigis->Fill( EvtTime->time(i) ) ;
00080       if ( EvtTime->name(i) == "hcalDigis" )    fHcalUnsuppDigis->Fill( EvtTime->time(i) ) ;
00081       if ( EvtTime->name(i) == "muonCSCDigis" ) fMuonCSCDigis->Fill( EvtTime->time(i) ) ;
00082       if ( EvtTime->name(i) == "muonDTDigis" )  fMuonDTDigis->Fill( EvtTime->time(i) ) ;
00083       if ( EvtTime->name(i) == "muonRPCDigis" ) fMuonRPCDigis->Fill( EvtTime->time(i) ) ;
00084       
00085    }
00086       
00087    return ;
00088    
00089 }

virtual void PerformanceAnalyzer::beginJob ( const edm::EventSetup  )  [inline, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 18 of file PerformanceAnalyzer.h.

00018 {} 

void PerformanceAnalyzer::endJob ( void   )  [virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 52 of file PerfomanceAnalyzer.cc.

References fDBE, fOutputFile, and DQMStore::save().

00053 {
00054 
00055   if ( fOutputFile.size() != 0 && fDBE ) fDBE->save(fOutputFile);
00056 
00057   return ;
00058 
00059 }


Member Data Documentation

DQMStore* PerformanceAnalyzer::fDBE [private]

Definition at line 23 of file PerformanceAnalyzer.h.

Referenced by endJob(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fEcalUnsuppDigis [private]

Definition at line 30 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fEcalZeroSuppDigis [private]

Definition at line 31 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fg4SimHits [private]

Definition at line 26 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fHcalUnsuppDigis [private]

Definition at line 33 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fMixing [private]

Definition at line 27 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fMuonCSCDigis [private]

Definition at line 34 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fMuonDTDigis [private]

Definition at line 35 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fMuonRPCDigis [private]

Definition at line 36 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

std::string PerformanceAnalyzer::fOutputFile [private]

Definition at line 24 of file PerformanceAnalyzer.h.

Referenced by endJob().

MonitorElement* PerformanceAnalyzer::fPreShwZeroSuppDigis [private]

Definition at line 32 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fSiPixelDigis [private]

Definition at line 28 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fSiStripDigis [private]

Definition at line 29 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().

MonitorElement* PerformanceAnalyzer::fVtxSmeared [private]

Definition at line 25 of file PerformanceAnalyzer.h.

Referenced by analyze(), and PerformanceAnalyzer().


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