FCCAnalyses
Loading...
Searching...
No Matches
TrackUtils.h
Go to the documentation of this file.
1#ifndef FCCANALYSES_TRACKUTILS_H
2#define FCCANALYSES_TRACKUTILS_H
3
4// Standard library
5#include "vector"
6// ROOT
7#include "ROOT/RVec.hxx"
8// EDM4hep
9#include "edm4hep/RecDqdxData.h"
10
11namespace FCCAnalyses {
15namespace TrackUtils {
27 using TrackMapT = std::multimap<size_t, edm4hep::RecDqdxData>;
28
30public:
39 void addColl(const ROOT::VecOps::RVec<edm4hep::RecDqdxData> &dQdxColl,
40 const ROOT::VecOps::RVec<size_t> &dQdxTrackIndexes);
41
43 ROOT::VecOps::RVec<edm4hep::RecDqdxData>
44 getDqdxObjects(const size_t trackIndex) const;
45
47 ROOT::VecOps::RVec<float> getDqdxValues(const size_t trackIndex) const;
48};
49
58TrackDqdxHandler
59createTrackDqdxHandler(const ROOT::VecOps::RVec<edm4hep::RecDqdxData> &dQdxColl,
60 const ROOT::VecOps::RVec<size_t> &dQdxTrackIndexes);
61
62} // namespace TrackUtils
63} // namespace FCCAnalyses
64
65#endif /* FCCANALYSES_TRACKUTILS_H */
Adjusted utility class to invert the relations between RecDqdx and Track.
Definition TrackUtils.h:26
void addColl(const ROOT::VecOps::RVec< edm4hep::RecDqdxData > &dQdxColl, const ROOT::VecOps::RVec< size_t > &dQdxTrackIndexes)
Add the information from the collections to the handler.
Definition TrackUtils.cc:4
std::multimap< size_t, edm4hep::RecDqdxData > TrackMapT
Definition TrackUtils.h:27
ROOT::VecOps::RVec< edm4hep::RecDqdxData > getDqdxObjects(const size_t trackIndex) const
Get all RecDqdxData objects for a given track.
Definition TrackUtils.cc:13
ROOT::VecOps::RVec< float > getDqdxValues(const size_t trackIndex) const
Get all dQdx values for a given track.
Definition TrackUtils.cc:26
TrackMapT m_trackDqMap
The internal map from tracks to RecDqdx.
Definition TrackUtils.h:29
TrackDqdxHandler createTrackDqdxHandler(const ROOT::VecOps::RVec< edm4hep::RecDqdxData > &dQdxColl, const ROOT::VecOps::RVec< size_t > &dQdxTrackIndexes)
Creates an instance of TrackDqdxHandler.
FCC analyzers collection.
Definition Algorithms.h:15