CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes
FWHLTTriggerTableView Class Reference

#include <Fireworks/Core/interface/FWHLTTriggerTableView.h>

Inheritance diagram for FWHLTTriggerTableView:
FWTriggerTableView FWViewBase FWConfigurableParameterizable FWParameterizable FWConfigurable

Public Member Functions

 FWHLTTriggerTableView (TEveWindowSlot *)
 
 ~FWHLTTriggerTableView () override
 
- Public Member Functions inherited from FWTriggerTableView
void addTo (FWConfiguration &) const override
 
Color_t backgroundColor () const
 
void columnSelected (Int_t iCol, Int_t iButton, Int_t iKeyMod)
 
void dataChanged (void)
 
 FWTriggerTableView (TEveWindowSlot *, FWViewType::EType)
 
 FWTriggerTableView (const FWTriggerTableView &)=delete
 
const FWTriggerTableViewoperator= (const FWTriggerTableView &)=delete
 
void processChanged (const char *)
 
void resetCombo () const
 
void saveImageTo (const std::string &iName) const override
 
void setBackgroundColor (Color_t)
 
void setFrom (const FWConfiguration &) override
 
void setProcessList (std::vector< std::string > *x)
 
 ~FWTriggerTableView (void) override
 
- Public Member Functions inherited from FWViewBase
virtual
FWViewContextMenuHandlerBase
contextMenuHandler () const
 
void destroy ()
 
 FWViewBase (FWViewType::EType, unsigned int iVersion=1)
 
 FWViewBase (const FWViewBase &)=delete
 
const FWViewBaseoperator= (const FWViewBase &)=delete
 
void promptForSaveImageTo (TGFrame *) const
 
FWViewType::EType typeId () const
 
const std::string & typeName () const
 
- Public Member Functions inherited from FWConfigurableParameterizable
 FWConfigurableParameterizable (unsigned int iVersion=1)
 
 FWConfigurableParameterizable (const FWConfigurableParameterizable &)=delete
 
const
FWConfigurableParameterizable
operator= (const FWConfigurableParameterizable &)=delete
 
unsigned int version () const
 
 ~FWConfigurableParameterizable () override
 
- Public Member Functions inherited from FWParameterizable
void add (FWParameterBase *)
 
const_iterator begin () const
 
const_iterator end () const
 
 FWParameterizable ()
 
 FWParameterizable (const FWParameterizable &)=delete
 
const FWParameterizableoperator= (const FWParameterizable &)=delete
 
virtual ~FWParameterizable ()
 
- Public Member Functions inherited from FWConfigurable
 FWConfigurable ()
 
 FWConfigurable (const FWConfigurable &)=delete
 
const FWConfigurableoperator= (const FWConfigurable &)=delete
 
virtual ~FWConfigurable ()
 

Protected Member Functions

void fillTable (fwlite::Event *event) override
 
- Protected Member Functions inherited from FWViewBase
 ~FWViewBase () override
 

Private Types

typedef std::unordered_map
< std::string, double > 
acceptmap_t
 

Private Member Functions

void fillAverageAcceptFractions ()
 

Private Attributes

acceptmap_t m_averageAccept
 
fwlite::Eventm_event
 

Additional Inherited Members

- Public Types inherited from FWParameterizable
typedef std::vector
< FWParameterBase * >
::const_iterator 
const_iterator
 
- Public Attributes inherited from FWViewBase
sigc::signal< void, const
FWViewBase * > 
beingDestroyed_
 
sigc::signal< void, Int_t, Int_t > openSelectedModelContextMenu_
 
- Protected Attributes inherited from FWTriggerTableView
std::vector< Columnm_columns
 
FWStringParameter m_process
 
FWStringParameter m_regex
 
FWTriggerTableViewTableManagerm_tableManager
 
- Protected Attributes inherited from FWViewBase
FWViewType m_type
 

Detailed Description

Description: [one line class summary]

Usage: <usage>

Definition at line 30 of file FWHLTTriggerTableView.h.

Member Typedef Documentation

typedef std::unordered_map<std::string, double> FWHLTTriggerTableView::acceptmap_t
private

Definition at line 39 of file FWHLTTriggerTableView.h.

Constructor & Destructor Documentation

FWHLTTriggerTableView::FWHLTTriggerTableView ( TEveWindowSlot *  iParent)

Definition at line 25 of file FWHLTTriggerTableView.cc.

References FWTriggerTableView::dataChanged(), and FWTriggerTableView::m_columns.

26  : FWTriggerTableView(iParent, FWViewType::kTableHLT), m_event(nullptr) {
27  m_columns[0].title = "Filter Name";
28  m_columns.push_back(Column("Accept"));
29  m_columns.push_back(Column("Average Accept"));
30  dataChanged();
31 }
std::vector< Column > m_columns
FWTriggerTableView(TEveWindowSlot *, FWViewType::EType)
FWHLTTriggerTableView::~FWHLTTriggerTableView ( )
inlineoverride

Definition at line 33 of file FWHLTTriggerTableView.h.

33 {}

Member Function Documentation

void FWHLTTriggerTableView::fillAverageAcceptFractions ( )
private

Definition at line 58 of file FWHLTTriggerTableView.cc.

