ATLAS Offline Software
ParticleLevelPhotonObjectSelector.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3  */
4 
5 // Filename: ParticleLevelPhotonObjectSelector.h
6 // Description:
7 // Author: Fabian Wilk
8 // Created: Wed Oct 12 11:37:51 2016
9 
10 #ifndef _TOP_PARTICLE_LEVEL_PHOTONOBJECTSELECTOR_H_
11 #define _TOP_PARTICLE_LEVEL_PHOTONOBJECTSELECTOR_H_
12 
14 
16 
18 
19 #include <vector>
20 #include <string>
21 #include <sstream>
22 
23 #include "TopEvent/EventTools.h"
24 
25 namespace top {
27  : public ObjectSelectorBase<xAOD::TruthParticle> {
28  public:
29  // Struct used to store the cut values used by the object selector. It
30  // is important that the object has a sensible default config because it
31  // will be default constructed for the trivial constructor of the object
32  // selector.
33  struct Options {
34  Options(double ptMin = 25.e3,
35  double etaMax = 2.5,
36  const std::string& Origin = "",
37  const std::string& Isolation = "");
38 
39  double pt_min;
40  double eta_max;
41  std::vector<MCTruthPartClassifier::ParticleOrigin> origin;
42  std::string isolationVar;
43  float isolationCut;
44  };
45  public:
47  virtual bool apply(const xAOD::TruthParticle& truthParticle);
48  private:
50  };
51 }
52 
53 #endif /* _TOP_PARTICLE_LEVEL_PHOTONOBJECTSELECTOR_H_ */
top::ParticleLevelPhotonObjectSelector::Options::origin
std::vector< MCTruthPartClassifier::ParticleOrigin > origin
Definition: ParticleLevelPhotonObjectSelector.h:41
top::ParticleLevelPhotonObjectSelector
Definition: ParticleLevelPhotonObjectSelector.h:27
top::ParticleLevelPhotonObjectSelector::apply
virtual bool apply(const xAOD::TruthParticle &truthParticle)
Definition: ParticleLevelPhotonObjectSelector.cxx:70
top
TopConfig A simple configuration that is NOT a singleton.
Definition: AnalysisTrackingHelper.cxx:58
top::ParticleLevelPhotonObjectSelector::Options::isolationVar
std::string isolationVar
Definition: ParticleLevelPhotonObjectSelector.h:42
TruthParticleContainer.h
top::ParticleLevelPhotonObjectSelector::Options::pt_min
double pt_min
Definition: ParticleLevelPhotonObjectSelector.h:39
xAOD::etaMax
etaMax
Definition: HIEventShape_v2.cxx:46
EventTools.h
A few functions for doing operations on particles / events. Currently holds code for dR,...
top::ParticleLevelPhotonObjectSelector::ParticleLevelPhotonObjectSelector
ParticleLevelPhotonObjectSelector(Options cuts=Options())
Definition: ParticleLevelPhotonObjectSelector.cxx:11
MCTruthClassifierDefs.h
CheckAppliedSFs.e3
e3
Definition: CheckAppliedSFs.py:264
xAOD::TruthParticle_v1
Class describing a truth particle in the MC record.
Definition: TruthParticle_v1.h:41
top::ParticleLevelPhotonObjectSelector::Options::isolationCut
float isolationCut
Definition: ParticleLevelPhotonObjectSelector.h:43
plotBeamSpotVert.cuts
string cuts
Definition: plotBeamSpotVert.py:93
top::ParticleLevelPhotonObjectSelector::Options::eta_max
double eta_max
Definition: ParticleLevelPhotonObjectSelector.h:40
ObjectSelectorBase.h
checkNSWValTree.Options
Options
Definition: checkNSWValTree.py:15
top::ObjectSelectorBase
Definition: ObjectSelectorBase.h:15
PhysDESDM_SmpCaloId.ptMin
ptMin
Definition: PhysDESDM_SmpCaloId.py:90
top::ParticleLevelPhotonObjectSelector::Options::Options
Options(double ptMin=25.e3, double etaMax=2.5, const std::string &Origin="", const std::string &Isolation="")
Definition: ParticleLevelPhotonObjectSelector.cxx:14
top::ParticleLevelPhotonObjectSelector::Options
Definition: ParticleLevelPhotonObjectSelector.h:33
top::ParticleLevelPhotonObjectSelector::m_opt
Options m_opt
Definition: ParticleLevelPhotonObjectSelector.h:49