00001 #ifndef EVF_UTILITIES_TRIGGERREPORTDEF 00002 #define EVF_UTILITIES_TRIGGERREPORTDEF 00003 00004 #include "FWCore/Framework/interface/TriggerReport.h" 00005 00006 namespace evf{ 00007 00008 static const size_t max_paths = 500; 00009 static const size_t max_endpaths = 30; 00010 static const size_t max_label = 30; 00011 static const size_t max_modules = 50; 00012 00013 class ShmOutputModuleRegistry; 00014 00015 struct ModuleInPathsSummaryStatic{ 00016 //max length of a module label is 80 characters - name is truncated otherwise 00017 int timesVisited; 00018 int timesPassed; 00019 int timesFailed; 00020 int timesExcept; 00021 char moduleLabel[max_label]; 00022 }; 00023 struct PathSummaryStatic 00024 { 00025 //max length of a path name is 80 characters - name is truncated otherwise 00026 //max modules in a path are 100 00027 // int bitPosition; 00028 int timesRun; 00029 int timesPassedPs; 00030 int timesPassedL1; 00031 int timesPassed; 00032 int timesFailed; 00033 int timesExcept; 00034 // int modulesInPath; 00035 // char name[max_label]; 00036 // ModuleInPathsSummaryStatic moduleInPathSummaries[max_modules]; 00037 }; 00038 struct TriggerReportStatic{ 00039 //max number of paths in a menu is 500 00040 //max number of endpaths in a menu is 20 00041 unsigned int lumiSection; 00042 unsigned int prescaleIndex; 00043 unsigned int nbExpected; 00044 unsigned int nbReporting; 00045 edm::EventSummary eventSummary; 00046 int trigPathsInMenu; 00047 int endPathsInMenu; 00048 PathSummaryStatic trigPathSummaries[max_paths]; 00049 PathSummaryStatic endPathSummaries[max_endpaths]; 00050 TriggerReportStatic(); 00051 }; 00052 namespace funcs{ 00053 void reset(TriggerReportStatic *); 00054 void addToReport(TriggerReportStatic *trs, TriggerReportStatic *trp, unsigned int lumisection); 00055 } 00056 } 00057 00058 00059 #endif