FCCAnalyses
Loading...
Searching...
No Matches
ReconstructedTrack.h
Go to the documentation of this file.
1#ifndef RECONSTRUCTEDTRACK_ANALYZERS_H
2#define RECONSTRUCTEDTRACK_ANALYZERS_H
3
4// Standard library
5#include <cmath>
6#include <vector>
7
8// EDM4hep
9#include "edm4hep/RecDqdxData.h"
10#include "edm4hep/TrackData.h"
11#include "edm4hep/TrackState.h"
12#if __has_include("edm4hep/TrackerHit3DData.h")
13#include "edm4hep/TrackerHit3DData.h"
14#else
15#include "edm4hep/TrackerHitData.h"
16
17namespace edm4hep {
18 using TrackerHit3DData = edm4hep::TrackerHitData;
19}
20#endif
21
22// FCCAnalyses
24
25namespace FCCAnalyses ::ReconstructedTrack {
31ROOT::VecOps::RVec<edm4hep::TrackState>
32TrackStates_at_IP(const ROOT::VecOps::RVec<edm4hep::TrackData> &inTracks,
33 const ROOT::VecOps::RVec<edm4hep::TrackState> &trackStates);
34
36ROOT::VecOps::RVec<edm4hep::TrackState>
37Intersection(const ROOT::VecOps::RVec<edm4hep::TrackState> &Col1,
38 const ROOT::VecOps::RVec<edm4hep::TrackState> &Col2);
39
41ROOT::VecOps::RVec<edm4hep::TrackState>
42Remove(const ROOT::VecOps::RVec<edm4hep::TrackState> &Subset,
43 const ROOT::VecOps::RVec<edm4hep::TrackState> &LargerCollection);
44
46ROOT::VecOps::RVec<edm4hep::TrackState>
47Merge(const ROOT::VecOps::RVec<edm4hep::TrackState> &Col1,
48 const ROOT::VecOps::RVec<edm4hep::TrackState> &Col2);
49
53ROOT::VecOps::RVec<int>
54get_indices(const ROOT::VecOps::RVec<edm4hep::TrackState> &someTrackStates,
55 const ROOT::VecOps::RVec<edm4hep::TrackState> &allTrackStates);
56
59ROOT::VecOps::RVec<float>
60tracks_length(const ROOT::VecOps::RVec<int> &track_indices,
61 const ROOT::VecOps::RVec<float> &length);
62
63ROOT::VecOps::RVec<float>
64tracks_length(const ROOT::VecOps::RVec<edm4hep::TrackState> &some_tracks,
65 const ROOT::VecOps::RVec<edm4hep::TrackState> &FullTracks,
66 const ROOT::VecOps::RVec<float> &length);
67
69ROOT::VecOps::RVec<float> tracks_TOF(
70 const ROOT::VecOps::RVec<int> &track_indices,
71 const ROOT::VecOps::RVec<edm4hep::TrackData> &trackdata, // Eflowtrack
72 const ROOT::VecOps::RVec<edm4hep::TrackerHit3DData> &trackerhits);
73
74ROOT::VecOps::RVec<float> tracks_TOF(
75 const ROOT::VecOps::RVec<edm4hep::TrackState> &some_tracks,
76 const ROOT::VecOps::RVec<edm4hep::TrackState> &FullTracks,
77 const ROOT::VecOps::RVec<edm4hep::TrackData> &trackdata, // Eflowtrack
78 const ROOT::VecOps::RVec<edm4hep::TrackerHit3DData> &trackerhits);
79
89ROOT::VecOps::RVec<float>
90tracks_dNdx(const ROOT::VecOps::RVec<int> &trackStateIndices,
91 const ROOT::VecOps::RVec<edm4hep::TrackData> &trackColl,
93
103ROOT::VecOps::RVec<float>
104tracks_dNdx(const ROOT::VecOps::RVec<edm4hep::TrackState> &someTrackStates,
105 const ROOT::VecOps::RVec<edm4hep::TrackState> &allTrackStates,
106 const ROOT::VecOps::RVec<edm4hep::TrackData> &tracksColl,
108} // namespace FCCAnalyses::ReconstructedTrack
109
110#endif /* RECONSTRUCTEDTRACK_ANALYZERS_H */
Adjusted utility class to invert the relations between RecDqdx and Track.
Definition TrackUtils.h:26
ROOT::VecOps::RVec< int > get_indices(const ROOT::VecOps::RVec< edm4hep::TrackState > &someTrackStates, const ROOT::VecOps::RVec< edm4hep::TrackState > &allTrackStates)
Indices of subset tracks, in the full tracks collection.
Definition ReconstructedTrack.cc:105
ROOT::VecOps::RVec< float > tracks_dNdx(const ROOT::VecOps::RVec< int > &trackStateIndices, const ROOT::VecOps::RVec< edm4hep::TrackData > &trackColl, const FCCAnalyses::TrackUtils::TrackDqdxHandler &dNdxHandler)
Obtain dNdx values for specified track state indices.
ROOT::VecOps::RVec< edm4hep::TrackState > Merge(const ROOT::VecOps::RVec< edm4hep::TrackState > &Col1, const ROOT::VecOps::RVec< edm4hep::TrackState > &Col2)
Merge two collections of tracks.
Definition ReconstructedTrack.cc:61
ROOT::VecOps::RVec< edm4hep::TrackState > Remove(const ROOT::VecOps::RVec< edm4hep::TrackState > &Subset, const ROOT::VecOps::RVec< edm4hep::TrackState > &LargerCollection)
removes a subset of tracks from a large collection
Definition ReconstructedTrack.cc:39
ROOT::VecOps::RVec< edm4hep::TrackState > TrackStates_at_IP(const ROOT::VecOps::RVec< edm4hep::TrackData > &inTracks, const ROOT::VecOps::RVec< edm4hep::TrackState > &trackStates)
Make a collection of TrackStates from only the Trackstates at (0,0,0).
Definition ReconstructedTrack.cc:84
ROOT::VecOps::RVec< float > tracks_TOF(const ROOT::VecOps::RVec< int > &track_indices, const ROOT::VecOps::RVec< edm4hep::TrackData > &trackdata, const ROOT::VecOps::RVec< edm4hep::TrackerHit3DData > &trackerhits)
the TOF times in ps (times of the hit at the calo entrance )
Definition ReconstructedTrack.cc:152
ROOT::VecOps::RVec< float > tracks_length(const ROOT::VecOps::RVec< int > &track_indices, const ROOT::VecOps::RVec< float > &length)
the lengths of a subset of tracks - passed as a vector of indices of these tracks in the full tracks ...
Definition ReconstructedTrack.cc:128
ROOT::VecOps::RVec< edm4hep::TrackState > Intersection(const ROOT::VecOps::RVec< edm4hep::TrackState > &Col1, const ROOT::VecOps::RVec< edm4hep::TrackState > &Col2)
returns the subset of tracks that are common to two collections
Definition ReconstructedTrack.cc:17
FCC analyzers collection.
Definition Algorithms.h:15
Definition JetConstituentsUtils.h:20
edm4hep::TrackerHitData TrackerHit3DData
Definition JetConstituentsUtils.h:21