Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
DataFormats
HLTReco
interface
TriggerObject.h
Go to the documentation of this file.
1
#ifndef HLTReco_TriggerObject_h
2
#define HLTReco_TriggerObject_h
3
14
#include "
DataFormats/Candidate/interface/Particle.h
"
15
#include <cmath>
16
#include <vector>
17
18
namespace
trigger {
19
21
class
TriggerObject
{
23
private
:
25
int
id_
;
27
float
pt_
,
eta_
,
phi_
,
mass_
;
28
30
public
:
32
TriggerObject
() :
id_
(),
pt_
(),
eta_
(),
phi_
(),
mass_
() {}
33
TriggerObject
(
int
id
,
float
pt
,
float
eta
,
float
phi
,
float
mass
)
34
:
id_
(id),
pt_
(pt),
eta_
(eta),
phi_
(phi),
mass_
(mass) {}
35
37
template
<
typename
T>
38
TriggerObject
(
int
id
,
const
T
&
o
) :
id_
(id),
pt_
(o.
pt
()),
eta_
(o.
eta
()),
phi_
(o.
phi
()),
mass_
(o.
mass
()) {}
40
template
<
typename
T>
41
TriggerObject
(
const
T
&
o
) :
id_
(o.pdgId()),
pt_
(o.
pt
()),
eta_
(o.
eta
()),
phi_
(o.
phi
()),
mass_
(o.
mass
()) {}
42
44
void
setId
(
int
id
) {
id_
=
id
; }
45
void
setPt
(
float
pt
) {
pt_
=
pt
; }
46
void
setEta
(
float
eta
) {
eta_
=
eta
; }
47
void
setPhi
(
float
phi
) {
phi_
=
phi
; }
48
void
setMass
(
float
mass
) {
mass_
=
mass
; }
49
51
int
id
()
const
{
return
id_
; }
52
float
pt
()
const
{
return
pt_
; }
53
float
eta
()
const
{
return
eta_
; }
54
float
phi
()
const
{
return
phi_
; }
55
float
mass
()
const
{
return
mass_
; }
56
57
float
px
()
const
{
return
pt_
*
std::cos
(
phi_
); }
58
float
py
()
const
{
return
pt_
*
std::sin
(
phi_
); }
59
float
pz
()
const
{
return
pt_
* std::sinh(
eta_
); }
60
float
p
()
const
{
return
pt_
* std::cosh(
eta_
); }
61
float
energy
()
const
{
return
std::sqrt
(
std::pow
(
mass_
, 2) +
std::pow
(
p
(), 2)); }
62
// et = energy/cosh(eta)
63
float
et
()
const
{
return
std::sqrt
(
std::pow
(
mass_
/ std::cosh(
eta_
), 2) +
std::pow
(
pt_
, 2)); }
64
65
reco::Particle
particle
(
reco::Particle::Charge
q
= 0,
66
const
reco::Particle::Point
& vertex =
reco::Particle::Point
(0, 0, 0),
67
int
status
= 0,
68
bool
integerCharge =
true
)
const
{
69
return
reco::Particle
(
70
q
,
reco::Particle::LorentzVector
(
px
(),
py
(),
pz
(),
energy
()), vertex,
id
(),
status
, integerCharge);
71
}
72
};
73
75
typedef
std::vector<TriggerObject>
TriggerObjectCollection
;
76
77
}
// namespace trigger
78
79
#endif
trigger::TriggerObject::id
int id() const
getters
Definition:
TriggerObject.h:51
trigger::TriggerObject::phi
float phi() const
Definition:
TriggerObject.h:54
trigger::TriggerObject::setPt
void setPt(float pt)
Definition:
TriggerObject.h:45
funct::sin
Sin< T >::type sin(const T &t)
Definition:
Sin.h:22
mps_update.status
list status
Definition:
mps_update.py:107
trigger::TriggerObject::particle
reco::Particle particle(reco::Particle::Charge q=0, const reco::Particle::Point &vertex=reco::Particle::Point(0, 0, 0), int status=0, bool integerCharge=true) const
Definition:
TriggerObject.h:65
trigger::TriggerObject::energy
float energy() const
Definition:
TriggerObject.h:61
trigger::TriggerObject::py
float py() const
Definition:
TriggerObject.h:58
reco::Particle::Charge
int Charge
electric charge type
Definition:
Particle.h:19
trigger::TriggerObject::eta
float eta() const
Definition:
TriggerObject.h:53
trigger::TriggerObject::setEta
void setEta(float eta)
Definition:
TriggerObject.h:46
trigger::TriggerObject
Single trigger physics object (e.g., an isolated muon)
Definition:
TriggerObject.h:21
submitPVResolutionJobs.q
tuple q
Definition:
submitPVResolutionJobs.py:84
trigger::TriggerObject::TriggerObject
TriggerObject()
methods
Definition:
TriggerObject.h:32
trigger::TriggerObject::setId
void setId(int id)
setters
Definition:
TriggerObject.h:44
mathSSE::sqrt
T sqrt(T t)
Definition:
SSEVec.h:19
funct::cos
Cos< T >::type cos(const T &t)
Definition:
Cos.h:22
reco::Particle::Point
math::XYZPoint Point
point in the space
Definition:
Particle.h:25
trigger::TriggerObject::setPhi
void setPhi(float phi)
Definition:
TriggerObject.h:47
trigger::TriggerObject::eta_
float eta_
Definition:
TriggerObject.h:27
trigger::TriggerObject::setMass
void setMass(float mass)
Definition:
TriggerObject.h:48
trigger::TriggerObjectCollection
std::vector< TriggerObject > TriggerObjectCollection
collection of trigger physics objects (e.g., all isolated muons)
Definition:
TriggerObject.h:75
trigger::TriggerObject::TriggerObject
TriggerObject(int id, float pt, float eta, float phi, float mass)
Definition:
TriggerObject.h:33
reco::Particle
Definition:
Particle.h:16
trigger::TriggerObject::TriggerObject
TriggerObject(const T &o)
... and pdgId()
Definition:
TriggerObject.h:41
trigger::TriggerObject::px
float px() const
Definition:
TriggerObject.h:57
trigger::TriggerObject::phi_
float phi_
Definition:
TriggerObject.h:27
trigger::TriggerObject::mass_
float mass_
Definition:
TriggerObject.h:27
class-composition.o
tuple o
Definition:
class-composition.py:65
trigger::TriggerObject::id_
int id_
data members - similar to DataFormats/Candidate/interface/Particle.h
Definition:
TriggerObject.h:25
trigger::TriggerObject::mass
float mass() const
Definition:
TriggerObject.h:55
T
long double T
Definition:
Basic3DVectorLD.h:48
trigger::TriggerObject::pt
float pt() const
Definition:
TriggerObject.h:52
trigger::TriggerObject::pz
float pz() const
Definition:
TriggerObject.h:59
reco::Particle::LorentzVector
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition:
Particle.h:21
trigger::TriggerObject::p
float p() const
Definition:
TriggerObject.h:60
Particle.h
trigger::TriggerObject::TriggerObject
TriggerObject(int id, const T &o)
any type T object implementing the methods pt(), eta(), phi(), mass()
Definition:
TriggerObject.h:38
funct::pow
Power< A, B >::type pow(const A &a, const B &b)
Definition:
Power.h:29
trigger::TriggerObject::pt_
float pt_
4-momentum of physics object
Definition:
TriggerObject.h:27
trigger::TriggerObject::et
float et() const
Definition:
TriggerObject.h:63
Generated for CMSSW Reference Manual by
1.8.5