ATLAS Offline Software
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 
35 namespace Trk
36 {
37  class TrackParticleBase;
38  class VxCandidate;
39 }
40 
41 namespace 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 
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 
Trk::Vertex
Definition: Tracking/TrkEvent/VxVertex/VxVertex/Vertex.h:26
Trk::TwoTrackVerticesInJet::m_neutralTrackOfVertex
std::vector< const TrackParticleBase * > m_neutralTrackOfVertex
Definition: TwoTrackVerticesInJet.h:111
Trk::TwoTrackVerticesInJet::m_twoTrackVertices
std::vector< const xAOD::Vertex * > m_twoTrackVertices
Definition: TwoTrackVerticesInJet.h:110
Trk::TwoTrackVerticesInJet::TwoTrackVerticesInJet
TwoTrackVerticesInJet(TwoTrackVerticesInJet &&) noexcept=default
Move constructor and assignement operator.
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
Trk::TrackParticleBase
Definition: TrackParticleBase.h:41
Trk::TwoTrackVerticesInJet
Definition: TwoTrackVerticesInJet.h:45
Trk::TwoTrackVerticesInJet::deleteAll
static void deleteAll(std::vector< const TrackParticleBase * > &neutralTrackOfVertex) noexcept
Definition: TwoTrackVerticesInJet.cxx:175
vector
Definition: MultiHisto.h:13
Vertex.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
Trk::TwoTrackVerticesInJet::TwoTrackVerticesInJet
TwoTrackVerticesInJet()
Default constructor, if called initializes a VxVertexOnJetAxis with all data members set to 0.
Trk::TwoTrackVerticesInJet::setNeutralTrackOfVertices
void setNeutralTrackOfVertices(std::vector< const TrackParticleBase * > neutralTrackOfVertex)
Set the neutral tracks of Vertices (takes ownership also of TrackParticleBase pointers,...
Definition: TwoTrackVerticesInJet.cxx:143
Trk::TwoTrackVerticesInJet::~TwoTrackVerticesInJet
~TwoTrackVerticesInJet()
Destructor.
Definition: TwoTrackVerticesInJet.cxx:55
python.CaloScaleNoiseConfig.default
default
Definition: CaloScaleNoiseConfig.py:79
Trk::TwoTrackVerticesInJet::getTwoTrackVertice
const std::vector< const xAOD::Vertex * > & getTwoTrackVertice() const
Get the two track vertices (please do not delete the pointers)
Definition: TwoTrackVerticesInJet.cxx:149
Trk::TwoTrackVerticesInJet::getNeutralTrackOfVertices
const std::vector< const TrackParticleBase * > & getNeutralTrackOfVertices() const
Get the neutral tracks of Vertices (please do not delete the pointers)
Definition: TwoTrackVerticesInJet.cxx:153
Trk::TwoTrackVerticesInJet::setTwoTrackVertices
void setTwoTrackVertices(std::vector< const xAOD::Vertex * > twoTrackVertices)
Set the two track vertices (takes ownership of pointers)
Definition: TwoTrackVerticesInJet.cxx:137
Trk::TwoTrackVerticesInJet::operator=
TwoTrackVerticesInJet & operator=(const TwoTrackVerticesInJet &)
Definition: TwoTrackVerticesInJet.cxx:93