Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix unsafe dqmed analyzers for710pre6 #3262

Merged
merged 21 commits into from Apr 9, 2014
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
e0c3e2e
change ME->get call though valumap access
webermat Mar 25, 2014
623d22b
fixes for threaded DQM, disable call of DQMStore, comment out TcMET a…
webermat Mar 26, 2014
ad1c595
changes in Certification file to accomodate removal of JPT and TcMET,…
webermat Mar 26, 2014
e63cdd3
change in index choice for jet1 and 2 for dijet balance and asymmetry…
webermat Mar 27, 2014
27df951
remove leftover uninitialized selection flag, which was still used
webermat Mar 27, 2014
5c4186d
fixes to avoid warnings and fix of HI sequence
webermat Mar 31, 2014
0d41ee3
take out JPT and TcMET from SUSYDQM Monitoring due to anticipated REC…
webermat Apr 1, 2014
1c2d57c
comment out all variables and Monitorelements needed for JPTJets and …
webermat Apr 1, 2014
71bc0eb
thread safe fixes
apsallid Apr 2, 2014
63b8c80
Exotica Trigger Validation package, modified and shouldn't crash anymore
trtomei Apr 2, 2014
9eb52ed
Merged exotica_trigger_validation_take3 from repository trtomei
trtomei Apr 3, 2014
ded04f3
revert back to EDAnalyzer class definition
webermat Apr 3, 2014
1054842
remove call of TrackPropagator and Magnetic Field, not needed after r…
webermat Apr 3, 2014
329c33a
Update EVTColContainer.cc
trtomei Apr 4, 2014
4bbe4cf
add a thread_unsafe::DQMEDAnalyzer which inherits from the old EDAnal…
deguio Apr 9, 2014
f1a05fa
Merged refs/pull/3158/head from repository cms-sw
deguio Apr 9, 2014
70c14bf
Merged refs/pull/3049/head from repository cms-sw
deguio Apr 9, 2014
53c3d95
Merged refs/pull/3178/head from repository cms-sw
deguio Apr 9, 2014
a7a5bef
Revert "Workaround for multithreading."
deguio Apr 9, 2014
03645e9
refinements to the unsafe DQMEDAnalyzer class
deguio Apr 9, 2014
20f1617
migrate the known problematic DQMEDAnalyzers to be thread_unsafe::DQM…
deguio Apr 9, 2014
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 2 additions & 2 deletions DQMOffline/JetMET/interface/DataCertificationJetMET.h
Expand Up @@ -26,7 +26,7 @@
// class decleration
//

