ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
graphics
VP1
VP1Systems
VP1PRDSystems
VP1PRDSystems
PRDTrackSegmentHelper.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
7
// //
8
// Header file for class PRDTrackSegmentHelper //
9
// //
10
// Description: Class for keeping track of visible tracks //
11
// and segments and their materials, for //
12
// colour-prd-by-XXX modes. //
13
// //
14
// Author: Thomas H. Kittelmann (Thomas.Kittelmann@cern.ch) //
15
// Initial version: December 2007 //
16
// //
18
19
#ifndef PRDTRACKSEGMENTHELPER_H
20
#define PRDTRACKSEGMENTHELPER_H
21
22
#include "
VP1Base/VP1HelperClassBase.h
"
23
#include <QObject>
24
#include <vector>
25
#include <map>
26
27
class
SoMaterial;
28
class
PRDHandleBase
;
29
namespace
Trk
30
{
31
class
Track
;
32
class
Segment
;
33
class
PrepRawData
;
34
}
35
36
class
PRDTrackSegmentHelper
:
public
QObject,
public
VP1HelperClassBase
{
37
38
Q_OBJECT
39
40
public
:
41
42
PRDTrackSegmentHelper
( std::map<
const
Trk::PrepRawData
*, QList<PRDHandleBase *> >* prd2handle,
43
IVP1System
* sys = 0, QObject * parent = 0);
44
virtual
~PRDTrackSegmentHelper
();
45
46
//This is used to inform the class of changes in visible tracks and segments:
47
void
visibleTracksChanged
(
const
std::vector< std::pair<const Trk::Track*, const SoMaterial*> >&);
48
void
visibleSegmentsChanged
(
const
std::vector< std::pair<const Trk::Segment*, const SoMaterial*> >&);
49
50
SoMaterial *
trackMaterial
(
const
Trk::Track
*)
const
;
51
SoMaterial *
segmentMaterial
(
const
Trk::Segment
*)
const
;
52
class
TracksAndSegments
{
53
public
:
54
inline
TracksAndSegments
(
const
std::vector<const Trk::Track*>&,
const
std::vector<const Trk::Track*>&,
const
std::vector< const Trk::Segment* >& );
55
std::vector<const Trk::Track*>
tracks
;
//tracks using the given prd in the fit
56
std::vector<const Trk::Track*>
tracks_outliers
;
//tracks where the given prd is associated as 'outlier'
57
std::vector< const Trk::Segment* >
segments
;
//segments using the given prd
58
};
59
const
TracksAndSegments
*
tracksAndSegments
(
const
Trk::PrepRawData
*);
//0 means no tracks/segments
60
private
:
61
62
class
Imp
;
63
Imp
*
m_d
;
64
65
};
66
67
#endif
VP1HelperClassBase.h
IVP1System
Definition
IVP1System.h:36
PRDHandleBase
Definition
PRDHandleBase.h:35
PRDTrackSegmentHelper::Imp
Definition
PRDTrackSegmentHelper.cxx:29
PRDTrackSegmentHelper::TracksAndSegments
Definition
PRDTrackSegmentHelper.h:52
PRDTrackSegmentHelper::TracksAndSegments::segments
std::vector< const Trk::Segment * > segments
Definition
PRDTrackSegmentHelper.h:57
PRDTrackSegmentHelper::TracksAndSegments::TracksAndSegments
TracksAndSegments(const std::vector< const Trk::Track * > &, const std::vector< const Trk::Track * > &, const std::vector< const Trk::Segment * > &)
Definition
PRDTrackSegmentHelper.cxx:513
PRDTrackSegmentHelper::TracksAndSegments::tracks_outliers
std::vector< const Trk::Track * > tracks_outliers
Definition
PRDTrackSegmentHelper.h:56
PRDTrackSegmentHelper::TracksAndSegments::tracks
std::vector< const Trk::Track * > tracks
Definition
PRDTrackSegmentHelper.h:55
PRDTrackSegmentHelper::trackMaterial
SoMaterial * trackMaterial(const Trk::Track *) const
Definition
PRDTrackSegmentHelper.cxx:521
PRDTrackSegmentHelper::tracksAndSegments
const TracksAndSegments * tracksAndSegments(const Trk::PrepRawData *)
Definition
PRDTrackSegmentHelper.cxx:483
PRDTrackSegmentHelper::visibleSegmentsChanged
void visibleSegmentsChanged(const std::vector< std::pair< const Trk::Segment *, const SoMaterial * > > &)
Definition
PRDTrackSegmentHelper.cxx:179
PRDTrackSegmentHelper::visibleTracksChanged
void visibleTracksChanged(const std::vector< std::pair< const Trk::Track *, const SoMaterial * > > &)
Definition
PRDTrackSegmentHelper.cxx:98
PRDTrackSegmentHelper::~PRDTrackSegmentHelper
virtual ~PRDTrackSegmentHelper()
Definition
PRDTrackSegmentHelper.cxx:92
PRDTrackSegmentHelper::PRDTrackSegmentHelper
PRDTrackSegmentHelper(std::map< const Trk::PrepRawData *, QList< PRDHandleBase * > > *prd2handle, IVP1System *sys=0, QObject *parent=0)
Definition
PRDTrackSegmentHelper.cxx:83
PRDTrackSegmentHelper::segmentMaterial
SoMaterial * segmentMaterial(const Trk::Segment *) const
Definition
PRDTrackSegmentHelper.cxx:528
PRDTrackSegmentHelper::m_d
Imp * m_d
Definition
PRDTrackSegmentHelper.h:63
Trk::PrepRawData
Definition
PrepRawData.h:62
Trk::Segment
Base class for all TrackSegment implementations, extends the common MeasurementBase.
Definition
Tracking/TrkEvent/TrkSegment/TrkSegment/Segment.h:56
Trk::Track
The ATLAS Track class.
Definition
Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
VP1HelperClassBase::VP1HelperClassBase
VP1HelperClassBase(IVP1System *sys=0, QString helpername="")
Definition
VP1HelperClassBase.cxx:28
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Generated on
for ATLAS Offline Software by
1.17.0