ATLAS Offline Software
ElectronAssociation.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
6 #ifndef EGAMMAEVENT_ELECTRONASSOCIATION_H
7 #define EGAMMAEVENT_ELECTRONASSOCIATION_H
8 
9 #include<vector>
10 #include<string>
11 
12 #include "Navigation/Navigable.h"
15 #include "CaloGeoHelpers/CaloSampling.h"
16 
17 namespace Analysis
18 {
19 
20 
23  typedef std::string NameType;
24 
26  public Navigable<ElectronContainer, double>
27  {
28 
31 
32 
33  public:
34  ElectronAssociation() = default;
36  ~ElectronAssociation() = default;
37 
38  virtual JetAssociationBase* clone() const;
40 
41  const Electron* electron() const;
42 
43  // Set functions
44  void set_electron(const ElectronContainer* theContainer,
45  const Electron* the_electron, double weight=1);
46 
47  void set_electron(const ElectronContainer* theContainer,
48  const index_type& theIndex,
49  double weight=1);
50 
51  void set_association(const ElectronContainer* theContainer,
52  const Electron* the_electron, double weight=1)
53  {set_electron(theContainer, the_electron, weight);}
54 
55  void set_association(const ElectronContainer* theContainer,
56  const index_type& theIndex,
57  double weight=1)
58  {set_electron(theContainer, theIndex, weight);}
59 
60  double getElectronWeight(const Electron* the_electron) const ;
61 
62  double getElectronWeight(const ElectronContainer* theContainer,
63  const index_type& theIndex) const;
64 
65  } ;
66 
67 }
68 
69 
70 #endif
Analysis::NameType
std::string NameType
string to identify the constituent
Definition: IConstituent.h:39
JetAssociationBase::NameType
name_t NameType
Definition: JetAssociationBase.h:29
ElectronContainer.h
Analysis::ElectronAssociation::getElectronWeight
double getElectronWeight(const Electron *the_electron) const
Definition: ElectronAssociation.cxx:68
Analysis::Electron
Definition: Reconstruction/egamma/egammaEvent/egammaEvent/Electron.h:20
JetAssociationBase.h
Analysis::ElectronAssociation::set_association
void set_association(const ElectronContainer *theContainer, const Electron *the_electron, double weight=1)
Definition: ElectronAssociation.h:51
Analysis::ElectronAssociation::electron
const Electron * electron() const
get electron directly without token
Definition: ElectronAssociation.cxx:20
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:200
Analysis::ElectronAssociation::iter_type
Navigable< ElectronContainer, double >::constituent_iter iter_type
Definition: ElectronAssociation.h:30
Analysis::ElectronAssociation
Definition: ElectronAssociation.h:27
Analysis::ElectronAssociation::set_electron
void set_electron(const ElectronContainer *theContainer, const Electron *the_electron, double weight=1)
Definition: ElectronAssociation.cxx:32
Analysis::ElectronAssociation::set_association
void set_association(const ElectronContainer *theContainer, const index_type &theIndex, double weight=1)
Definition: ElectronAssociation.h:55
JetAssociationBase
Definition: JetAssociationBase.h:21
Analysis
The namespace of all packages in PhysicsAnalysis/JetTagging.
Definition: BTaggingCnvAlg.h:20
Analysis::ElectronAssociation::ElectronAssociation
ElectronAssociation()=default
constructor
Navigable
Navigable template generalization to handle navigation.
Definition: Navigable.h:93
Navigable.h
ElectronContainer
Definition: Reconstruction/egamma/egammaEvent/egammaEvent/ElectronContainer.h:32
Analysis::ElectronAssociation::clone
virtual JetAssociationBase * clone() const
a clone method for the proper workings of the copy constructor
Definition: ElectronAssociation.cxx:15
Analysis::ElectronAssociation::~ElectronAssociation
~ElectronAssociation()=default
JetAssociationBase::name
const name_t & name() const
Definition: JetAssociationBase.cxx:20
Analysis::ElectronAssociation::index_type
Navigable< ElectronContainer, double >::external_index_type index_type
Definition: ElectronAssociation.h:29
index_type
unsigned int index_type
Definition: FPGATrackSimSGToRawHitsTool.h:37