ATLAS Offline Software
Loading...
Searching...
No Matches
TwoTrackVerticesInJet.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/***************************************************************************
6 TwoTrackVerticesInJet.h - Description
7 -------------------
8
9 created: January 2008
10 authors: Giacinto Piacquadio (University of Freiburg),
11 Christian Weiser (University of Freiburg)
12 e-mail: giacinto.piacquadio@physik.uni-freiburg.de
13 changes:
14
15 (c) ATLAS Collaboration 2008
16
17 This class is intended to store the two track vertices in a Jet.
18 These are used for a first seed of the B Vertex or to flag conversions,Ks,Lambdas
19 or material interactions.
20 The possible neutral particles created out of these two track vertices are
21 also stored, but only for those two track vertices which pass the criteria
22 to be a neutral track (mass,prob_chi2,...).
23 Please give a look for the JetFitter seeder for more info.
24
25 ***************************************************************************/
26
27#ifndef VXJETVERTEX_TwoTrackVerticesInJet_H
28#define VXJETVERTEX_TwoTrackVerticesInJet_H
29
30#include <vector>
31#include <map>
32
33#include "xAODTracking/Vertex.h"
34
35namespace Trk
36{
38 class VxCandidate;
39}
40
41namespace Trk
42{
43
45 {
46 public:
47
48
54
55
60
68 TwoTrackVerticesInJet(std::vector<const xAOD::Vertex*> twoTrackVertices,
69 std::vector<const TrackParticleBase*> neutralTrackOfVertex);
70
76
81 TwoTrackVerticesInJet &operator= (TwoTrackVerticesInJet &&) noexcept = default;
82
86 void setTwoTrackVertices(std::vector<const xAOD::Vertex*> twoTrackVertices);
87
88
92 void setNeutralTrackOfVertices(std::vector<const TrackParticleBase*> neutralTrackOfVertex);
93
98
99
104
105 private:
106
107 static void deleteAll(std::vector<const TrackParticleBase*> & neutralTrackOfVertex) noexcept;
108 static void deleteAll(std::vector<const xAOD::Vertex*> & twoTrackVertices) noexcept;
109
112 };
113
114}//end namespace
115
116#endif
117
118
119
120
121
TwoTrackVerticesInJet(TwoTrackVerticesInJet &&) noexcept=default
Move constructor and assignement operator.
std::vector< const xAOD::Vertex * > m_twoTrackVertices
TwoTrackVerticesInJet & operator=(const TwoTrackVerticesInJet &)
void setTwoTrackVertices(std::vector< const xAOD::Vertex * > twoTrackVertices)
Set the two track vertices (takes ownership of pointers)
std::vector< const TrackParticleBase * > m_neutralTrackOfVertex
const std::vector< const TrackParticleBase * > & getNeutralTrackOfVertices() const
Get the neutral tracks of Vertices (please do not delete the pointers)
TwoTrackVerticesInJet()
Default constructor, if called initializes a VxVertexOnJetAxis with all data members set to 0.
const std::vector< const xAOD::Vertex * > & getTwoTrackVertice() const
Get the two track vertices (please do not delete the pointers)
static void deleteAll(std::vector< const TrackParticleBase * > &neutralTrackOfVertex) noexcept
void setNeutralTrackOfVertices(std::vector< const TrackParticleBase * > neutralTrackOfVertex)
Set the neutral tracks of Vertices (takes ownership also of TrackParticleBase pointers,...
This class is a simplest representation of a vertex candidate.
Ensure that the ATLAS eigen extensions are properly loaded.
STL namespace.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
#define private