CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Attributes | Private Attributes
evf::ExceptionGenerator Class Reference

#include <ExceptionGenerator.h>

Inheritance diagram for evf::ExceptionGenerator:
edm::stream::EDAnalyzer<> edm::stream::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c) override
 
void beginRun (const edm::Run &r, const edm::EventSetup &iSetup) override
 
void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
 ExceptionGenerator (const edm::ParameterSet &)
 
 ~ExceptionGenerator () override
 
- Public Member Functions inherited from edm::stream::EDAnalyzer<>
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()=default
 
 EDAnalyzer (const EDAnalyzer &)=delete
 
const EDAnalyzeroperator= (const EDAnalyzer &)=delete
 
- Public Member Functions inherited from edm::stream::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
 EDAnalyzerBase (const EDAnalyzerBase &)=delete
 
ModuleDescription const & moduleDescription () const
 
const EDAnalyzerBaseoperator= (const EDAnalyzerBase &)=delete
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Attributes

static const std::string menu [menu_items]
 
static const int menu_items = 14
 

Private Attributes

int actionId_
 
bool actionRequired_
 
unsigned int intqualifier_
 
std::string original_referrer_
 
double qualifier2_
 
std::string qualifier_
 
TH1D * timingHisto_
 
timeval tv_start_
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDAnalyzer<>
using CacheTypes = CacheContexts< T... >
 
using GlobalCache = typename CacheTypes::GlobalCache
 
using HasAbility = AbilityChecker< T... >
 
using InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache
 
using LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache
 
using LuminosityBlockContext = LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache >
 
using LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache
 
using RunCache = typename CacheTypes::RunCache
 
using RunContext = RunContextT< RunCache, GlobalCache >
 
using RunSummaryCache = typename CacheTypes::RunSummaryCache
 
- Public Types inherited from edm::stream::EDAnalyzerBase
typedef EDAnalyzerAdaptorBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::stream::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 

Detailed Description

Definition at line 14 of file ExceptionGenerator.h.

Constructor & Destructor Documentation

◆ ExceptionGenerator()

evf::ExceptionGenerator::ExceptionGenerator ( const edm::ParameterSet pset)
explicit

Definition at line 24 of file ExceptionGenerator.cc.

References timingHisto_.

25  : actionId_(pset.getUntrackedParameter<int>("defaultAction", -1)),
26  intqualifier_(pset.getUntrackedParameter<int>("defaultQualifier", 0)),
27  qualifier2_(pset.getUntrackedParameter<double>("secondQualifier", 1)),
28  actionRequired_(actionId_ != -1) {
29  // timing destribution from (https://twiki.cern.ch/twiki/bin/viewauth/CMS/HLTCpuTimingFAQ#2011_Most_Recent_Data)
30  // /castor/cern.ch/user/d/dsperka/HLT/triggerSkim_HLTPhysics_run178479_68_188.root
31  // Baseline result with CMSSW_4_2_9_HLT3_hltpatch3 and /online/collisions/2011/5e33/v2.1/HLT/V9 :
32  // vocms110:/store/timing_178479/outfile-178479-col1.root
33 
34  timingHisto_ = new TH1D("timingHisto_", "Total time for all modules per event", 100, 0, 1000);
35  timingHisto_->SetBinContent(1, 5016);
36  timingHisto_->SetBinContent(2, 4563);
37  timingHisto_->SetBinContent(3, 3298);
38  timingHisto_->SetBinContent(4, 1995);
39  timingHisto_->SetBinContent(5, 1708);
40  timingHisto_->SetBinContent(6, 1167);
41  timingHisto_->SetBinContent(7, 928);
42  timingHisto_->SetBinContent(8, 785);
43  timingHisto_->SetBinContent(9, 643);
44  timingHisto_->SetBinContent(10, 486);
45  timingHisto_->SetBinContent(11, 427);
46  timingHisto_->SetBinContent(12, 335);
47  timingHisto_->SetBinContent(13, 332);
48  timingHisto_->SetBinContent(14, 327);
49  timingHisto_->SetBinContent(15, 258);
50  timingHisto_->SetBinContent(16, 257);
51  timingHisto_->SetBinContent(17, 222);
52  timingHisto_->SetBinContent(18, 253);
53  timingHisto_->SetBinContent(19, 223);
54  timingHisto_->SetBinContent(20, 177);
55  timingHisto_->SetBinContent(21, 148);
56  timingHisto_->SetBinContent(22, 148);
57  timingHisto_->SetBinContent(23, 113);
58  timingHisto_->SetBinContent(24, 83);
59  timingHisto_->SetBinContent(25, 84);
60  timingHisto_->SetBinContent(26, 75);
61  timingHisto_->SetBinContent(27, 61);
62  timingHisto_->SetBinContent(28, 66);
63  timingHisto_->SetBinContent(29, 51);
64  timingHisto_->SetBinContent(30, 43);
65  timingHisto_->SetBinContent(31, 38);
66  timingHisto_->SetBinContent(32, 27);
67  timingHisto_->SetBinContent(33, 34);
68  timingHisto_->SetBinContent(34, 28);
69  timingHisto_->SetBinContent(35, 18);
70  timingHisto_->SetBinContent(36, 26);
71  timingHisto_->SetBinContent(37, 18);
72  timingHisto_->SetBinContent(38, 11);
73  timingHisto_->SetBinContent(39, 11);
74  timingHisto_->SetBinContent(40, 12);
75  timingHisto_->SetBinContent(41, 14);
76  timingHisto_->SetBinContent(42, 11);
77  timingHisto_->SetBinContent(43, 8);
78  timingHisto_->SetBinContent(44, 4);
79  timingHisto_->SetBinContent(45, 2);
80  timingHisto_->SetBinContent(46, 5);
81  timingHisto_->SetBinContent(47, 3);
82  timingHisto_->SetBinContent(48, 4);
83  timingHisto_->SetBinContent(49, 6);
84  timingHisto_->SetBinContent(50, 6);
85  timingHisto_->SetBinContent(51, 3);
86  timingHisto_->SetBinContent(52, 5);
87  timingHisto_->SetBinContent(53, 6);
88  timingHisto_->SetBinContent(54, 6);
89  timingHisto_->SetBinContent(55, 6);
90  timingHisto_->SetBinContent(56, 4);
91  timingHisto_->SetBinContent(57, 5);
92  timingHisto_->SetBinContent(58, 9);
93  timingHisto_->SetBinContent(59, 3);
94  timingHisto_->SetBinContent(60, 3);
95  timingHisto_->SetBinContent(61, 8);
96  timingHisto_->SetBinContent(62, 7);
97  timingHisto_->SetBinContent(63, 5);
98  timingHisto_->SetBinContent(64, 7);
99  timingHisto_->SetBinContent(65, 5);
100  timingHisto_->SetBinContent(66, 5);
101  timingHisto_->SetBinContent(67, 4);
102  timingHisto_->SetBinContent(68, 2);
103  timingHisto_->SetBinContent(69, 2);
104  timingHisto_->SetBinContent(70, 4);
105  timingHisto_->SetBinContent(71, 5);
106  timingHisto_->SetBinContent(72, 4);
107  timingHisto_->SetBinContent(73, 5);
108  timingHisto_->SetBinContent(74, 3);
109  timingHisto_->SetBinContent(75, 5);
110  timingHisto_->SetBinContent(76, 3);
111  timingHisto_->SetBinContent(77, 9);
112  timingHisto_->SetBinContent(78, 2);
113  timingHisto_->SetBinContent(79, 2);
114  timingHisto_->SetBinContent(80, 5);
115  timingHisto_->SetBinContent(81, 5);
116  timingHisto_->SetBinContent(82, 5);
117  timingHisto_->SetBinContent(83, 5);
118  timingHisto_->SetBinContent(84, 4);
119  timingHisto_->SetBinContent(85, 4);
120  timingHisto_->SetBinContent(86, 9);
121  timingHisto_->SetBinContent(87, 5);
122  timingHisto_->SetBinContent(88, 4);
123  timingHisto_->SetBinContent(89, 4);
124  timingHisto_->SetBinContent(90, 5);
125  timingHisto_->SetBinContent(91, 3);
126  timingHisto_->SetBinContent(92, 3);
127  timingHisto_->SetBinContent(93, 3);
128  timingHisto_->SetBinContent(94, 7);
129  timingHisto_->SetBinContent(95, 5);
130  timingHisto_->SetBinContent(96, 6);
131  timingHisto_->SetBinContent(97, 2);
132  timingHisto_->SetBinContent(98, 3);
133  timingHisto_->SetBinContent(99, 5);
134  timingHisto_->SetBinContent(101, 147);
135  timingHisto_->SetEntries(24934);
136  }

