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::ConcurrentBooker &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 196 of file TrigObjTnPHistColl.h.

Constructor & Destructor Documentation

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

Member Function Documentation

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

Definition at line 376 of file TrigObjTnPHistColl.cc.

379 {
380  hists_.bookHists(iBooker,tagName+"_"+probeFilter_,tagName+"_"+probeFilter_,histDefs);
381 }
void bookHists(DQMStore::ConcurrentBooker &iBooker, const std::string &name, const std::string &title, const HistDefs &histDefs)
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(), TrigObjTnPHistColl::getKeys(), trigger::TriggerEvent::getObjects(), ResonanceBuilder::mass, trigger::TriggerObject::phi(), trigger::TriggerObject::pt(), hiDetachedQuadStep_cff::pt1, hiDetachedQuadStep_cff::pt2, mathSSE::sqrt(), and GlobalPosition_Frontier_DevDB_cff::tag.

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

Member Data Documentation

HistColl TrigObjTnPHistColl::ProbeData::hists_
private

Definition at line 204 of file TrigObjTnPHistColl.h.

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

Definition at line 203 of file TrigObjTnPHistColl.h.