ATLAS Offline Software
Loading...
Searching...
No Matches
ElectronConstituent.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#ifndef EGAMMAEVENT_ELECTRONCONSTITUENT_H
6#define EGAMMAEVENT_ELECTRONCONSTITUENT_H
7
14
15/***************************************************************************
16 ElectronConstituents.h - Description
17 -------------------
18 begin : January, 2005
19 authors : Kyle Cranmer, Andreas Wildauer
20 email : cranmer@cern.ch, andreas.wildauer@cern.ch
21
22 changes :
23
24***************************************************************************/
25
26#include<vector>
27#include<string>
28
32#include "CaloGeoHelpers/CaloSampling.h"
33
34namespace Analysis
35{
36
37
40 typedef std::string NameType;
41
42
44 public Navigable<ElectronContainer, double>
45 {
46
49
50
51 public:
53 ElectronConstituent() = default;
58
60 virtual void setName(NameType& name);
61
63 virtual NameType name() const;
64
66 virtual IConstituent* clone() const;
67
69 const Electron* electron() const;
70
71 // Set functions
72 void set_electron(const ElectronContainer* theContainer,
73 const Electron* the_electron, double weight=1);
74
75 void set_electron(const ElectronContainer* theContainer,
76 index_type& theIndex, double weight=1);
77
78 void set_constituent(const ElectronContainer* theContainer,
79 const Electron* the_electron, double weight=1)
80 {set_electron(theContainer, the_electron, weight);}
81
82 void set_constituent(const ElectronContainer* theContainer,
83 index_type& theIndex, double weight=1)
84 {set_electron(theContainer, theIndex, weight);}
85
86 double getElectronWeight(const Electron* the_electron) const ;
87
88 double getElectronWeight(const ElectronContainer* theContainer,
89 index_type& theIndex) const;
90
91
92 private:
93 std::string m_name;
94
95 } ;
96
97}
98
99
100#endif
unsigned int index_type
virtual NameType name() const
returns the infoType of the info objects.
void set_constituent(const ElectronContainer *theContainer, index_type &theIndex, double weight=1)
virtual void setName(NameType &name)
method to set the name
virtual IConstituent * clone() const
a clone method for the proper workings of the copy constructor
const Electron * electron() const
get electron directly without token
Navigable< ElectronContainer, double >::external_index_type index_type
void set_electron(const ElectronContainer *theContainer, const Electron *the_electron, double weight=1)
double getElectronWeight(const Electron *the_electron) const
ElectronConstituent()=default
Default constructor.
void set_constituent(const ElectronContainer *theContainer, const Electron *the_electron, double weight=1)
~ElectronConstituent()=default
destructor
Navigable< ElectronContainer, double >::constituent_iter iter_type
Class IConstituent: This is the abstract base class for additional jet constituents to be put into th...
constituent_coll::iterator constituent_iter
Definition Navigable.h:102
SG::GenerateIndexingPolicy< CONT >::type::index_type external_index_type
Definition Navigable.h:156
The namespace of all packages in PhysicsAnalysis/JetTagging.
std::string NameType
string to identify the constituent