CMS 3D CMS Logo

Tracer.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: Services
4 // Class : Tracer
5 //
6 // Implementation:
7 // <Notes on implementation>
8 //
9 // Original Author: Chris Jones
10 // Created: Thu Sep 8 14:17:58 EDT 2005
11 //
13 
16 
25 
31 
40 
41 #include <iostream>
42 #include <vector>
43 
44 #include <string>
45 #include <set>
46 
47 namespace edm {
49  class GlobalContext;
50  class HLTPathStatus;
51  class LuminosityBlock;
52  class ModuleCallingContext;
53  class ModuleDescription;
54  class PathContext;
55  class PathsAndConsumesOfModulesBase;
56  class ProcessContext;
57  class Run;
58  class StreamContext;
59 
60  namespace service {
61  class Tracer {
62  public:
64 
65  static void fillDescriptions(edm::ConfigurationDescriptions & descriptions);
66 
68 
70  void postBeginJob();
71  void postEndJob();
72 
75 
76  void preSourceLumi();
77  void postSourceLumi();
78 
79  void preSourceRun();
80  void postSourceRun();
81 
82  void preOpenFile(std::string const&, bool);
83  void postOpenFile(std::string const&, bool);
84 
85  void preCloseFile(std::string const& lfn, bool primary);
86  void postCloseFile(std::string const&, bool);
87 
90 
93 
94  void preGlobalBeginRun(GlobalContext const&);
95  void postGlobalBeginRun(GlobalContext const&);
96 
97  void preGlobalEndRun(GlobalContext const&);
98  void postGlobalEndRun(GlobalContext const&);
99 
100  void preStreamBeginRun(StreamContext const&);
101  void postStreamBeginRun(StreamContext const&);
102 
103  void preStreamEndRun(StreamContext const&);
104  void postStreamEndRun(StreamContext const&);
105 
106  void preGlobalBeginLumi(GlobalContext const&);
107  void postGlobalBeginLumi(GlobalContext const&);
108 
109  void preGlobalEndLumi(GlobalContext const&);
110  void postGlobalEndLumi(GlobalContext const&);
111 
112  void preStreamBeginLumi(StreamContext const&);
113  void postStreamBeginLumi(StreamContext const&);
114 
115  void preStreamEndLumi(StreamContext const&);
116  void postStreamEndLumi(StreamContext const&);
117 
118  void preEvent(StreamContext const&);
119  void postEvent(StreamContext const&);
120 
121  void prePathEvent(StreamContext const&, PathContext const&);
122  void postPathEvent(StreamContext const&, PathContext const&, HLTPathStatus const&);
123 
126 
127  void preModuleBeginJob(ModuleDescription const& md);
128  void postModuleBeginJob(ModuleDescription const& md);
129 
130  void preModuleEndJob(ModuleDescription const& md);
131  void postModuleEndJob(ModuleDescription const& md);
132 
143 
148 
153 
158 
163 
166 
167  private:
169  std::set<std::string> dumpContextForLabels_;
173  };
174  }
175 }
176 
177 using namespace edm::service;
178 
179 namespace {
180 
181  class TimeStamper {
182  public:
183  TimeStamper(bool enable) :
184  enabled_(enable)
185  { }
186 
187  friend
188  std::ostream & operator<<(std::ostream & out, TimeStamper const & timestamp) {
189  if (timestamp.enabled_)
190  out << std::setprecision(2) << edm::TimeOfDay() << " ";
191  return out;
192  }
193 
194  private:
195  bool enabled_;
196  };
197 
198 }
199 
201  indention_(iPS.getUntrackedParameter<std::string>("indention")),
203  dumpNonModuleContext_(iPS.getUntrackedParameter<bool>("dumpNonModuleContext")),
204  dumpPathsAndConsumes_(iPS.getUntrackedParameter<bool>("dumpPathsAndConsumes")),
205  printTimestamps_(iPS.getUntrackedParameter<bool>("printTimestamps"))
206 {
207  for (std::string & label: iPS.getUntrackedParameter<std::vector<std::string>>("dumpContextForLabels"))
209 
210  iRegistry.watchPreallocate(this, &Tracer::preallocate);
211 
212  iRegistry.watchPreBeginJob(this, &Tracer::preBeginJob);
213  iRegistry.watchPostBeginJob(this, &Tracer::postBeginJob);
214  iRegistry.watchPostEndJob(this, &Tracer::postEndJob);
215 
218 
219  iRegistry.watchPreSourceLumi(this, &Tracer::preSourceLumi);
221 
222  iRegistry.watchPreSourceRun(this, &Tracer::preSourceRun);
223  iRegistry.watchPostSourceRun(this, &Tracer::postSourceRun);
224 
225  iRegistry.watchPreOpenFile(this, &Tracer::preOpenFile);
226  iRegistry.watchPostOpenFile(this, &Tracer::postOpenFile);
227 
228  iRegistry.watchPreCloseFile(this, &Tracer::preCloseFile);
229  iRegistry.watchPostCloseFile(this, &Tracer::postCloseFile);
230 
233 
236 
239 
242 
245 
248 
251 
254 
257 
260 
261  iRegistry.watchPreEvent(this, &Tracer::preEvent);
262  iRegistry.watchPostEvent(this, &Tracer::postEvent);
263 
264  iRegistry.watchPrePathEvent(this, &Tracer::prePathEvent);
265  iRegistry.watchPostPathEvent(this, &Tracer::postPathEvent);
266 
269 
272 
275 
286 
291 
296 
301 
306 
309 
311  LogAbsolute out("Tracer");
312  out << TimeStamper(printTimestamps_);
313  out << indention_ << indention_ << " early termination before processing transition";
314  });
315  iRegistry.preStreamEarlyTerminationSignal_.connect([this](edm::StreamContext const& iContext, edm::TerminationOrigin iOrigin) {
316  LogAbsolute out("Tracer");
317  out << TimeStamper(printTimestamps_);
318  if(iContext.eventID().luminosityBlock() ==0) {
319  out << indention_ << indention_ << " early termination of run: stream = " << iContext.streamID()
320  <<" run = " << iContext.eventID().run();
321  }else {
322  if(iContext.eventID().event() == 0) {
323  out << indention_ << indention_ << " early termination of stream lumi: stream = " << iContext.streamID()
324  <<" run = " << iContext.eventID().run()
325  << " lumi = " << iContext.eventID().luminosityBlock() ;
326  } else {
327  out << indention_ << indention_ << " early termination of event: stream = " << iContext.streamID()
328  <<" run = " << iContext.eventID().run()
329  << " lumi = " << iContext.eventID().luminosityBlock()
330  << " event = "<< iContext.eventID().event();
331 
332  }
333  }
334  out<< " : time = " << iContext.timestamp().value();
335 
336  });
337  iRegistry.preGlobalEarlyTerminationSignal_.connect([this](edm::GlobalContext const& iContext, edm::TerminationOrigin iOrigin) {
338  LogAbsolute out("Tracer");
339  out << TimeStamper(printTimestamps_);
340  if(iContext.luminosityBlockID().value() ==0) {
341  out << indention_ << indention_ << " early termination of global run " << iContext.luminosityBlockID().run();
342  }else {
343  out << indention_ << indention_ << " early termination of global lumi run = " << iContext.luminosityBlockID().run()
344  << " lumi = " << iContext.luminosityBlockID().luminosityBlock() ;
345 
346  }
347  out<< " : time = " << iContext.timestamp().value();
348  });
349 }
350 
351 void
354  desc.addUntracked<std::string>("indention", "++")->setComment("Prefix characters for output. The characters are repeated to form the indentation.");
355  desc.addUntracked<std::vector<std::string>>("dumpContextForLabels", std::vector<std::string>{})->setComment("Prints context information to cout for the module transitions associated with these modules' labels");
356  desc.addUntracked<bool>("dumpNonModuleContext", false)->setComment("Prints context information to cout for the transitions not associated with any module label");
357  desc.addUntracked<bool>("dumpPathsAndConsumes", false)->setComment("Prints information to cout about paths, endpaths, products consumed by modules and the dependencies between modules created by the products they consume");
358  desc.addUntracked<bool>("printTimestamps", false)->setComment("Prints a time stamp for every transition");
359  descriptions.add("Tracer", desc);
360  descriptions.setComment("This service prints each phase the framework is processing, e.g. constructing a module,running a module, etc.");
361 }
362 
363 void
365  LogAbsolute("Tracer") << TimeStamper(printTimestamps_) << indention_ << " preallocate: " << bounds.maxNumberOfConcurrentRuns() << " concurrent runs, "
366  << bounds.maxNumberOfConcurrentLuminosityBlocks() << " concurrent luminosity sections, "
367  << bounds.maxNumberOfStreams() << " streams";
368 }
369 
370 void
372  LogAbsolute out("Tracer");
373  out << TimeStamper(printTimestamps_) << indention_ << " starting: begin job";
375  out << "\n" << "Process name = " << pc.processName() << "\n";
376  out << "paths:\n";
377  std::vector<std::string> const& paths = pathsAndConsumes.paths();
378  for(auto const& path : paths) {
379  out << " " << path << "\n";
380  }
381  out << "end paths:\n";
382  std::vector<std::string> const& endpaths = pathsAndConsumes.endPaths();
383  for(auto const& endpath : endpaths) {
384  out << " " << endpath << "\n";
385  }
386  for(unsigned int j = 0; j < paths.size(); ++j) {
387  std::vector<ModuleDescription const*> const& modulesOnPath = pathsAndConsumes.modulesOnPath(j);
388  out << "modules on path " << paths.at(j) << ":\n";
389  for(auto const& desc : modulesOnPath) {
390  out << " " << desc->moduleLabel() << "\n";
391  }
392  }
393  for(unsigned int j = 0; j < endpaths.size(); ++j) {
394  std::vector<ModuleDescription const*> const& modulesOnEndPath = pathsAndConsumes.modulesOnEndPath(j);
395  out << "modules on end path " << endpaths.at(j) << ":\n";
396  for(auto const& desc : modulesOnEndPath) {
397  out << " " << desc->moduleLabel() << "\n";
398  }
399  }
400  std::vector<ModuleDescription const*> const& allModules = pathsAndConsumes.allModules();
401  out << "All modules and modules in the current process whose products they consume:\n";
402  out << "(This does not include modules from previous processes or the source)\n";
403  for(auto const& module : allModules) {
404  out << " " << module->moduleName() << "/\'" << module->moduleLabel() << "\'";
405  unsigned int moduleID = module->id();
406  if(pathsAndConsumes.moduleDescription(moduleID) != module) {
407  throw cms::Exception("TestFailure") << "Tracer::preBeginJob, moduleDescription returns incorrect value";
408  }
409  std::vector<ModuleDescription const*> const& modulesWhoseProductsAreConsumedBy =
410  pathsAndConsumes.modulesWhoseProductsAreConsumedBy(moduleID);
411  if(!modulesWhoseProductsAreConsumedBy.empty()) {
412  out << " consumes products from these modules:\n";
413  for(auto const& producingModule : modulesWhoseProductsAreConsumedBy) {
414  out << " " << producingModule->moduleName() << "/\'" << producingModule->moduleLabel() << "\'\n";
415  }
416  } else {
417  out << "\n";
418  }
419  }
420  out << "All modules (listed by class and label) and all their consumed products.\n";
421  out << "Consumed products are listed by type, label, instance, process.\n";
422  out << "For products not in the event, \'run\' or \'lumi\' is added to indicate the TTree they are from.\n";
423  out << "For products that are declared with mayConsume, \'may consume\' is added.\n";
424  out << "For products consumed for Views, \'element type\' is added\n";
425  out << "For products only read from previous processes, \'skip current process\' is added\n";
426  for(auto const* module : allModules) {
427  out << " " << module->moduleName() << "/\'" << module->moduleLabel() << "\'";
428  std::vector<ConsumesInfo> consumesInfo = pathsAndConsumes.consumesInfo(module->id());
429  if(!consumesInfo.empty()) {
430  out << " consumes:\n";
431  for(auto const& info : consumesInfo) {
432  out << " " << info.type() << " \'" << info.label() << "\' \'" << info.instance();
433  out << "\' \'" << info.process() << "\'";
434  if(info.branchType() == InLumi) {
435  out << ", lumi";
436  } else if(info.branchType() == InRun) {
437  out << ", run";
438  }
439  if(!info.alwaysGets()) {
440  out << ", may consume";
441  }
442  if(info.kindOfType() == ELEMENT_TYPE) {
443  out << ", element type";
444  }
445  if(info.skipCurrentProcess()) {
446  out << ", skip current process";
447  }
448  out << "\n";
449  }
450  } else {
451  out << "\n";
452  }
453  }
454  }
455 }
456 
457 void
459  LogAbsolute("Tracer") << TimeStamper(printTimestamps_) << indention_ << " finished: begin job";
460 }
461 
462 void
464  LogAbsolute("Tracer") << TimeStamper(printTimestamps_) << indention_ << " finished: end job";
465 }
466 
467 void
469  LogAbsolute("Tracer") << TimeStamper(printTimestamps_) << indention_ << indention_ << " starting: source event";
470 }
471 
472 void
474  LogAbsolute("Tracer") << TimeStamper(printTimestamps_) << indention_ << indention_ << " finished: source event";
475 }
476 
477 void
479  LogAbsolute("Tracer") << TimeStamper(printTimestamps_) << indention_ << indention_ << " starting: source lumi";
480 }
481 
482 void
484  LogAbsolute("Tracer") << TimeStamper(printTimestamps_) << indention_ << indention_ << " finished: source lumi";
485 }
486 
487 void
489  LogAbsolute("Tracer") << TimeStamper(printTimestamps_) << indention_ << indention_ << " starting: source run";
490 }
491 
492 void
494  LogAbsolute("Tracer") << TimeStamper(printTimestamps_) << indention_ << indention_ << " finished: source run";
495 }
496 
497 void
498 Tracer::preOpenFile(std::string const& lfn, bool b) {
499  LogAbsolute out("Tracer");
500  out << TimeStamper(printTimestamps_);
501  out << indention_ << indention_ << " starting: open input file: lfn = " << lfn;
502  if(dumpNonModuleContext_) out << " usedFallBack = " << b;
503 }
504 
505 void
506 Tracer::postOpenFile (std::string const& lfn, bool b) {
507  LogAbsolute out("Tracer");
508  out << TimeStamper(printTimestamps_);
509  out << indention_ << indention_ << " finished: open input file: lfn = " << lfn;
510  if(dumpNonModuleContext_) out << " usedFallBack = " << b;
511 }
512 
513 void
514 Tracer::preCloseFile(std::string const & lfn, bool b) {
515  LogAbsolute out("Tracer");
516  out << TimeStamper(printTimestamps_);
517  out << indention_ << indention_ << " starting: close input file: lfn = " << lfn;
518  if(dumpNonModuleContext_) out << " usedFallBack = " << b;
519 }
520 void
521 Tracer::postCloseFile (std::string const& lfn, bool b) {
522  LogAbsolute out("Tracer");
523  out << TimeStamper(printTimestamps_);
524  out << indention_ << indention_ << " finished: close input file: lfn = " << lfn;
525  if(dumpNonModuleContext_) out << " usedFallBack = " << b;
526 }
527 
528 void
530  ModuleDescription const& desc = *mcc.moduleDescription();
531  LogAbsolute out("Tracer");
532  out << TimeStamper(printTimestamps_);
533  out << indention_ << indention_ << " starting: begin stream for module: stream = " << sc.streamID() << " label = '" << desc.moduleLabel() << "' id = " << desc.id();
534  if(dumpContextForLabels_.find(desc.moduleLabel()) != dumpContextForLabels_.end()) {
535  out << "\n" << sc;
536  out << mcc;
537  }
538 }
539 
540 void
542  ModuleDescription const& desc = *mcc.moduleDescription();
543  LogAbsolute out("Tracer");
544  out << TimeStamper(printTimestamps_);
545  out << indention_ << indention_ << " finished: begin stream for module: stream = " << sc.streamID() << " label = '" << desc.moduleLabel() << "' id = " << desc.id();
546  if(dumpContextForLabels_.find(desc.moduleLabel()) != dumpContextForLabels_.end()) {
547  out << "\n" << sc;
548  out << mcc;
549  }
550 }
551 
552 void
554  ModuleDescription const& desc = *mcc.moduleDescription();
555  LogAbsolute out("Tracer");
556  out << TimeStamper(printTimestamps_);
557  out << indention_ << indention_ << " starting: end stream for module: stream = " << sc.streamID() << " label = '" << desc.moduleLabel() << "' id = " << desc.id();
558  if(dumpContextForLabels_.find(desc.moduleLabel()) != dumpContextForLabels_.end()) {
559  out << "\n" << sc;
560  out << mcc;
561  }
562 }
563 
564 void
566  ModuleDescription const& desc = *mcc.moduleDescription();
567  LogAbsolute out("Tracer");
568  out << TimeStamper(printTimestamps_);
569  out << indention_ << indention_ << " finished: end stream for module: stream = " << sc.streamID() << " label = '" << desc.moduleLabel() << "' id = " << desc.id();
570  if(dumpContextForLabels_.find(desc.moduleLabel()) != dumpContextForLabels_.end()) {
571  out << "\n" << sc;
572  out << mcc;
573  }
574 }
575 
576 void
578  LogAbsolute out("Tracer");
579  out << TimeStamper(printTimestamps_);
580  out << indention_ << indention_ << " starting: global begin run " << gc.luminosityBlockID().run()
581  << " : time = " << gc.timestamp().value();
583  out << "\n" << gc;
584  }
585 }
586 
587 void
589  LogAbsolute out("Tracer");
590  out << TimeStamper(printTimestamps_);
591  out << indention_ << indention_ << " finished: global begin run " << gc.luminosityBlockID().run()
592  << " : time = " << gc.timestamp().value();
594  out << "\n" << gc;
595  }
596 }
597 
598 void
600  LogAbsolute out("Tracer");
601  out << TimeStamper(printTimestamps_);
602  out << indention_ << indention_ << " starting: global end run " << gc.luminosityBlockID().run()
603  << " : time = " << gc.timestamp().value();
605  out << "\n" << gc;
606  }
607 }
608 
609 void
611  LogAbsolute out("Tracer");
612  out << TimeStamper(printTimestamps_);
613  out << indention_ << indention_ << " finished: global end run " << gc.luminosityBlockID().run()
614  << " : time = " << gc.timestamp().value();
616  out << "\n" << gc;
617  }
618 }
619 
620 void
622  LogAbsolute out("Tracer");
623  out << TimeStamper(printTimestamps_);
624  out << indention_ << indention_ << " starting: begin run: stream = " << sc.streamID() << " run = " << sc.eventID().run()
625  << " time = " << sc.timestamp().value();
627  out << "\n" << sc;
628  }
629 }
630 
631 void
633  LogAbsolute out("Tracer");
634  out << TimeStamper(printTimestamps_);
635  out << indention_ << indention_ << " finished: begin run: stream = " << sc.streamID() << " run = " << sc.eventID().run()
636  << " time = " << sc.timestamp().value();
638  out << "\n" << sc;
639  }
640 }
641 
642 void
644  LogAbsolute out("Tracer");
645  out << TimeStamper(printTimestamps_);
646  out << indention_ << indention_ << " starting: end run: stream = " << sc.streamID() << " run = " << sc.eventID().run()
647  << " time = " << sc.timestamp().value();
649  out << "\n" << sc;
650  }
651 }
652 
653 void
655  LogAbsolute out("Tracer");
656  out << TimeStamper(printTimestamps_);
657  out << indention_ << indention_ << " finished: end run: stream = " << sc.streamID() << " run = " << sc.eventID().run()
658  << " time = " << sc.timestamp().value();
660  out << "\n" << sc;
661  }
662 }
663 
664 void
666  LogAbsolute out("Tracer");
667  out << TimeStamper(printTimestamps_);
668  out << indention_ << indention_ << " starting: global begin lumi: run = " << gc.luminosityBlockID().run()
669  << " lumi = " << gc.luminosityBlockID().luminosityBlock() << " time = " << gc.timestamp().value();
671  out << "\n" << gc;
672  }
673 }
674 
675 void
677  LogAbsolute out("Tracer");
678  out << TimeStamper(printTimestamps_);
679  out << indention_ << indention_ << " finished: global begin lumi: run = " << gc.luminosityBlockID().run()
680  << " lumi = " << gc.luminosityBlockID().luminosityBlock() << " time = " << gc.timestamp().value();
682  out << "\n" << gc;
683  }
684 }
685 
686 void
688  LogAbsolute out("Tracer");
689  out << TimeStamper(printTimestamps_);
690  out << indention_ << indention_ << " starting: global end lumi: run = " << gc.luminosityBlockID().run()
691  << " lumi = " << gc.luminosityBlockID().luminosityBlock() << " time = " << gc.timestamp().value();
693  out << "\n" << gc;
694  }
695 }
696 
697 void
699  LogAbsolute out("Tracer");
700  out << TimeStamper(printTimestamps_);
701  out << indention_ << indention_ << " finished: global end lumi: run = " << gc.luminosityBlockID().run()
702  << " lumi = " << gc.luminosityBlockID().luminosityBlock() << " time = " << gc.timestamp().value();
704  out << "\n" << gc;
705  }
706 }
707 
708 void
710  LogAbsolute out("Tracer");
711  out << TimeStamper(printTimestamps_);
712  out << indention_ << indention_ << " starting: begin lumi: stream = " << sc.streamID() << " run = " << sc.eventID().run()
713  << " lumi = " << sc.eventID().luminosityBlock() << " time = " << sc.timestamp().value();
715  out << "\n" << sc;
716  }
717 }
718 
719 void
721  LogAbsolute out("Tracer");
722  out << TimeStamper(printTimestamps_);
723  out << indention_ << indention_ << " finished: begin lumi: stream = " << sc.streamID() << " run = " << sc.eventID().run()
724  << " lumi = " << sc.eventID().luminosityBlock() << " time = " << sc.timestamp().value();
726  out << "\n" << sc;
727  }
728 }
729 
730 void
732  LogAbsolute out("Tracer");
733  out << TimeStamper(printTimestamps_);
734  out << indention_ << indention_ << " starting: end lumi: stream = " << sc.streamID() << " run = " << sc.eventID().run()
735  << " lumi = " << sc.eventID().luminosityBlock() << " time = " << sc.timestamp().value();
737  out << "\n" << sc;
738  }
739 }
740 
741 void
743  LogAbsolute out("Tracer");
744  out << TimeStamper(printTimestamps_);
745  out << indention_ << indention_ << " finished: end lumi: stream = " << sc.streamID() << " run = " << sc.eventID().run()
746  << " lumi = " << sc.eventID().luminosityBlock() << " time = " << sc.timestamp().value();
748  out << "\n" << sc;
749  }
750 }
751 
752 void
754  LogAbsolute out("Tracer");
755  out << TimeStamper(printTimestamps_);
756  out << indention_ << indention_ << " starting: processing event : stream = " << sc.streamID() << " run = " << sc.eventID().run()
757  << " lumi = " << sc.eventID().luminosityBlock() << " event = " << sc.eventID().event() << " time = " << sc.timestamp().value();
759  out << "\n" << sc;
760  }
761 }
762 
763 void
765  LogAbsolute out("Tracer");
766  out << TimeStamper(printTimestamps_);
767  out << indention_ << indention_ << " finished: processing event : stream = " << sc.streamID() << " run = " << sc.eventID().run()
768  << " lumi = " << sc.eventID().luminosityBlock() << " event = " << sc.eventID().event() << " time = " << sc.timestamp().value();
770  out << "\n" << sc;
771  }
772 }
773 
774 void
776  LogAbsolute out("Tracer");
777  out << TimeStamper(printTimestamps_);
778  out << indention_ << indention_ << indention_ << " starting: processing path '" << pc.pathName() << "' : stream = " << sc.streamID();
780  out << "\n" << sc;
781  out << pc;
782  }
783 }
784 
785 void
787  LogAbsolute out("Tracer");
788  out << TimeStamper(printTimestamps_);
789  out << indention_ << indention_ << indention_ << " finished: processing path '" << pc.pathName() << "' : stream = " << sc.streamID();
791  out << "\n" << sc;
792  out << pc;
793  }
794 }
795 
796 void
798  LogAbsolute out("Tracer");
799  out << TimeStamper(printTimestamps_);
800  out << indention_ << indention_ << " starting: constructing module with label '" << desc.moduleLabel() << "' id = " << desc.id();
801  if(dumpContextForLabels_.find(desc.moduleLabel()) != dumpContextForLabels_.end()) {
802  out << "\n" << desc;
803  }
804 }
805 
806 void
808  LogAbsolute out("Tracer");
809  out << TimeStamper(printTimestamps_);
810  out << indention_ << indention_ << " finished: constructing module with label '" << desc.moduleLabel() << "' id = " << desc.id();
811  if(dumpContextForLabels_.find(desc.moduleLabel()) != dumpContextForLabels_.end()) {
812  out << "\n" << desc;
813  }
814 }
815 
816 void
818  LogAbsolute out("Tracer");
819  out << TimeStamper(printTimestamps_);
820  out << indention_ << indention_;
821  out << " starting: begin job for module with label '" << desc.moduleLabel() << "' id = " << desc.id();
822  if(dumpContextForLabels_.find(desc.moduleLabel()) != dumpContextForLabels_.end()) {
823  out << "\n" << desc;
824  }
825 }
826 
827 void
829  LogAbsolute out("Tracer");
830  out << TimeStamper(printTimestamps_);
831  out << indention_ << indention_;
832  out << " finished: begin job for module with label '" << desc.moduleLabel() << "' id = " << desc.id();
833  if(dumpContextForLabels_.find(desc.moduleLabel()) != dumpContextForLabels_.end()) {
834  out << "\n" << desc;
835  }
836 }
837 
838 void
840  LogAbsolute out("Tracer");
841  out << TimeStamper(printTimestamps_);
842  out << indention_ << indention_;
843  out << " starting: end job for module with label '" << desc.moduleLabel() << "' id = " << desc.id();
844  if(dumpContextForLabels_.find(desc.moduleLabel()) != dumpContextForLabels_.end()) {
845  out << "\n" << desc;
846  }
847 }
848 
849 void
851  LogAbsolute out("Tracer");
852  out << TimeStamper(printTimestamps_);
853  out << indention_ << indention_;
854  out << " finished: end job for module with label '" << desc.moduleLabel() << "' id = " << desc.id();
855  if(dumpContextForLabels_.find(desc.moduleLabel()) != dumpContextForLabels_.end()) {
856  out << "\n" << desc;
857  }
858 }
859 
860 void
862  LogAbsolute out("Tracer");
863  out << TimeStamper(printTimestamps_);
864  unsigned int nIndents = mcc.depth() + 4;
865  for(unsigned int i = 0; i < nIndents; ++i) {
866  out << indention_;
867  }
868  out << " starting: prefetching before processing event for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
870  out << "\n" << sc;
871  out << mcc;
872  }
873 }
874 
875 void
877  LogAbsolute out("Tracer");
878  out << TimeStamper(printTimestamps_);
879  unsigned int nIndents = mcc.depth() + 4;
880  for(unsigned int i = 0; i < nIndents; ++i) {
881  out << indention_;
882  }
883  out << " finished: prefetching before processing event for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
885  out << "\n" << sc;
886  out << mcc;
887  }
888 }
889 
890 
891 void
893  LogAbsolute out("Tracer");
894  out << TimeStamper(printTimestamps_);
895  unsigned int nIndents = mcc.depth() + 4;
896  for(unsigned int i = 0; i < nIndents; ++i) {
897  out << indention_;
898  }
899  out << " starting: processing event for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
901  out << "\n" << sc;
902  out << mcc;
903  }
904 }
905 
906 void
908  LogAbsolute out("Tracer");
909  out << TimeStamper(printTimestamps_);
910  unsigned int nIndents = mcc.depth() + 4;
911  for(unsigned int i = 0; i < nIndents; ++i) {
912  out << indention_;
913  }
914  out << " finished: processing event for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
916  out << "\n" << sc;
917  out << mcc;
918  }
919 }
920 
921 void
923  LogAbsolute out("Tracer");
924  out << TimeStamper(printTimestamps_);
925  unsigned int nIndents = mcc.depth() + 4;
926  for(unsigned int i = 0; i < nIndents; ++i) {
927  out << indention_;
928  }
929  out << " starting: processing event acquire for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
930 }
931 
932 void
934  LogAbsolute out("Tracer");
935  out << TimeStamper(printTimestamps_);
936  unsigned int nIndents = mcc.depth() + 4;
937  for(unsigned int i = 0; i < nIndents; ++i) {
938  out << indention_;
939  }
940  out << " finished: processing event acquire for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
941 }
942 
943 void
945  LogAbsolute out("Tracer");
946  out << TimeStamper(printTimestamps_);
947  unsigned int nIndents = mcc.depth() + 4;
948  for(unsigned int i = 0; i < nIndents; ++i) {
949  out << indention_;
950  }
951  out << " starting: delayed processing event for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
953  out << "\n" << sc;
954  out << mcc;
955  }
956 }
957 
958 void
960  LogAbsolute out("Tracer");
961  out << TimeStamper(printTimestamps_);
962  unsigned int nIndents = mcc.depth() + 4;
963  for(unsigned int i = 0; i < nIndents; ++i) {
964  out << indention_;
965  }
966  out << " finished: delayed processing event for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
968  out << "\n" << sc;
969  out << mcc;
970  }
971 }
972 
973 void
975  LogAbsolute out("Tracer");
976  out << TimeStamper(printTimestamps_);
977  unsigned int nIndents = mcc.depth() + 5;
978  for(unsigned int i = 0; i < nIndents; ++i) {
979  out << indention_;
980  }
981  out << " starting: event delayed read from source: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
982 }
983 
984 void
986  LogAbsolute out("Tracer");
987  out << TimeStamper(printTimestamps_);
988  unsigned int nIndents = mcc.depth() + 5;
989  for(unsigned int i = 0; i < nIndents; ++i) {
990  out << indention_;
991  }
992  out << " finished: event delayed read from source: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
993 }
994 
995 
996 void
998  LogAbsolute out("Tracer");
999  out << TimeStamper(printTimestamps_);
1000  unsigned int nIndents = mcc.depth() + 3;
1001  for(unsigned int i = 0; i < nIndents; ++i) {
1002  out << indention_;
1003  }
1004  out << " starting: begin run for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1006  out << "\n" << sc;
1007  out << mcc;
1008  }
1009 }
1010 
1011 void
1013  LogAbsolute out("Tracer");
1014  out << TimeStamper(printTimestamps_);
1015  unsigned int nIndents = mcc.depth() + 3;
1016  for(unsigned int i = 0; i < nIndents; ++i) {
1017  out << indention_;
1018  }
1019  out << " finished: begin run for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1021  out << "\n" << sc;
1022  out << mcc;
1023  }
1024 }
1025 
1026 void
1028  LogAbsolute out("Tracer");
1029  out << TimeStamper(printTimestamps_);
1030  unsigned int nIndents = mcc.depth() + 3;
1031  for(unsigned int i = 0; i < nIndents; ++i) {
1032  out << indention_;
1033  }
1034  out << " starting: end run for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1036  out << "\n" << sc;
1037  out << mcc;
1038  }
1039 }
1040 
1041 void
1043  LogAbsolute out("Tracer");
1044  out << TimeStamper(printTimestamps_);
1045  unsigned int nIndents = mcc.depth() + 3;
1046  for(unsigned int i = 0; i < nIndents; ++i) {
1047  out << indention_;
1048  }
1049  out << " finished: end run for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1051  out << "\n" << sc;
1052  out << mcc;
1053  }
1054 }
1055 
1056 void
1058  LogAbsolute out("Tracer");
1059  out << TimeStamper(printTimestamps_);
1060  unsigned int nIndents = mcc.depth() + 3;
1061  for(unsigned int i = 0; i < nIndents; ++i) {
1062  out << indention_;
1063  }
1064  out << " starting: begin lumi for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1066  out << "\n" << sc;
1067  out << mcc;
1068  }
1069 }
1070 
1071 void
1073  LogAbsolute out("Tracer");
1074  out << TimeStamper(printTimestamps_);
1075  unsigned int nIndents = mcc.depth() + 3;
1076  for(unsigned int i = 0; i < nIndents; ++i) {
1077  out << indention_;
1078  }
1079  out << " finished: begin lumi for module: stream = " << sc.streamID() << " label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1081  out << "\n" << sc;
1082  out << mcc;
1083  }
1084 }
1085 
1086 void
1088  LogAbsolute out("Tracer");
1089  out << TimeStamper(printTimestamps_);
1090  unsigned int nIndents = mcc.depth() + 3;
1091  for(unsigned int i = 0; i < nIndents; ++i) {
1092  out << indention_;
1093  }
1094  out << " starting: end lumi for module: stream = " << sc.streamID() << " label = '"<< mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1096  out << "\n" << sc;
1097  out << mcc;
1098  }
1099 }
1100 
1101 void
1103  LogAbsolute out("Tracer");
1104  out << TimeStamper(printTimestamps_);
1105  unsigned int nIndents = mcc.depth() + 3;
1106  for(unsigned int i = 0; i < nIndents; ++i) {
1107  out << indention_;
1108  }
1109  out << " finished: end lumi for module: stream = " << sc.streamID() << " label = '"<< mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1111  out << "\n" << sc;
1112  out << mcc;
1113  }
1114 }
1115 
1116 void
1118  LogAbsolute out("Tracer");
1119  out << TimeStamper(printTimestamps_);
1120  unsigned int nIndents = mcc.depth() + 3;
1121  for(unsigned int i = 0; i < nIndents; ++i) {
1122  out << indention_;
1123  }
1124  out << " starting: global begin run for module: label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1126  out << "\n" << gc;
1127  out << mcc;
1128  }
1129 }
1130 
1131 void
1133  LogAbsolute out("Tracer");
1134  out << TimeStamper(printTimestamps_);
1135  unsigned int nIndents = mcc.depth() + 3;
1136  for(unsigned int i = 0; i < nIndents; ++i) {
1137  out << indention_;
1138  }
1139  out << " finished: global begin run for module: label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1141  out << "\n" << gc;
1142  out << mcc;
1143  }
1144 }
1145 
1146 void
1148  LogAbsolute out("Tracer");
1149  out << TimeStamper(printTimestamps_);
1150  unsigned int nIndents = mcc.depth() + 3;
1151  for(unsigned int i = 0; i < nIndents; ++i) {
1152  out << indention_;
1153  }
1154  out << " starting: global end run for module: label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1156  out << "\n" << gc;
1157  out << mcc;
1158  }
1159 }
1160 
1161 void
1163  LogAbsolute out("Tracer");
1164  out << TimeStamper(printTimestamps_);
1165  unsigned int nIndents = mcc.depth() + 3;
1166  for(unsigned int i = 0; i < nIndents; ++i) {
1167  out << indention_;
1168  }
1169  out << " finished: global end run for module: label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1171  out << "\n" << gc;
1172  out << mcc;
1173  }
1174 }
1175 
1176 void
1178  LogAbsolute out("Tracer");
1179  out << TimeStamper(printTimestamps_);
1180  unsigned int nIndents = mcc.depth() + 3;
1181  for(unsigned int i = 0; i < nIndents; ++i) {
1182  out << indention_;
1183  }
1184  out << " starting: global begin lumi for module: label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1186  out << "\n" << gc;
1187  out << mcc;
1188  }
1189 }
1190 
1191 void
1193  LogAbsolute out("Tracer");
1194  out << TimeStamper(printTimestamps_);
1195  unsigned int nIndents = mcc.depth() + 3;
1196  for(unsigned int i = 0; i < nIndents; ++i) {
1197  out << indention_;
1198  }
1199  out << " finished: global begin lumi for module: label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1201  out << "\n" << gc;
1202  out << mcc;
1203  }
1204 }
1205 
1206 void
1208  LogAbsolute out("Tracer");
1209  out << TimeStamper(printTimestamps_);
1210  unsigned int nIndents = mcc.depth() + 3;
1211  for(unsigned int i = 0; i < nIndents; ++i) {
1212  out << indention_;
1213  }
1214  out << " starting: global end lumi for module: label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1216  out << "\n" << gc;
1217  out << mcc;
1218  }
1219 }
1220 
1221 void
1223  LogAbsolute out("Tracer");
1224  out << TimeStamper(printTimestamps_);
1225  unsigned int nIndents = mcc.depth() + 3;
1226  for(unsigned int i = 0; i < nIndents; ++i) {
1227  out << indention_;
1228  }
1229  out << " finished: global end lumi for module: label = '" << mcc.moduleDescription()->moduleLabel() << "' id = " << mcc.moduleDescription()->id();
1231  out << "\n" << gc;
1232  out << mcc;
1233  }
1234 }
1235 
1236 void
1238  LogAbsolute out("Tracer");
1239  out << TimeStamper(printTimestamps_);
1240  out << indention_;
1241  out << " starting: constructing source: " << desc.moduleName();
1242  if(dumpNonModuleContext_) {
1243  out << "\n" << desc;
1244  }
1245 }
1246 
1247 void
1249  LogAbsolute out("Tracer");
1250  out << TimeStamper(printTimestamps_);
1251  out << indention_;
1252  out << " finished: constructing source: " << desc.moduleName();
1253  if(dumpNonModuleContext_) {
1254  out << "\n" << desc;
1255  }
1256 }
1257 
1258 using edm::service::Tracer;
1260 
1261 
void preCloseFile(std::string const &lfn, bool primary)
Definition: Tracer.cc:514
RunNumber_t run() const
Definition: EventID.h:39
void watchPostModuleGlobalEndLumi(PostModuleGlobalEndLumi::slot_type const &iSlot)
void watchPostModuleConstruction(PostModuleConstruction::slot_type const &iSlot)
std::string const & pathName() const
Definition: PathContext.h:37
EventNumber_t event() const
Definition: EventID.h:41
void watchPreModuleGlobalBeginRun(PreModuleGlobalBeginRun::slot_type const &iSlot)
void postEventReadFromSource(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:985
T getUntrackedParameter(std::string const &, T const &) const
void watchPreEvent(PreEvent::slot_type const &iSlot)
void postSourceRun()
Definition: Tracer.cc:493
std::string const & processName() const
static const TGPicture * info(bool iBackgroundIsBlack)
boost::uint64_t value() const
void watchPrePathEvent(PrePathEvent::slot_type const &iSlot)
void postModuleGlobalBeginRun(GlobalContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1132
void watchPreallocate(Preallocate::slot_type const &iSlot)
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
void postModuleGlobalBeginLumi(GlobalContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1192
void watchPreModuleEventAcquire(PreModuleEventAcquire::slot_type const &iSlot)
void postModuleStreamEndLumi(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1102
void postModuleEventAcquire(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:933
void watchPostEndJob(PostEndJob::slot_type const &iSlot)
void preModuleGlobalBeginLumi(GlobalContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1177
void postModuleConstruction(ModuleDescription const &md)
Definition: Tracer.cc:807
void postModuleEndStream(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:565
std::vector< ConsumesInfo > consumesInfo(unsigned int moduleID) const
void postModuleGlobalEndLumi(GlobalContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1222
void watchPostModuleEndStream(PostModuleEndStream::slot_type const &iSlot)
void watchPreModuleEvent(PreModuleEvent::slot_type const &iSlot)
void watchPreModuleConstruction(PreModuleConstruction::slot_type const &iSlot)
void watchPreGlobalEndLumi(PreGlobalEndLumi::slot_type const &iSlot)
void watchPostEvent(PostEvent::slot_type const &iSlot)
void preallocate(service::SystemBounds const &)
Definition: Tracer.cc:364
LuminosityBlockID const & luminosityBlockID() const
Definition: GlobalContext.h:52
void postStreamBeginLumi(StreamContext const &)
Definition: Tracer.cc:720
void watchPreStreamEndRun(PreStreamEndRun::slot_type const &iSlot)
void watchPreSourceConstruction(PreSourceConstruction::slot_type const &iSlot)
void preModuleGlobalEndLumi(GlobalContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1207
void watchPostSourceConstruction(PostSourceConstruction::slot_type const &iSlot)
void watchPostStreamEndLumi(PostStreamEndLumi::slot_type const &iSlot)
void watchPreGlobalBeginLumi(PreGlobalBeginLumi::slot_type const &iSlot)
std::vector< ModuleDescription const * > const & modulesOnEndPath(unsigned int endPathIndex) const
void watchPreEventReadFromSource(PreEventReadFromSource::slot_type const &iSlot)
std::string const & moduleName() const
void watchPostPathEvent(PostPathEvent::slot_type const &iSlot)
void watchPostModuleEvent(PostModuleEvent::slot_type const &iSlot)
void preModuleStreamBeginLumi(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1057
void watchPostModuleGlobalBeginLumi(PostModuleGlobalBeginLumi::slot_type const &iSlot)
void watchPostModuleStreamEndLumi(PostModuleStreamEndLumi::slot_type const &iSlot)
void preGlobalEndLumi(GlobalContext const &)
Definition: Tracer.cc:687
void preModuleEndJob(ModuleDescription const &md)
Definition: Tracer.cc:839
void watchPostGlobalBeginLumi(PostGlobalBeginLumi::slot_type const &iSlot)
void watchPostModuleStreamBeginRun(PostModuleStreamBeginRun::slot_type const &iSlot)
void watchPostSourceEvent(PostSourceEvent::slot_type const &iSlot)
void preModuleConstruction(ModuleDescription const &md)
Definition: Tracer.cc:797
std::vector< ModuleDescription const * > const & modulesOnPath(unsigned int pathIndex) const
void preBeginJob(PathsAndConsumesOfModulesBase const &, ProcessContext const &)
Definition: Tracer.cc:371
void watchPreModuleBeginStream(PreModuleBeginStream::slot_type const &iSlot)
void postStreamEndRun(StreamContext const &)
Definition: Tracer.cc:654
void postGlobalEndLumi(GlobalContext const &)
Definition: Tracer.cc:698
LuminosityBlockNumber_t luminosityBlock() const
Definition: EventID.h:40
void postModuleBeginJob(ModuleDescription const &md)
Definition: Tracer.cc:828
void watchPreStreamEndLumi(PreStreamEndLumi::slot_type const &iSlot)
void postModuleStreamEndRun(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1042
std::string const & moduleLabel() const
void watchPreModuleGlobalEndRun(PreModuleGlobalEndRun::slot_type const &iSlot)
void watchPreModuleEventPrefetching(PreModuleEventPrefetching::slot_type const &iSlot)
void postCloseFile(std::string const &, bool)
Definition: Tracer.cc:521
std::vector< ModuleDescription const * > const & allModules() const
Timestamp const & timestamp() const
Definition: GlobalContext.h:55
void preStreamEndLumi(StreamContext const &)
Definition: Tracer.cc:731
void watchPostModuleEventPrefetching(PostModuleEventPrefetching::slot_type const &iSlot)
std::vector< std::string > const & endPaths() const
void preOpenFile(std::string const &, bool)
Definition: Tracer.cc:498
unsigned int maxNumberOfStreams() const
Definition: SystemBounds.h:43
void watchPreOpenFile(PreOpenFile::slot_type const &iSlot)
void watchPostGlobalBeginRun(PostGlobalBeginRun::slot_type const &iSlot)
void watchPostCloseFile(PostCloseFile::slot_type const &iSlot)
void watchPreGlobalEndRun(PreGlobalEndRun::slot_type const &iSlot)
void preGlobalBeginRun(GlobalContext const &)
Definition: Tracer.cc:577
PreStreamEarlyTermination preStreamEarlyTerminationSignal_
PreSourceEarlyTermination preSourceEarlyTerminationSignal_
void preSourceEvent(StreamID)
Definition: Tracer.cc:468
void preGlobalEndRun(GlobalContext const &)
Definition: Tracer.cc:599
void watchPostSourceRun(PostSourceRun::slot_type const &iSlot)
void watchPostStreamBeginLumi(PostStreamBeginLumi::slot_type const &iSlot)
void preModuleStreamEndLumi(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1087
Tracer(const ParameterSet &, ActivityRegistry &)
Definition: Tracer.cc:200
void preModuleStreamBeginRun(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:997
void watchPreSourceLumi(PreSourceLumi::slot_type const &iSlot)
ModuleDescription const * moduleDescription(unsigned int moduleID) const
void prePathEvent(StreamContext const &, PathContext const &)
Definition: Tracer.cc:775
void watchPreModuleEventDelayedGet(PreModuleEventDelayedGet::slot_type const &iSlot)
void postModuleEventPrefetching(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:876
ModuleDescription const * moduleDescription() const
void postModuleStreamBeginLumi(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1072
RunNumber_t run() const
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: Tracer.cc:352
void watchPostModuleEventAcquire(PostModuleEventAcquire::slot_type const &iSlot)
bool dumpPathsAndConsumes_
Definition: Tracer.cc:171
void watchPreModuleEndJob(PreModuleEndJob::slot_type const &iSlot)
void watchPostGlobalEndLumi(PostGlobalEndLumi::slot_type const &iSlot)
void watchPreSourceRun(PreSourceRun::slot_type const &iSlot)
void preModuleGlobalEndRun(GlobalContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1147
void postStreamBeginRun(StreamContext const &)
Definition: Tracer.cc:632
std::ostream & operator<<(std::ostream &os, SimpleMemoryCheck::SignificantEvent const &se)
void watchPreModuleBeginJob(PreModuleBeginJob::slot_type const &iSlot)
void preStreamEndRun(StreamContext const &)
Definition: Tracer.cc:643
void watchPostStreamEndRun(PostStreamEndRun::slot_type const &iSlot)
void postOpenFile(std::string const &, bool)
Definition: Tracer.cc:506
void preEventReadFromSource(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:974
PreGlobalEarlyTermination preGlobalEarlyTerminationSignal_
void watchPreModuleGlobalBeginLumi(PreModuleGlobalBeginLumi::slot_type const &iSlot)
void watchPostModuleStreamEndRun(PostModuleStreamEndRun::slot_type const &iSlot)
void postPathEvent(StreamContext const &, PathContext const &, HLTPathStatus const &)
Definition: Tracer.cc:786
StreamID const & streamID() const
Definition: StreamContext.h:57
void watchPreGlobalBeginRun(PreGlobalBeginRun::slot_type const &iSlot)
void watchPreModuleStreamBeginLumi(PreModuleStreamBeginLumi::slot_type const &iSlot)
#define DEFINE_FWK_SERVICE(type)
Definition: ServiceMaker.h:113
void setComment(std::string const &value)
void postModuleEventDelayedGet(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:959
void watchPostModuleBeginStream(PostModuleBeginStream::slot_type const &iSlot)
unsigned int maxNumberOfConcurrentLuminosityBlocks() const
Definition: SystemBounds.h:45
void watchPostSourceLumi(PostSourceLumi::slot_type const &iSlot)
void watchPreCloseFile(PreCloseFile::slot_type const &iSlot)
void watchPostModuleEventDelayedGet(PostModuleEventDelayedGet::slot_type const &iSlot)
void watchPostModuleGlobalEndRun(PostModuleGlobalEndRun::slot_type const &iSlot)
void watchPostModuleStreamBeginLumi(PostModuleStreamBeginLumi::slot_type const &iSlot)
void preSourceLumi()
Definition: Tracer.cc:478
void postSourceEvent(StreamID)
Definition: Tracer.cc:473
std::string indention_
Definition: Tracer.cc:168
void watchPreModuleStreamEndLumi(PreModuleStreamEndLumi::slot_type const &iSlot)
void watchPreModuleStreamBeginRun(PreModuleStreamBeginRun::slot_type const &iSlot)
void watchPostGlobalEndRun(PostGlobalEndRun::slot_type const &iSlot)
double b
Definition: hdecay.h:120
LuminosityBlockNumber_t luminosityBlock() const
void watchPreStreamBeginLumi(PreStreamBeginLumi::slot_type const &iSlot)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
void watchPostOpenFile(PostOpenFile::slot_type const &iSlot)
void watchPreModuleEndStream(PreModuleEndStream::slot_type const &iSlot)
std::vector< ModuleDescription const * > const & modulesWhoseProductsAreConsumedBy(unsigned int moduleID) const
void preSourceConstruction(ModuleDescription const &md)
Definition: Tracer.cc:1237
void watchPreBeginJob(PreBeginJob::slot_type const &iSlot)
convenience function for attaching to signal
void preModuleEventPrefetching(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:861
void preModuleEvent(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:892
void preModuleBeginStream(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:529
void watchPostStreamBeginRun(PostStreamBeginRun::slot_type const &iSlot)
void postGlobalBeginRun(GlobalContext const &)
Definition: Tracer.cc:588
void postGlobalEndRun(GlobalContext const &)
Definition: Tracer.cc:610
void postGlobalBeginLumi(GlobalContext const &)
Definition: Tracer.cc:676
HLT enums.
void watchPreStreamBeginRun(PreStreamBeginRun::slot_type const &iSlot)
std::vector< std::string > const & paths() const
void watchPreModuleStreamEndRun(PreModuleStreamEndRun::slot_type const &iSlot)
void preEvent(StreamContext const &)
Definition: Tracer.cc:753
void watchPostModuleBeginJob(PostModuleBeginJob::slot_type const &iSlot)
void watchPostEventReadFromSource(PostEventReadFromSource::slot_type const &iSlot)
void watchPostModuleGlobalBeginRun(PostModuleGlobalBeginRun::slot_type const &iSlot)
unsigned int maxNumberOfConcurrentRuns() const
Definition: SystemBounds.h:44
void preStreamBeginLumi(StreamContext const &)
Definition: Tracer.cc:709
void postModuleEndJob(ModuleDescription const &md)
Definition: Tracer.cc:850
void preModuleEndStream(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:553
void postModuleEvent(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:907
EventID const & eventID() const
Definition: StreamContext.h:59
void preModuleEventDelayedGet(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:944
void watchPreSourceEvent(PreSourceEvent::slot_type const &iSlot)
void postModuleBeginStream(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:541
void preModuleEventAcquire(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:922
bool dumpNonModuleContext_
Definition: Tracer.cc:170
Definition: vlib.h:208
void preModuleBeginJob(ModuleDescription const &md)
Definition: Tracer.cc:817
void postStreamEndLumi(StreamContext const &)
Definition: Tracer.cc:742
void preModuleStreamEndRun(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1027
void postEvent(StreamContext const &)
Definition: Tracer.cc:764
void preStreamBeginRun(StreamContext const &)
Definition: Tracer.cc:621
TimeValue_t value() const
Definition: Timestamp.h:56
void watchPostModuleEndJob(PostModuleEndJob::slot_type const &iSlot)
void connect(U iFunc)
Definition: Signal.h:63
void postModuleStreamBeginRun(StreamContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1012
void postSourceLumi()
Definition: Tracer.cc:483
def move(src, dest)
Definition: eostools.py:510
void preGlobalBeginLumi(GlobalContext const &)
Definition: Tracer.cc:665
void watchPreModuleGlobalEndLumi(PreModuleGlobalEndLumi::slot_type const &iSlot)
void postModuleGlobalEndRun(GlobalContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1162
unsigned int id() const
void postSourceConstruction(ModuleDescription const &md)
Definition: Tracer.cc:1248
std::set< std::string > dumpContextForLabels_
Definition: Tracer.cc:169
void preModuleGlobalBeginRun(GlobalContext const &, ModuleCallingContext const &)
Definition: Tracer.cc:1117
void watchPostBeginJob(PostBeginJob::slot_type const &iSlot)
convenience function for attaching to signal
Timestamp const & timestamp() const
Definition: StreamContext.h:62