#include <ResSelector.hpp>
Inheritance diagram for caf_util::ResSelector:

Public Member Functions | |
| ResSelector (const char *name) | |
| bool | processEvent (cafe::Event &event) |
| Called for every event. | |
| bool | mass (double pt1, double eta1, double phi1, int charge1, double pt2, double eta2, double phi2, int charge2, double &mass) |
| void | begin () |
| Called at beginning of processing. | |
| ~ResSelector () | |
| ClassDef (ResSelector, 0) | |
Private Types | |
| enum | Type { MUON, ELECTRON, JET, LORENTZVECTOR } |
| enum | ChargeSignSelection { NOSELECTION, OPPOSITESIGN, SAMESIGN } |
Private Member Functions | |
| bool | GetMuon (const TMBMuon &muon, const std::string &pt_method, double &pt, double &eta, double &phi, int &charge) |
| bool | GetElectron (const TMBEMCluster &electron, const std::string &pt_method, double &pt, double &eta, double &phi, int &charge) |
Private Attributes | |
| Type | _obj1 |
| Type | _obj2 |
| ChargeSignSelection | _charge_req |
| std::string | branch1 |
| std::string | branch2 |
| std::string | _pt1_method |
| std::string | _pt2_method |
| double | _low_window |
| double | _high_window |
| double | _target_mass |
| double | _hist_lower |
| double | _hist_upper |
| unsigned int | _hist_bins |
| bool | _useEOPetrack |
| cafe::Variables | _vars1 |
| cafe::Variables | _vars2 |
| TH1D * | _masshist |
Objects could be electrons (TMBEMCluster), muon (TMBMuon), jet (TMBJet) or TMBLorentzVector. For electron and muon you also can specify what kind of pt, eta and phi you want to use. There is a choice between the "best" quality (default) or the "track" one.
The calculated mass saved as name()+"ResMass" variable (double) to the Event. The pointer to the first objects also saved to the Events as name()+":EM1" or name()+":Muon1" or name()+":Jet1" or name()+":LorentzVector1" and with number 2 instead of 1 for the second object. You can test the existance of each object using cafe::Event::get() methode:
if(event.get("name",electron)) do something
You can choose reconstruction method specifying the option .target_mass
You also can apply selection on the reconstructed mass.
Selector also can build the invariant mass histogram if "hist_bins" value greater than 0.
Optional parameters:
.Charge: accept only objects pair with the specified charges. Available options "opposite", "samesign", "noselection" [default: "noselection"]
Definition at line 78 of file ResSelector.hpp.
|
|
Definition at line 101 of file ResSelector.hpp. |
|
|
Definition at line 98 of file ResSelector.hpp. |
|
|
Definition at line 15 of file ResSelector.cpp. References _charge_req, _high_window, _hist_bins, _hist_lower, _hist_upper, _low_window, _obj1, _obj2, _pt1_method, _pt2_method, _target_mass, _useEOPetrack, _vars1, _vars2, cafe::Variables::add(), branch1, branch2, ELECTRON, cafe::Processor::err(), cafe::Config::get(), JET, LORENTZVECTOR, MUON, cafe::Processor::name(), NOSELECTION, OPPOSITESIGN, and SAMESIGN. |
|
|
Definition at line 89 of file ResSelector.hpp. |
|
|
Called at beginning of processing.
Reimplemented from cafe::Processor. Definition at line 295 of file ResSelector.cpp. References _hist_bins, _hist_lower, _hist_upper, _masshist, cafe::Processor::getDirectory(), and cafe::Processor::name(). |
|
||||||||||||
|
|
|
||||||||||||||||||||||||||||
|
Definition at line 407 of file ResSelector.cpp. References _useEOPetrack, TMBEMCluster::charge(), TMBTrack::charge(), cafe::Processor::err(), TMBVector3::Eta(), TMBEMCluster::GetChargedTrack(), TMBEMCluster::getPtrChp(), TMBEMCluster::has_spatial_track_match(), TMBEMCluster::has_track_match(), TMBVector3::Phi(), TMBVector3::Pt(), and cafe::Processor::warn(). Referenced by processEvent(). |
|
||||||||||||||||||||||||||||
|
Definition at line 368 of file ResSelector.cpp. References TMBMuon::charge(), TMBTrack::charge(), cafe::Processor::err(), TMBVector3::Eta(), TMBMuon::GetChargedTrack(), TMBMuon::hasCentral(), TMBVector3::Phi(), TMBVector3::Pt(), and cafe::Processor::warn(). Referenced by processEvent(). |
|
||||||||||||||||||||||||||||||||||||||||
|
Definition at line 303 of file ResSelector.cpp. References _charge_req, _high_window, _low_window, _target_mass, cafe::Processor::err(), cafe::Processor::name(), NOSELECTION, OPPOSITESIGN, SAMESIGN, and cafe::Processor::warn(). Referenced by processEvent(). |
|
|
Called for every event.
Reimplemented from cafe::Processor. Definition at line 158 of file ResSelector.cpp. References _masshist, _obj1, _obj2, _pt1_method, _pt2_method, _vars1, _vars2, branch1, branch2, cafe::Processor::debug(), ELECTRON, cafe::Processor::err(), TMBVector3::Eta(), cafe::StatPointer::EventSelected(), cafe::EventBase::get(), cafe::EventBase::getClonesArray(), GetElectron(), GetMuon(), mass(), MUON, cafe::Processor::name(), cafe::Processor::out(), TMBVector3::Phi(), TMBVector3::Pt(), and cafe::EventBase::put(). |
|
|
Definition at line 102 of file ResSelector.hpp. Referenced by mass(), and ResSelector(). |
|
|
Definition at line 108 of file ResSelector.hpp. Referenced by mass(), and ResSelector(). |
|
|
Definition at line 112 of file ResSelector.hpp. Referenced by begin(), and ResSelector(). |
|
|
Definition at line 110 of file ResSelector.hpp. Referenced by begin(), and ResSelector(). |
|
|
Definition at line 111 of file ResSelector.hpp. Referenced by begin(), and ResSelector(). |
|
|
Definition at line 108 of file ResSelector.hpp. Referenced by mass(), and ResSelector(). |
|
|
Definition at line 117 of file ResSelector.hpp. Referenced by begin(), and processEvent(). |
|
|
Definition at line 99 of file ResSelector.hpp. Referenced by processEvent(), and ResSelector(). |
|
|
Definition at line 99 of file ResSelector.hpp. Referenced by processEvent(), and ResSelector(). |
|
|
Definition at line 106 of file ResSelector.hpp. Referenced by processEvent(), and ResSelector(). |
|
|
Definition at line 107 of file ResSelector.hpp. Referenced by processEvent(), and ResSelector(). |
|
|
Definition at line 109 of file ResSelector.hpp. Referenced by mass(), and ResSelector(). |
|
|
Definition at line 113 of file ResSelector.hpp. Referenced by GetElectron(), and ResSelector(). |
|
|
Definition at line 115 of file ResSelector.hpp. Referenced by processEvent(), and ResSelector(). |
|
|
Definition at line 115 of file ResSelector.hpp. Referenced by processEvent(), and ResSelector(). |
|
|
Definition at line 104 of file ResSelector.hpp. Referenced by processEvent(), and ResSelector(). |
|
|
Definition at line 105 of file ResSelector.hpp. Referenced by processEvent(), and ResSelector(). |
1.3.4