CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
TrigObjTnPHistColl::ProbeData Class Reference

#include <TrigObjTnPHistColl.h>

Public Member Functions

void bookHists (const std::string &tagName, DQMStore::IBooker &iBooker, const HistDefs &histDefs)
 
void fill (const trigger::size_type tagKey, const trigger::TriggerEvent &trigEvt, const VarRangeCutColl< trigger::TriggerObject > &probeCuts) const
 
 ProbeData (std::string probeFilter)
 

Private Attributes

HistColl hists_
 
std::string probeFilter_
 

Detailed Description

Definition at line 214 of file TrigObjTnPHistColl.h.

Constructor & Destructor Documentation

◆ ProbeData()

TrigObjTnPHistColl::ProbeData::ProbeData ( std::string  probeFilter)
inlineexplicit

Definition at line 216 of file TrigObjTnPHistColl.h.

216 : probeFilter_(std::move(probeFilter)) {}
def move(src, dest)
Definition: eostools.py:511

Member Function Documentation

◆ bookHists()

void TrigObjTnPHistColl::ProbeData::bookHists ( const std::string &  tagName,
DQMStore::IBooker iBooker,
const HistDefs histDefs 
)

Definition at line 377 of file TrigObjTnPHistColl.cc.

References trigObjTnPSource_cfi::histDefs, and JetPartonCorrections_cff::tagName.

379  {
380  hists_.bookHists(iBooker, tagName + "_" + probeFilter_, tagName + "_" + probeFilter_, histDefs);
381 }
void bookHists(DQMStore::IBooker &iBooker, const std::string &name, const std::string &title, const HistDefs &histDefs)

◆ fill()

void TrigObjTnPHistColl::ProbeData::fill ( const trigger::size_type  tagKey,
const trigger::TriggerEvent trigEvt,
const VarRangeCutColl< trigger::TriggerObject > &  probeCuts 
) const

Definition at line 383 of file TrigObjTnPHistColl.cc.

References funct::cos(), trigger::TriggerObject::eta(), HLT_2022v12_cff::eta1, HLT_2022v12_cff::eta2, TrigObjTnPHistColl::getKeys(), trigger::TriggerEvent::getObjects(), EgHLTOffHistBins_cfi::mass, trigger::TriggerObject::phi(), trigObjTnPSource_cfi::probeCuts, trigger::TriggerObject::pt(), HLT_2022v12_cff::pt1, HLT_2022v12_cff::pt2, mathSSE::sqrt(), and makeGlobalPositionRcd_cfg::tag.

385  {
386  auto probeKeys = getKeys(trigEvt, probeFilter_);
387  for (auto probeKey : probeKeys) {
388  const trigger::TriggerObject& probe = trigEvt.getObjects()[probeKey];
389  if (tagKey != probeKey && probeCuts(probe)) {
390  const trigger::TriggerObject& tag = trigEvt.getObjects()[tagKey];
391  auto massFunc = [](float pt1, float eta1, float phi1, float pt2, float eta2, float phi2) {
392  return std::sqrt(2 * pt1 * pt2 * (std::cosh(eta1 - eta2) - std::cos(phi1 - phi2)));
393  };
394  float mass = massFunc(tag.pt(), tag.eta(), tag.phi(), probe.pt(), probe.eta(), probe.phi());
395  hists_.fill(probe, mass);
396  }
397  }
398 }
static const trigger::Keys getKeys(const trigger::TriggerEvent &trigEvt, const std::string &filterName)
Single trigger physics object (e.g., an isolated muon)
Definition: TriggerObject.h:21
T sqrt(T t)
Definition: SSEVec.h:19
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
const TriggerObjectCollection & getObjects() const
Definition: TriggerEvent.h:101
void fill(const trigger::TriggerObject &probe, float mass) const

Member Data Documentation

◆ hists_

HistColl TrigObjTnPHistColl::ProbeData::hists_
private

Definition at line 224 of file TrigObjTnPHistColl.h.

◆ probeFilter_

std::string TrigObjTnPHistColl::ProbeData::probeFilter_
private

Definition at line 223 of file TrigObjTnPHistColl.h.