class DataCertificationJetMET : public DQMEDAnalyzer {
class DataCertificationJetMET : public edm::EDAnalyzer {
public:
explicit DataCertificationJetMET(const edm::ParameterSet&);
~DataCertificationJetMET();
Expand All @@ -36,7 +36,7 @@ class DataCertificationJetMET : public DQMEDAnalyzer {
virtual void analyze(const edm::Event&, const edm::EventSetup&);
virtual void endJob() ;

void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;

virtual void endRun(const edm::Run&, const edm::EventSetup&) ;

virtual void beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&);
Expand Down
206 changes: 103 additions & 103 deletions DQMOffline/JetMET/interface/JetAnalyzer.h
Expand Up @@ -56,28 +56,26 @@
#include "PhysicsTools/SelectorUtils/interface/JetIDSelectionFunctor.h"
#include "PhysicsTools/SelectorUtils/interface/PFJetIDSelectionFunctor.h"
#include "DQMServices/Core/interface/DQMEDAnalyzer.h"
#include <map>
#include <string>

namespace jetAnalysis {
class TrackPropagatorToCalo;
//namespace jetAnalysis {
//class TrackPropagatorToCalo;
//class StripSignalOverNoiseCalculator;
}
//}

class JetAnalyzer : public edm::EDAnalyzer {
class JetAnalyzer : public thread_unsafe::DQMEDAnalyzer {
public:

/// Constructor
JetAnalyzer(const edm::ParameterSet&);

/// Destructor
virtual ~JetAnalyzer();

// This is a temporary fix to make sure we do not have a non thread safe
// analyzer using the thread aware DQM Analyzer base class.
void beginRun(edm::Run const &run, edm::EventSetup const &es) override;

/// Inizialize parameters for histo binning
// void beginJob(void);
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &);
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
/// Get the analysis
void analyze(const edm::Event&, const edm::EventSetup&);

Expand All @@ -97,7 +95,7 @@ class JetAnalyzer : public edm::EDAnalyzer {


/// Helper object to propagate tracks to the calo surface
std::auto_ptr<jetAnalysis::TrackPropagatorToCalo> trackPropagator_;
//std::auto_ptr<jetAnalysis::TrackPropagatorToCalo> trackPropagator_;
/// Helper object to calculate strip SoN for tracks
//std::auto_ptr<jetAnalysis::StripSignalOverNoiseCalculator> sOverNCalculator_;

Expand All @@ -121,7 +119,7 @@ class JetAnalyzer : public edm::EDAnalyzer {
edm::EDGetTokenT<L1GlobalTriggerReadoutRecord> gtToken_;
edm::EDGetTokenT<reco::CaloJetCollection> caloJetsToken_;
edm::EDGetTokenT<reco::PFJetCollection> pfJetsToken_;
edm::EDGetTokenT<reco::JPTJetCollection> jptJetsToken_;
//edm::EDGetTokenT<reco::JPTJetCollection> jptJetsToken_;

edm::InputTag inputJetIDValueMap;
edm::EDGetTokenT<edm::ValueMap <reco::JetID> >jetID_ValueMapToken_;
Expand Down Expand Up @@ -299,8 +297,6 @@ class JetAnalyzer : public edm::EDAnalyzer {
std::vector<std::string> highPtJetExpr_;
std::vector<std::string> lowPtJetExpr_;


bool diJetSelectionFlag_;
bool jetCleaningFlag_;

bool runcosmics_;
Expand All @@ -324,97 +320,97 @@ class JetAnalyzer : public edm::EDAnalyzer {
MonitorElement* mresEMF;
MonitorElement* mEMF;

// JPTJet specific
// JPTJet specific -> comment out
// the jet analyzer
// --- Used for Data Certification --in for CaloJets and PFJets
MonitorElement* mE;
MonitorElement* mP;
MonitorElement* mEt;
MonitorElement* mPtSecond;
MonitorElement* mPtThird;
MonitorElement* mPx;
MonitorElement* mPy;
MonitorElement* mPz;
MonitorElement* mnTracks;
MonitorElement* mnTracksVSJetPt;
MonitorElement* mnTracksVSJetEta;

MonitorElement* mnallPionTracksPerJet;
MonitorElement* mallPionTracksPt;
MonitorElement* mallPionTracksPhi;
MonitorElement* mallPionTracksEta;
MonitorElement* mallPionTracksPtVSEta;

MonitorElement* mnInVertexInCaloPionTracksPerJet;
MonitorElement* mInVertexInCaloPionTracksPt;
MonitorElement* mInVertexInCaloPionTracksPhi;
MonitorElement* mInVertexInCaloPionTracksEta;
MonitorElement* mInVertexInCaloPionTracksPtVSEta;

MonitorElement* mnOutVertexInCaloPionTracksPerJet;
MonitorElement* mOutVertexInCaloPionTracksPt;
MonitorElement* mOutVertexInCaloPionTracksPhi;
MonitorElement* mOutVertexInCaloPionTracksEta;
MonitorElement* mOutVertexInCaloPionTracksPtVSEta;

MonitorElement* mnInVertexOutCaloPionTracksPerJet;
MonitorElement* mInVertexOutCaloPionTracksPt;
MonitorElement* mInVertexOutCaloPionTracksPhi;
MonitorElement* mInVertexOutCaloPionTracksEta;
MonitorElement* mInVertexOutCaloPionTracksPtVSEta;

MonitorElement* mnallMuonTracksPerJet;
MonitorElement* mallMuonTracksPt;
MonitorElement* mallMuonTracksPhi;
MonitorElement* mallMuonTracksEta;
MonitorElement* mallMuonTracksPtVSEta;

MonitorElement* mnInVertexInCaloMuonTracksPerJet;
MonitorElement* mInVertexInCaloMuonTracksPt;
MonitorElement* mInVertexInCaloMuonTracksPhi;
MonitorElement* mInVertexInCaloMuonTracksEta;
MonitorElement* mInVertexInCaloMuonTracksPtVSEta;

MonitorElement* mnOutVertexInCaloMuonTracksPerJet;
MonitorElement* mOutVertexInCaloMuonTracksPt;
MonitorElement* mOutVertexInCaloMuonTracksPhi;
MonitorElement* mOutVertexInCaloMuonTracksEta;
MonitorElement* mOutVertexInCaloMuonTracksPtVSEta;

MonitorElement* mnInVertexOutCaloMuonTracksPerJet;
MonitorElement* mInVertexOutCaloMuonTracksPt;
MonitorElement* mInVertexOutCaloMuonTracksPhi;
MonitorElement* mInVertexOutCaloMuonTracksEta;
MonitorElement* mInVertexOutCaloMuonTracksPtVSEta;

MonitorElement* mnallElectronTracksPerJet;
MonitorElement* mallElectronTracksPt;
MonitorElement* mallElectronTracksPhi;
MonitorElement* mallElectronTracksEta;
MonitorElement* mallElectronTracksPtVSEta;

MonitorElement* mnInVertexInCaloElectronTracksPerJet;
MonitorElement* mInVertexInCaloElectronTracksPt;
MonitorElement* mInVertexInCaloElectronTracksPhi;
MonitorElement* mInVertexInCaloElectronTracksEta;
MonitorElement* mInVertexInCaloElectronTracksPtVSEta;

MonitorElement* mnOutVertexInCaloElectronTracksPerJet;
MonitorElement* mOutVertexInCaloElectronTracksPt;
MonitorElement* mOutVertexInCaloElectronTracksPhi;
MonitorElement* mOutVertexInCaloElectronTracksEta;
MonitorElement* mOutVertexInCaloElectronTracksPtVSEta;

MonitorElement* mnInVertexOutCaloElectronTracksPerJet;
MonitorElement* mInVertexOutCaloElectronTracksPt;
MonitorElement* mInVertexOutCaloElectronTracksPhi;
MonitorElement* mInVertexOutCaloElectronTracksEta;
MonitorElement* mInVertexOutCaloElectronTracksPtVSEta;

MonitorElement* mInCaloTrackDirectionJetDRHisto_;
MonitorElement* mOutCaloTrackDirectionJetDRHisto_;
MonitorElement* mInVertexTrackImpactPointJetDRHisto_;
MonitorElement* mOutVertexTrackImpactPointJetDRHisto_;
//MonitorElement* mE;
//MonitorElement* mP;
//MonitorElement* mEt;
//MonitorElement* mPtSecond;
//MonitorElement* mPtThird;
//MonitorElement* mPx;
//MonitorElement* mPy;
//MonitorElement* mPz;
//MonitorElement* mnTracks;
//MonitorElement* mnTracksVSJetPt;
//MonitorElement* mnTracksVSJetEta;

//MonitorElement* mnallPionTracksPerJet;
//MonitorElement* mallPionTracksPt;
//MonitorElement* mallPionTracksPhi;
//MonitorElement* mallPionTracksEta;
//MonitorElement* mallPionTracksPtVSEta;

//MonitorElement* mnInVertexInCaloPionTracksPerJet;
//MonitorElement* mInVertexInCaloPionTracksPt;
//MonitorElement* mInVertexInCaloPionTracksPhi;
//MonitorElement* mInVertexInCaloPionTracksEta;
//MonitorElement* mInVertexInCaloPionTracksPtVSEta;

//MonitorElement* mnOutVertexInCaloPionTracksPerJet;
//MonitorElement* mOutVertexInCaloPionTracksPt;
//MonitorElement* mOutVertexInCaloPionTracksPhi;
//MonitorElement* mOutVertexInCaloPionTracksEta;
//MonitorElement* mOutVertexInCaloPionTracksPtVSEta;

//MonitorElement* mnInVertexOutCaloPionTracksPerJet;
//MonitorElement* mInVertexOutCaloPionTracksPt;
//MonitorElement* mInVertexOutCaloPionTracksPhi;
//MonitorElement* mInVertexOutCaloPionTracksEta;
//MonitorElement* mInVertexOutCaloPionTracksPtVSEta;

//MonitorElement* mnallMuonTracksPerJet;
//MonitorElement* mallMuonTracksPt;
//MonitorElement* mallMuonTracksPhi;
//MonitorElement* mallMuonTracksEta;
//MonitorElement* mallMuonTracksPtVSEta;

//MonitorElement* mnInVertexInCaloMuonTracksPerJet;
//MonitorElement* mInVertexInCaloMuonTracksPt;
//MonitorElement* mInVertexInCaloMuonTracksPhi;
//MonitorElement* mInVertexInCaloMuonTracksEta;
//MonitorElement* mInVertexInCaloMuonTracksPtVSEta;

//MonitorElement* mnOutVertexInCaloMuonTracksPerJet;
//MonitorElement* mOutVertexInCaloMuonTracksPt;
//MonitorElement* mOutVertexInCaloMuonTracksPhi;
//MonitorElement* mOutVertexInCaloMuonTracksEta;
//MonitorElement* mOutVertexInCaloMuonTracksPtVSEta;

//MonitorElement* mnInVertexOutCaloMuonTracksPerJet;
//MonitorElement* mInVertexOutCaloMuonTracksPt;
//MonitorElement* mInVertexOutCaloMuonTracksPhi;
//MonitorElement* mInVertexOutCaloMuonTracksEta;
//MonitorElement* mInVertexOutCaloMuonTracksPtVSEta;

//MonitorElement* mnallElectronTracksPerJet;
//MonitorElement* mallElectronTracksPt;
//MonitorElement* mallElectronTracksPhi;
//MonitorElement* mallElectronTracksEta;
//MonitorElement* mallElectronTracksPtVSEta;

//MonitorElement* mnInVertexInCaloElectronTracksPerJet;
//MonitorElement* mInVertexInCaloElectronTracksPt;
//MonitorElement* mInVertexInCaloElectronTracksPhi;
//MonitorElement* mInVertexInCaloElectronTracksEta;
//MonitorElement* mInVertexInCaloElectronTracksPtVSEta;

//MonitorElement* mnOutVertexInCaloElectronTracksPerJet;
//MonitorElement* mOutVertexInCaloElectronTracksPt;
//MonitorElement* mOutVertexInCaloElectronTracksPhi;
//MonitorElement* mOutVertexInCaloElectronTracksEta;
//MonitorElement* mOutVertexInCaloElectronTracksPtVSEta;

//MonitorElement* mnInVertexOutCaloElectronTracksPerJet;
//MonitorElement* mInVertexOutCaloElectronTracksPt;
//MonitorElement* mInVertexOutCaloElectronTracksPhi;
//MonitorElement* mInVertexOutCaloElectronTracksEta;
//MonitorElement* mInVertexOutCaloElectronTracksPtVSEta;

//MonitorElement* mInCaloTrackDirectionJetDRHisto_;
//MonitorElement* mOutCaloTrackDirectionJetDRHisto_;
//MonitorElement* mInVertexTrackImpactPointJetDRHisto_;
//MonitorElement* mOutVertexTrackImpactPointJetDRHisto_;

//now define PFJet only flags
double thisCHFMin_;
Expand Down Expand Up @@ -610,9 +606,13 @@ class JetAnalyzer : public edm::EDAnalyzer {
JetMETDQMDCSFilter * DCSFilterForJetMonitoring_;
JetMETDQMDCSFilter * DCSFilterForDCSMonitoring_;

std::map< std::string,MonitorElement* >map_of_MEs;

bool isCaloJet_;
bool isJPTJet_;
//bool isJPTJet_;
bool isPFJet_;

bool fill_jet_high_level_histo;

};
#endif
5 changes: 2 additions & 3 deletions DQMOffline/JetMET/interface/JetMETDQMOfflineClient.h
Expand Up @@ -46,7 +46,7 @@
class DQMStore;
class MonitorElement;

class JetMETDQMOfflineClient : public DQMEDAnalyzer {
class JetMETDQMOfflineClient : public edm::EDAnalyzer {

private:
DQMStore* dbe_; //dbe seems to be the standard name for this, I dont know why. We of course dont own it
Expand All @@ -68,8 +68,7 @@ class JetMETDQMOfflineClient : public DQMEDAnalyzer {

virtual void beginJob(void);
virtual void endJob();
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
// virtual void beginRun(const edm::Run& run, const edm::EventSetup& c);
//virtual void beginRun(const edm::Run& run, const edm::EventSetup& c);
virtual void endRun(const edm::Run& run, const edm::EventSetup& c);
virtual void analyze(const edm::Event&, const edm::EventSetup&);
virtual void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& c);
Expand Down