ATLAS Offline Software
Loading...
Searching...
No Matches
MSVVariablesFactory.h
Go to the documentation of this file.
1// -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef BTAGTOOL_MSVVARIABLESFACTORY_C
8#define BTAGTOOL_MSVVARIABLESFACTORY_C
9
10/******************************************************
11 @class MSVVariableFactory
12
13********************************************************/
14
17#include <utility>
18
19class StoreGateSvc;
20
21namespace Analysis {
22
23 class MSVVariablesFactory : public AthAlgTool , virtual public IMSVVariablesFactory {
24
25 public:
26
27 MSVVariablesFactory(const std::string& name,
28 const std::string& n, const IInterface* p);
29 virtual ~MSVVariablesFactory() = default;
30
31 virtual StatusCode initialize() override;
32 virtual StatusCode finalize() override;
33
34 virtual StatusCode fillMSVVariables
35 (const xAOD::Jet &, xAOD::BTagging* BTag,
36 const Trk::VxSecVKalVertexInfo* myInfoVKal,
37 xAOD::VertexContainer* btagVertex, const xAOD::Vertex& PV,
38 std::string basename) const override ;
39 virtual StatusCode createMSVContainer
40 (const xAOD::Jet &, const Trk::VxSecVKalVertexInfo* myInfoVKal,
41 xAOD::VertexContainer* btagVertex, const xAOD::Vertex& PV) const override;
42
43 private:
44 double get3DSignificance(const xAOD::Vertex* priVertex,
45 std::vector<const xAOD::Vertex*>& secVertex,
46 const Amg::Vector3D jetDirection) const;
47
48
49 };
50
51}//end Analysis namespace
52
53#endif
virtual StatusCode initialize() override
virtual StatusCode createMSVContainer(const xAOD::Jet &, const Trk::VxSecVKalVertexInfo *myInfoVKal, xAOD::VertexContainer *btagVertex, const xAOD::Vertex &PV) const override
double get3DSignificance(const xAOD::Vertex *priVertex, std::vector< const xAOD::Vertex * > &secVertex, const Amg::Vector3D jetDirection) const
virtual ~MSVVariablesFactory()=default
virtual StatusCode fillMSVVariables(const xAOD::Jet &, xAOD::BTagging *BTag, const Trk::VxSecVKalVertexInfo *myInfoVKal, xAOD::VertexContainer *btagVertex, const xAOD::Vertex &PV, std::string basename) const override
virtual StatusCode finalize() override
MSVVariablesFactory(const std::string &name, const std::string &n, const IInterface *p)
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
The Athena Transient Store API.
Eigen::Matrix< double, 3, 1 > Vector3D
The namespace of all packages in PhysicsAnalysis/JetTagging.
Jet_v1 Jet
Definition of the current "jet version".
BTagging_v1 BTagging
Definition of the current "BTagging version".
Definition BTagging.h:17
VertexContainer_v1 VertexContainer
Definition of the current "Vertex container version".
Vertex_v1 Vertex
Define the latest version of the vertex class.
std::string basename(std::string name)
Definition utils.cxx:207