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#include <cmath>
5#include <vector>
6
7#include "edm4hep/Quantity.h"
8#include "edm4hep/TrackData.h"
9#include "edm4hep/TrackState.h"
10
11#if __has_include("edm4hep/TrackerHit3DData.h")
12#include "edm4hep/TrackerHit3DData.h"
13#else
14#include "edm4hep/TrackerHitData.h"
15namespace edm4hep {
16 using TrackerHit3DData = edm4hep::TrackerHitData;
17}
18#endif
19
20namespace FCCAnalyses {
21
22namespace ReconstructedTrack {
23
25ROOT::VecOps::RVec<edm4hep::TrackState>
26TrackStates_at_IP(const ROOT::VecOps::RVec<edm4hep::TrackData> &in,
27 const ROOT::VecOps::RVec<edm4hep::TrackState> &trackstates);
28
30ROOT::VecOps::RVec<edm4hep::TrackState>
31Intersection(const ROOT::VecOps::RVec<edm4hep::TrackState> &Col1,
32 const ROOT::VecOps::RVec<edm4hep::TrackState> &Col2);
33
35ROOT::VecOps::RVec<edm4hep::TrackState>
36Remove(const ROOT::VecOps::RVec<edm4hep::TrackState> &Subset,
37 const ROOT::VecOps::RVec<edm4hep::TrackState> &LargerCollection);
38
40ROOT::VecOps::RVec<edm4hep::TrackState>
41Merge(const ROOT::VecOps::RVec<edm4hep::TrackState> &Col1,
42 const ROOT::VecOps::RVec<edm4hep::TrackState> &Col2);
43
45ROOT::VecOps::RVec<int>
46get_indices(const ROOT::VecOps::RVec<edm4hep::TrackState> &some_tracks,
47 const ROOT::VecOps::RVec<edm4hep::TrackState> &FullTracks);
48
51ROOT::VecOps::RVec<float>
52tracks_length(const ROOT::VecOps::RVec<int> &track_indices,
53 const ROOT::VecOps::RVec<float> &length);
54
55ROOT::VecOps::RVec<float>
56tracks_length(const ROOT::VecOps::RVec<edm4hep::TrackState> &some_tracks,
57 const ROOT::VecOps::RVec<edm4hep::TrackState> &FullTracks,
58 const ROOT::VecOps::RVec<float> &length);
59
61ROOT::VecOps::RVec<float> tracks_TOF(
62 const ROOT::VecOps::RVec<int> &track_indices,
63 const ROOT::VecOps::RVec<edm4hep::TrackData> &trackdata, // Eflowtrack
64 const ROOT::VecOps::RVec<edm4hep::TrackerHit3DData> &trackerhits);
65
66ROOT::VecOps::RVec<float> tracks_TOF(
67 const ROOT::VecOps::RVec<edm4hep::TrackState> &some_tracks,
68 const ROOT::VecOps::RVec<edm4hep::TrackState> &FullTracks,
69 const ROOT::VecOps::RVec<edm4hep::TrackData> &trackdata, // Eflowtrack
70 const ROOT::VecOps::RVec<edm4hep::TrackerHit3DData> &trackerhits);
71
73ROOT::VecOps::RVec<float> tracks_dNdx(
74 const ROOT::VecOps::RVec<int> &track_indices,
75 const ROOT::VecOps::RVec<edm4hep::TrackData> &trackdata, // Eflowtrack
76 const ROOT::VecOps::RVec<edm4hep::Quantity> &dNdx); // ETrackFlow_2
77
78ROOT::VecOps::RVec<float> tracks_dNdx(
79 const ROOT::VecOps::RVec<edm4hep::TrackState> &some_tracks,
80 const ROOT::VecOps::RVec<edm4hep::TrackState> &FullTracks,
81 const ROOT::VecOps::RVec<edm4hep::TrackData> &trackdata, // Eflowtrack
82 const ROOT::VecOps::RVec<edm4hep::Quantity> &dNdx); // ETrackFlow_2
83
84} // namespace ReconstructedTrack
85} // namespace FCCAnalyses
86#endif
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
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:161
ROOT::VecOps::RVec< edm4hep::TrackState > TrackStates_at_IP(const ROOT::VecOps::RVec< edm4hep::TrackData > &in, const ROOT::VecOps::RVec< edm4hep::TrackState > &trackstates)
for FullSim:
Definition ReconstructedTrack.cc:90
ROOT::VecOps::RVec< int > get_indices(const ROOT::VecOps::RVec< edm4hep::TrackState > &some_tracks, const ROOT::VecOps::RVec< edm4hep::TrackState > &FullTracks)
indices of a subset of tracks, in the full tracks collection
Definition ReconstructedTrack.cc:117
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< 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:137
ROOT::VecOps::RVec< float > tracks_dNdx(const ROOT::VecOps::RVec< int > &track_indices, const ROOT::VecOps::RVec< edm4hep::TrackData > &trackdata, const ROOT::VecOps::RVec< edm4hep::Quantity > &dNdx)
the dndx values
Definition ReconstructedTrack.cc:205
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
FCC analyzers collection.
Definition Algorithms.h:15
Definition JetConstituentsUtils.h:12
edm4hep::TrackerHitData TrackerHit3DData
Definition JetConstituentsUtils.h:13