ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
graphics
VP1
VP1Systems
VP1AODSystems
src
IParticleHandleBase.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
7
// //
8
// Header file for class IParticleHandleBase //
9
// //
10
// Description: Base class for IParticle xAOD. //
11
// //
12
// Author: E. Moyse //
13
// //
15
16
#ifndef IPARTICLEHANDLEBASE_H
17
#define IPARTICLEHANDLEBASE_H
18
19
#include "
GeoPrimitives/GeoPrimitives.h
"
20
21
#include <QStringList>
22
#include <QTreeWidgetItem>
23
#include <vector>
24
#include <set>
25
#include <QList>
26
#include <QFlags>
27
#include "
AODHandleBase.h
"
28
29
class
AssocObjAttachmentHandle
;
30
class
AssociatedObjectHandleBase
;
31
class
IParticleCollHandleBase
;
32
class
TrackSysCommonData
;
33
class
SoMaterial;
34
class
SoNode;
35
36
namespace
xAOD
{
37
class
IParticle
;
38
}
39
40
class
AODSysCommonData
;
41
42
class
IParticleHandleBase
:
public
AODHandleBase
{
43
public
:
44
IParticleHandleBase
(
IParticleCollHandleBase
*);
45
virtual
~IParticleHandleBase
();
46
47
// AODHandle base methods
48
SoMaterial *
determineMaterial
();
49
virtual
QStringList
baseInfo
()
const
;
50
51
// IParticle specific methods
52
virtual
Amg::Vector3D
momentum
()
const
{
return
Amg::Vector3D
(0,0,0); }
53
54
virtual
const
xAOD::IParticle
&
iParticle
()
const
=0;
55
56
virtual
double
charge
()
const
=0 ;
57
virtual
double
mass
()
const
;
58
59
bool
hasCharge
()
const
{
return
charge
()!=
unknown
(); }
60
bool
hasMass
()
const
{
return
mass
()!=
unknown
(); }
61
62
protected
:
63
64
private
:
65
66
// It is illegal to copy/assign a IParticleHandleBase:
67
IParticleHandleBase
(
const
IParticleHandleBase
& );
68
IParticleHandleBase
&
operator=
(
const
IParticleHandleBase
& );
69
70
class
Imp
;
71
Imp
*
m_d
;
72
};
73
74
75
#endif
AODHandleBase.h
GeoPrimitives.h
AODHandleBase::unknown
static double unknown()
Definition
AODHandleBase.h:93
AODHandleBase::AODHandleBase
AODHandleBase(AODCollHandleBase *)
Definition
AODHandleBase.cxx:73
AODSysCommonData
Definition
AODSysCommonData.h:42
AssocObjAttachmentHandle
Definition
TrackHandleBase.h:203
AssociatedObjectHandleBase
Definition
AssociatedObjectHandleBase.h:35
IParticleCollHandleBase
Base class for collections holding AOD objects of iParticle type Handles pt etc cuts Local data:
Definition
IParticleCollHandleBase.h:50
IParticleHandleBase::Imp
Definition
IParticleHandleBase.cxx:50
IParticleHandleBase::IParticleHandleBase
IParticleHandleBase(IParticleCollHandleBase *)
Definition
IParticleHandleBase.cxx:59
IParticleHandleBase::mass
virtual double mass() const
Returns unknown() in case of trouble.
Definition
IParticleHandleBase.cxx:78
IParticleHandleBase::determineMaterial
SoMaterial * determineMaterial()
Should be implemented by children, in order to change the material depending on the interface etc.
Definition
IParticleHandleBase.cxx:71
IParticleHandleBase::iParticle
virtual const xAOD::IParticle & iParticle() const =0
IParticleHandleBase::IParticleHandleBase
IParticleHandleBase(const IParticleHandleBase &)
IParticleHandleBase::~IParticleHandleBase
virtual ~IParticleHandleBase()
Definition
IParticleHandleBase.cxx:65
IParticleHandleBase::momentum
virtual Amg::Vector3D momentum() const
Definition
IParticleHandleBase.h:52
IParticleHandleBase::hasMass
bool hasMass() const
Definition
IParticleHandleBase.h:60
IParticleHandleBase::m_d
Imp * m_d
Definition
IParticleHandleBase.h:71
IParticleHandleBase::charge
virtual double charge() const =0
IParticleHandleBase::hasCharge
bool hasCharge() const
Definition
IParticleHandleBase.h:59
IParticleHandleBase::operator=
IParticleHandleBase & operator=(const IParticleHandleBase &)
IParticleHandleBase::baseInfo
virtual QStringList baseInfo() const
Definition
IParticleHandleBase.cxx:85
TrackSysCommonData
Definition
TrackSysCommonData.h:50
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition
Event/xAOD/xAODBase/xAODBase/IParticle.h:41
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition
ICaloAffectedTool.h:24
Generated on
for ATLAS Offline Software by
1.17.0