ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
xAODVertexRetriever.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef JIVEXML_XAODVERTEXRETRIEVER_H
6 #define JIVEXML_XAODVERTEXRETRIEVER_H
7 
8 #include <string>
9 #include <vector>
10 #include <map>
11 
12 #include "JiveXML/IDataRetriever.h"
15 
16 namespace JiveXML{
17 
39  class xAODVertexRetriever : virtual public IDataRetriever,
40  public AthAlgTool {
41 
42  public:
43 
45  xAODVertexRetriever(const std::string& type,const std::string& name,const IInterface* parent);
46 
47  virtual StatusCode retrieve(ToolHandle<IFormatTool> &FormatTool);
49  const DataMap getData(const xAOD::VertexContainer*, const std::string &key);
51  const std::vector<std::string> getKeys();
53  virtual std::string dataTypeName() const { return m_typeName; };
54 
55  private:
56 
58  const std::string m_typeName = "RVx";
59 
60  Gaudi::Property<bool> m_doWriteHLT {this, "DoWriteHLT", false, "Write out other collections that have HLT in the name"};
61  Gaudi::Property<bool> m_doWriteAllCollections {this, "DoWriteAllCollections", false, "Write out all Cluster collections"};
62  Gaudi::Property<bool> m_doWriteV0 {this, "DoWriteV0", false, "Write out other vertex collections that have V0 in the name"};
63  Gaudi::Property<std::string> m_primaryVertexKey {this,"PrimaryVertexCollection","PrimaryVertices", "Name of the Primary Vertex container"};
64  Gaudi::Property<std::string> m_secondaryVertexKey {this,"SecondaryVertexCollection","BTagging_AntiKt4EMPFlowSecVtx", "Name of the Secondary Vertex container"};
65  Gaudi::Property<std::vector<std::string>> m_otherKeys {this, "OtherVertexCollections", {"BTagging_AntiKt4EMTopoSecVtx"}, "Other collections to be retrieved. If DoWriteAllCollections is set to true all available Vertex collections will be retrieved"};
66  Gaudi::Property<std::string> m_tracksName {this, "TracksName", "InDetTrackParticles_xAOD", "Name of track container"};
67  };
68 }
69 #endif
JiveXML::xAODVertexRetriever::m_tracksName
Gaudi::Property< std::string > m_tracksName
Definition: xAODVertexRetriever.h:66
JiveXML::xAODVertexRetriever::m_doWriteAllCollections
Gaudi::Property< bool > m_doWriteAllCollections
Definition: xAODVertexRetriever.h:61
JiveXML::xAODVertexRetriever::m_secondaryVertexKey
Gaudi::Property< std::string > m_secondaryVertexKey
Definition: xAODVertexRetriever.h:64
JiveXML::xAODVertexRetriever::m_primaryVertexKey
Gaudi::Property< std::string > m_primaryVertexKey
Definition: xAODVertexRetriever.h:63
JiveXML::DataMap
std::map< std::string, DataVect > DataMap
Definition: DataType.h:59
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
JiveXML::xAODVertexRetriever::getKeys
const std::vector< std::string > getKeys()
Gets the StoreGate keys for the desired containers.
Definition: xAODVertexRetriever.cxx:194
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
JiveXML::IDataRetriever
Interface for all DataRetriever classes, that extract event data from StoreGate and pass them on to a...
Definition: IDataRetriever.h:25
JiveXML::xAODVertexRetriever::dataTypeName
virtual std::string dataTypeName() const
Return the name of the data type that is generated by this retriever.
Definition: xAODVertexRetriever.h:53
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
JiveXML::xAODVertexRetriever::getData
const DataMap getData(const xAOD::VertexContainer *, const std::string &key)
Puts the variables into a DataMap.
Definition: xAODVertexRetriever.cxx:63
JiveXML
This header is shared inbetween the C-style server thread and the C++ Athena ServerSvc.
Definition: BadLArRetriever.cxx:22
JiveXML::xAODVertexRetriever::m_typeName
const std::string m_typeName
The data type that is generated by this retriever.
Definition: xAODVertexRetriever.h:58
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
VertexContainer.h
JiveXML::xAODVertexRetriever::m_otherKeys
Gaudi::Property< std::vector< std::string > > m_otherKeys
Definition: xAODVertexRetriever.h:65
JiveXML::xAODVertexRetriever::xAODVertexRetriever
xAODVertexRetriever(const std::string &type, const std::string &name, const IInterface *parent)
Standard Constructor.
Definition: xAODVertexRetriever.cxx:24
JiveXML::xAODVertexRetriever::retrieve
virtual StatusCode retrieve(ToolHandle< IFormatTool > &FormatTool)
For each Vertex collections retrieve basic parameters.
Definition: xAODVertexRetriever.cxx:31
JiveXML::xAODVertexRetriever::m_doWriteHLT
Gaudi::Property< bool > m_doWriteHLT
Definition: xAODVertexRetriever.h:60
JiveXML::xAODVertexRetriever
Retrieves all Vertex objects (VertexAODCollection etc.)
Definition: xAODVertexRetriever.h:40
AthAlgTool
Definition: AthAlgTool.h:26
IDataRetriever.h
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37
JiveXML::xAODVertexRetriever::m_doWriteV0
Gaudi::Property< bool > m_doWriteV0
Definition: xAODVertexRetriever.h:62