◆ ~ExceptionGenerator()

evf::ExceptionGenerator::~ExceptionGenerator ( )
inlineoverride

Definition at line 20 of file ExceptionGenerator.h.

20 {};

Member Function Documentation

◆ analyze()

void evf::ExceptionGenerator::analyze ( const edm::Event e,
const edm::EventSetup c 
)
overridevirtual

◆ beginRun()

void evf::ExceptionGenerator::beginRun ( const edm::Run r,
const edm::EventSetup iSetup 
)
overridevirtual

Reimplemented from edm::stream::EDAnalyzerBase.

Definition at line 138 of file ExceptionGenerator.cc.

References tv_start_.

138  {
139  gettimeofday(&tv_start_, nullptr);
140  }

◆ endLuminosityBlock()

void evf::ExceptionGenerator::endLuminosityBlock ( edm::LuminosityBlock const &  lb,
edm::EventSetup const &  es 
)
overridevirtual

Reimplemented from edm::stream::EDAnalyzerBase.

Definition at line 253 of file ExceptionGenerator.cc.

253 {}

Member Data Documentation

◆ actionId_

int evf::ExceptionGenerator::actionId_
private

Definition at line 26 of file ExceptionGenerator.h.

◆ actionRequired_

bool evf::ExceptionGenerator::actionRequired_
private

Definition at line 30 of file ExceptionGenerator.h.

◆ intqualifier_

unsigned int evf::ExceptionGenerator::intqualifier_
private

Definition at line 27 of file ExceptionGenerator.h.

◆ menu

const std::string evf::ExceptionGenerator::menu[menu_items]
static

Definition at line 17 of file ExceptionGenerator.h.

◆ menu_items

const int evf::ExceptionGenerator::menu_items = 14
static

Definition at line 16 of file ExceptionGenerator.h.

◆ original_referrer_

std::string evf::ExceptionGenerator::original_referrer_
private

Definition at line 31 of file ExceptionGenerator.h.

◆ qualifier2_

double evf::ExceptionGenerator::qualifier2_
private

Definition at line 28 of file ExceptionGenerator.h.

◆ qualifier_

std::string evf::ExceptionGenerator::qualifier_
private

Definition at line 29 of file ExceptionGenerator.h.

◆ timingHisto_

TH1D* evf::ExceptionGenerator::timingHisto_
private

Definition at line 32 of file ExceptionGenerator.h.

Referenced by ExceptionGenerator().

◆ tv_start_

timeval evf::ExceptionGenerator::tv_start_
private

Definition at line 33 of file ExceptionGenerator.h.

Referenced by beginRun().