1#ifndef RECONSTRUCTEDPARTICLE_ANALYZERS_H
2#define RECONSTRUCTEDPARTICLE_ANALYZERS_H
8#include "ROOT/RVec.hxx"
9#include "TLorentzVector.h"
11#include "edm4hep/ReconstructedParticleData.h"
12#include "edm4hep/ParticleIDData.h"
22 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>
23 operator()(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> legs);
33 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>
operator()(
34 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> inParticles);
41 float operator() (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in) ;
49 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>
50 operator()(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
58 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>
59 operator()(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
66 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> operator() (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
73 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> operator() (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
78 sel_p(
float arg_min_p,
float arg_max_p = 1e10);
81 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> operator() (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
89 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> operator() (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
96 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>
98 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
105 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>
107 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
119 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>
120 get(ROOT::VecOps::RVec<int> indexes,
121 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> inParticles);
124 ROOT::VecOps::RVec<float>
get_pt(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
127 ROOT::VecOps::RVec<float>
get_p(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
130 ROOT::VecOps::RVec<float>
get_px(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
133 ROOT::VecOps::RVec<float>
get_py(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
136 ROOT::VecOps::RVec<float>
get_pz(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
139 ROOT::VecOps::RVec<float>
get_eta(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
142 ROOT::VecOps::RVec<float>
get_y(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
145 ROOT::VecOps::RVec<float>
get_theta(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
148 ROOT::VecOps::RVec<float>
get_phi(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
151 ROOT::VecOps::RVec<float>
get_e(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
154 ROOT::VecOps::RVec<float>
get_mass(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
157 ROOT::VecOps::RVec<float>
get_charge(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
160 ROOT::VecOps::RVec<int>
get_type(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
163 ROOT::VecOps::RVec<TLorentzVector>
get_tlv(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
166 TLorentzVector
get_tlv(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
int index);
169 TLorentzVector
get_tlv(edm4hep::ReconstructedParticleData in);
172 TLorentzVector
get_P4vis(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in);
175 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>
176 merge(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> x,
177 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> y);
180 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>
181 remove(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> x,
182 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> y);
187 int get_n(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> inParticles);
192 ROOT::VecOps::RVec<bool>
194 ROOT::VecOps::RVec<edm4hep::ParticleIDData> pid,
195 ROOT::VecOps::RVec<float> values);
Definition ReconstructedParticle.h:14
TLorentzVector get_P4vis(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return visible 4-momentum vector
Definition ReconstructedParticle.cc:321
ROOT::VecOps::RVec< float > get_p(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the momenta of the input ReconstructedParticles
Definition ReconstructedParticle.cc:368
ROOT::VecOps::RVec< bool > getJet_btag(ROOT::VecOps::RVec< int > index, ROOT::VecOps::RVec< edm4hep::ParticleIDData > pid, ROOT::VecOps::RVec< float > values)
Returns the b-jet mask (vector of bools).
Definition ReconstructedParticle.cc:474
ROOT::VecOps::RVec< float > get_eta(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the pseudo-rapidity of the input ReconstructedParticles
Definition ReconstructedParticle.cc:340
ROOT::VecOps::RVec< float > get_y(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the rapidity of the input ReconstructedParticles
Definition ReconstructedParticle.cc:411
ROOT::VecOps::RVec< float > get_mass(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the masses of the input ReconstructedParticles
Definition ReconstructedParticle.cc:332
ROOT::VecOps::RVec< float > get_theta(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the theta of the input ReconstructedParticles
Definition ReconstructedParticle.cc:421
ROOT::VecOps::RVec< float > get_pt(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the transverse momenta of the input ReconstructedParticles
Definition ReconstructedParticle.cc:262
ROOT::VecOps::RVec< int > get_type(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the type of the input ReconstructedParticles
Definition ReconstructedParticle.cc:455
ROOT::VecOps::RVec< float > get_px(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the momenta of the input ReconstructedParticles
Definition ReconstructedParticle.cc:378
ROOT::VecOps::RVec< float > get_py(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the momenta of the input ReconstructedParticles
Definition ReconstructedParticle.cc:387
ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > merge(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > x, ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > y)
concatenate both input vectors and return the resulting vector
Definition ReconstructedParticle.cc:270
ROOT::VecOps::RVec< float > get_charge(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the charges of the input ReconstructedParticles
Definition ReconstructedParticle.cc:403
ROOT::VecOps::RVec< float > get_e(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the energy of the input ReconstructedParticles
Definition ReconstructedParticle.cc:360
ROOT::VecOps::RVec< float > get_pz(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the momenta of the input ReconstructedParticles
Definition ReconstructedParticle.cc:395
ROOT::VecOps::RVec< float > get_phi(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the phi of the input ReconstructedParticles
Definition ReconstructedParticle.cc:350
ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > get(ROOT::VecOps::RVec< int > indexes, ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > inParticles)
Retrieve subset collection of reconstructed particles.
Definition ReconstructedParticle.cc:309
ROOT::VecOps::RVec< TLorentzVector > get_tlv(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
return the TlorentzVector of the input ReconstructedParticles
Definition ReconstructedParticle.cc:431
ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > remove(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > x, ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > y)
remove elements of vector y from vector x
Definition ReconstructedParticle.cc:280
int getJet_ntags(ROOT::VecOps::RVec< bool > inBJetMask)
Get number of b-jets.
Definition ReconstructedParticle.cc:487
int get_n(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > inParticles)
Return the size of the input collection.
Definition ReconstructedParticle.cc:468
FCC analyzers collection.
Definition Algorithms.h:15
int m_delta
Definition ReconstructedParticle.h:40
angular_separationBuilder(int arg_delta)
Definition ReconstructedParticle.cc:224
ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > operator()(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > inParticles)
Definition ReconstructedParticle.cc:173
recoilBuilder(float arg_sqrts)
Definition ReconstructedParticle.cc:170
float m_sqrts
Definition ReconstructedParticle.h:32
float m_resonance_mass
Definition ReconstructedParticle.h:21
ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > operator()(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > legs)
Definition ReconstructedParticle.cc:131
resonanceBuilder(float arg_resonance_mass)
Definition ReconstructedParticle.cc:130
ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > operator()(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
Definition ReconstructedParticle.cc:48
const int m_type
Definition ReconstructedParticle.h:57
sel_absType(const int type)
Definition ReconstructedParticle.cc:41
bool m_pos
Definition ReconstructedParticle.h:94
ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > operator()(ROOT::VecOps::RVec< float > angle, ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
Definition ReconstructedParticle.cc:195
sel_axis(bool arg_pos)
Definition ReconstructedParticle.cc:194
float m_charge
Definition ReconstructedParticle.h:87
bool m_abs
Definition ReconstructedParticle.h:88
sel_charge(int arg_charge, bool arg_abs)
Definition ReconstructedParticle.cc:116
sel_eta(float arg_min_eta)
Definition ReconstructedParticle.cc:84
float m_min_eta
Definition ReconstructedParticle.h:72
float m_max_p
Definition ReconstructedParticle.h:80
float m_min_p
Definition ReconstructedParticle.h:79
sel_p(float arg_min_p, float arg_max_p=1e10)
Definition ReconstructedParticle.cc:100
float m_min_pt
Definition ReconstructedParticle.h:65
sel_pt(float arg_min_pt)
Definition ReconstructedParticle.cc:68
bool m_pass
Definition ReconstructedParticle.h:103
sel_tag(bool arg_pass)
Definition ReconstructedParticle.cc:205
ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > operator()(ROOT::VecOps::RVec< bool > tags, ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
Definition ReconstructedParticle.cc:206
ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > operator()(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
Definition ReconstructedParticle.cc:22
const int m_type
Definition ReconstructedParticle.h:48
sel_type(const int type)
Definition ReconstructedParticle.cc:20