![]() |
|
|||
File indexing completed on 2023-10-25 09:44:17
0001 #ifndef DQMOffline_L1Trigger_HistDefinition_h 0002 #define DQMOffline_L1Trigger_HistDefinition_h 0003 0004 /** 0005 * \class HistDefinition 0006 * 0007 * 0008 * Description: Class for parsing histogram definitions from a ParameterSet of 0009 * ParameterSets defined in the python configuration. Acceptable parameters are 0010 * all public members of the HistDefinition class. 0011 * 0012 * Python configuration example: 0013 * https://github.com/cms-sw/cmssw/blob/master/DQMOffline/L1Trigger/python/L1THistDefinitions_cff.py 0014 * 0015 * Usage in CMSSW module 0016 * PlotConfig enum, PlotConfigNames map: 0017 * https://github.com/cms-sw/cmssw/blob/master/DQMOffline/L1Trigger/interface/L1TEGammaOffline.h 0018 * 0019 * enum PlotConfig { 0020 * nVertex 0021 * }; 0022 * 0023 * static const std::map<std::string, unsigned int> PlotConfigNames; 0024 * 0025 * https://github.com/cms-sw/cmssw/blob/master/DQMOffline/L1Trigger/src/L1TEGammaOffline.cc 0026 * 0027 * const std::map<std::string, unsigned int> L1TEGammaOffline::PlotConfigNames = { 0028 * {"nVertex", PlotConfig::nVertex} 0029 * }; 0030 * Read from ParameterSet in module constructor: 0031 * histDefinitions_(dqmoffline::l1t::readHistDefinitions(ps.getParameterSet("histDefinitions"), PlotConfigNames)), 0032 * 0033 * Use to create a histogram: 0034 * dqmoffline::l1t::HistDefinition nVertexDef = histDefinitions_[PlotConfig::nVertex]; 0035 * h_nVertex_ = ibooker.book1D( 0036 * nVertexDef.name, nVertexDef.title, nVertexDef.nbinsX, nVertexDef.xmin, nVertexDef.xmax 0037 * ); 0038 * 0039 * 0040 * \author: Luke Kreczko - kreczko@cern.ch 0041 * 0042 **/ 0043 0044 #include "FWCore/ParameterSet/interface/ParameterSet.h" 0045 #include <string> 0046 #include <vector> 0047 0048 namespace dqmoffline { 0049 namespace l1t { 0050 0051 class HistDefinition; 0052 typedef std::vector<HistDefinition> HistDefinitions; 0053 0054 class HistDefinition { 0055 public: 0056 HistDefinition(); 0057 HistDefinition(const edm::ParameterSet &ps); 0058 ~HistDefinition(); 0059 // static HistDefinitions readHistDefinitions(const edm::ParameterSet &ps, 0060 // std::map<std::string, unsigned int>); 0061 0062 std::string name; 0063 std::string title; 0064 unsigned int nbinsX; 0065 unsigned int nbinsY; 0066 double xmin; 0067 double xmax; 0068 double ymin; 0069 double ymax; 0070 std::vector<double> binsXtmp; 0071 std::vector<double> binsYtmp; 0072 std::vector<float> binsX; 0073 std::vector<float> binsY; 0074 }; 0075 0076 HistDefinitions readHistDefinitions(const edm::ParameterSet &ps, 0077 const std::map<std::string, unsigned int> &mapping); 0078 0079 } // namespace l1t 0080 } // namespace dqmoffline 0081 0082 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |
![]() ![]() |