References edm::HLTGlobalStatus::accept(), fwlite::Event::atEnd(), cuy::denominator, fwLog, fwlite::Handle< T >::getByLabel(), mps_fire::i, edm::EventBase::id(), fwlog::kError, m_averageAccept, m_event, edm::TriggerNames::size(), fwlite::Event::size(), fwlite::Event::to(), fwlite::Event::toBegin(), edm::TriggerNames::triggerName(), L1TMuonDQMOffline_cfi::triggerNames, and fwlite::Event::triggerNames().

Referenced by fillTable().

58  {
59  edm::EventID currentEvent = m_event->id();
60  // better to keep the keys and just set to zero the values
61  for (acceptmap_t::iterator it = m_averageAccept.begin(), ed = m_averageAccept.end(); it != ed; ++it) {
62  it->second = 0;
63  }
64 
65  // loop over events
67  for (m_event->toBegin(); !m_event->atEnd(); ++(*m_event)) {
68  hTriggerResults.getByLabel(*m_event, "TriggerResults", "", "HLT");
69  edm::TriggerNames const* triggerNames(nullptr);
70  try {
71  triggerNames = &m_event->triggerNames(*hTriggerResults);
72  } catch (cms::Exception&) {
73  fwLog(fwlog::kError) << " exception caught while trying to get trigger info" << std::endl;
74  break;
75  }
76 
77  for (unsigned int i = 0; i < triggerNames->size(); ++i) {
78  if (hTriggerResults->accept(i)) {
79  m_averageAccept[triggerNames->triggerName(i)]++;
80  }
81  }
82  }
83  m_event->to(currentEvent);
84 
85  double denominator = 1.0 / m_event->size();
86  for (acceptmap_t::iterator it = m_averageAccept.begin(), ed = m_averageAccept.end(); it != ed; ++it) {
87  it->second *= denominator;
88  }
89 }
Event const & toBegin() override
Go to the very first Event.
Definition: Event.cc:230
bool accept() const
Has at least one path accepted the event?
Long64_t size() const
Returns number of events in the file.
Definition: Event.cc:258
list denominator
Definition: cuy.py:485
edm::TriggerNames const & triggerNames(edm::TriggerResults const &triggerResults) const override
Definition: Event.cc:402
bool to(Long64_t iIndex)
Go to the event at index iIndex.
Definition: Event.cc:208
bool atEnd() const override
Definition: Event.cc:267
#define fwLog(_level_)
Definition: fwLog.h:45
void getByLabel(const P &iP, const char *iModuleLabel, const char *iProductInstanceLabel=nullptr, const char *iProcessLabel=nullptr)
Definition: Handle.h:100
edm::EventID id() const
Definition: EventBase.h:59
void FWHLTTriggerTableView::fillTable ( fwlite::Event event)
overrideprotectedvirtual

Implements FWTriggerTableView.

Definition at line 33 of file FWHLTTriggerTableView.cc.

References edm::HLTGlobalStatus::accept(), FWTriggerTableViewTableManager::dataChanged(), edmPickEvents::event, fillAverageAcceptFractions(), alcazmumu_cfi::filter, fwLog, fwlite::Handle< T >::getByLabel(), mps_fire::i, fwlog::kWarning, m_averageAccept, FWTriggerTableView::m_columns, m_event, FWTriggerTableView::m_process, FWTriggerTableView::m_regex, FWTriggerTableView::m_tableManager, edm::TriggerNames::size(), edm::TriggerNames::triggerName(), edm::TriggerNames::triggerNames(), L1TMuonDQMOffline_cfi::triggerNames, and FWGenericParameter< T >::value().

33  {
34  if (event != m_event) {
35  m_event = event;
37  }
39  edm::TriggerNames const* triggerNames(nullptr);
40  try {
41  hTriggerResults.getByLabel(*event, "TriggerResults", "", m_process.value().c_str());
42  triggerNames = &event->triggerNames(*hTriggerResults);
43  } catch (cms::Exception&) {
44  fwLog(fwlog::kWarning) << " no trigger results with process name HLT is available" << std::endl;
46  return;
47  }
48  boost::regex filter(m_regex.value());
49  for (unsigned int i = 0; i < triggerNames->size(); ++i) {
50  if (!boost::regex_search(triggerNames->triggerName(i), filter))
51  continue;
52  m_columns.at(0).values.push_back(triggerNames->triggerName(i));
53  m_columns.at(1).values.push_back(Form("%d", hTriggerResults->accept(i)));
54  m_columns.at(2).values.push_back(Form("%6.1f%%", m_averageAccept[triggerNames->triggerName(i)] * 100));
55  }
56 }
std::vector< Column > m_columns
FWStringParameter m_regex
bool accept() const
Has at least one path accepted the event?
#define fwLog(_level_)
Definition: fwLog.h:45
FWStringParameter m_process
void getByLabel(const P &iP, const char *iModuleLabel, const char *iProductInstanceLabel=nullptr, const char *iProcessLabel=nullptr)
Definition: Handle.h:100
FWTriggerTableViewTableManager * m_tableManager

Member Data Documentation

acceptmap_t FWHLTTriggerTableView::m_averageAccept
private

Definition at line 42 of file FWHLTTriggerTableView.h.

Referenced by fillAverageAcceptFractions(), and fillTable().

fwlite::Event* FWHLTTriggerTableView::m_event
private

Definition at line 41 of file FWHLTTriggerTableView.h.

Referenced by fillAverageAcceptFractions(), and fillTable().