ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigAnalysis
TrigInDetAnalysisExample
TrigInDetAnalysisExample
NtupleTrackSelector.h
Go to the documentation of this file.
1
/* emacs: this is -*- c++ -*- */
10
11
12
#ifndef TIDAEXAMPLE_NTUPLETRACKSELECTOR_H
13
#define TIDAEXAMPLE_NTUPLETRACKSELECTOR_H
14
15
#include "
TrigInDetAnalysis/Track.h
"
16
#include "
TrigInDetAnalysis/TrackSelector.h
"
17
#include "
TrigInDetAnalysis/TrackFilter.h
"
18
19
20
class
NtupleTrackSelector
:
public
TrackSelector
{
21
22
public
:
23
24
NtupleTrackSelector
(
TrackFilter
* selector=0 ) :
TrackSelector
(selector) { }
25
26
28
void
selectTrack
(
TIDA::Track
* track ) {
29
// do the track extraction stuff here....
30
if
( track ) {
31
TIDA::Track
* t =
new
TIDA::Track
( *track );
32
if
( !
addTrack
( t ) )
delete
t;
33
// addTrack( track );
34
}
35
}
36
37
39
void
selectTrack
(
const
TIDA::Track
& track ) {
40
// do the track extraction stuff here....
41
TIDA::Track
* t =
new
TIDA::Track
( track );
42
if
( !
addTrack
( t ) )
delete
t;
43
// addTrack( &track );
44
}
45
47
void
selectTracks
(
const
std::vector<TIDA::Track>&
tracks
) {
48
// do the track extraction stuff here....
49
std::vector<TIDA::Track>::const_iterator trackitr =
tracks
.begin();
50
std::vector<TIDA::Track>::const_iterator trackend =
tracks
.end();
51
while
( trackitr!=trackend ) {
52
selectTrack
( *trackitr );
53
++trackitr;
54
}
55
}
56
58
void
selectTracks
(
const
std::vector<TIDA::Track*>&
tracks
) {
59
// do the track extraction stuff here....
60
std::vector<TIDA::Track*>::const_iterator trackitr =
tracks
.begin();
61
std::vector<TIDA::Track*>::const_iterator trackend =
tracks
.end();
62
while
( trackitr!=trackend ) {
63
selectTrack
( *trackitr );
64
++trackitr;
65
}
66
}
67
70
virtual
void
clear
()
override
{
71
for
(
int
i=
m_tracks
.size() ; i-- ; )
delete
m_tracks
[i];
72
m_tracks
.clear();
73
}
74
75
};
76
77
78
79
80
#endif
// TIDAEXAMPLE_NTUPLETRACKSELECTOR_H
TrackFilter.h
base class for a single track selection filter allowing parameter setting for complex track selection
TrackSelector.h
Track.h
NtupleTrackSelector::selectTrack
void selectTrack(TIDA::Track *track)
add single Track
Definition
NtupleTrackSelector.h:28
NtupleTrackSelector::clear
virtual void clear() override
the ntple selector manages the tracks itself, so we have to do an explicit delete for each one to pre...
Definition
NtupleTrackSelector.h:70
NtupleTrackSelector::selectTrack
void selectTrack(const TIDA::Track &track)
add a Track
Definition
NtupleTrackSelector.h:39
NtupleTrackSelector::selectTracks
void selectTracks(const std::vector< TIDA::Track > &tracks)
extract all the tracks from a vector of Tracks
Definition
NtupleTrackSelector.h:47
NtupleTrackSelector::selectTracks
void selectTracks(const std::vector< TIDA::Track * > &tracks)
extract all the tracks from a vector of Tracks pointers
Definition
NtupleTrackSelector.h:58
NtupleTrackSelector::NtupleTrackSelector
NtupleTrackSelector(TrackFilter *selector=0)
Definition
NtupleTrackSelector.h:24
TIDA::Track
Definition
Trigger/TrigAnalysis/TrigInDetAnalysis/TrigInDetAnalysis/Track.h:26
TrackFilter
Definition
TrackFilter.h:26
TrackSelector::addTrack
virtual bool addTrack(TIDA::Track *t, bool(*f)(const TIDA::Track *)=0)
Definition
Trigger/TrigAnalysis/TrigInDetAnalysis/TrigInDetAnalysis/TrackSelector.h:34
TrackSelector::TrackSelector
TrackSelector(TrackFilter *selector=0)
Definition
Trigger/TrigAnalysis/TrigInDetAnalysis/TrigInDetAnalysis/TrackSelector.h:28
TrackSelector::m_tracks
std::vector< TIDA::Track * > m_tracks
Definition
Trigger/TrigAnalysis/TrigInDetAnalysis/TrigInDetAnalysis/TrackSelector.h:81
TrackSelector::tracks
const std::vector< TIDA::Track * > & tracks() const
Definition
Trigger/TrigAnalysis/TrigInDetAnalysis/TrigInDetAnalysis/TrackSelector.h:52
Generated on
for ATLAS Offline Software by
1.17.0