//  
// Author: Oliver Maria Kind <mailto: kind@mail.desy.de>
// Update: $Id: AtlIDTrack.h,v 1.19 2015/09/02 06:22:07 mergelm Exp $
// Copyright: 2008 (C) Oliver Maria Kind
//
#ifndef ATLAS_AtlIDTrack
#define ATLAS_AtlIDTrack
#ifndef ATLAS_AtlTRTDigit
#include <AtlTRTDigit.h>
#endif
#ifndef ATLAS_AtlPixelHit
#include "AtlPixelHit.h"
#endif
#ifndef ATLAS_AtlSCT3DHit
#include "AtlSCT3DHit.h"
#endif
#ifndef ROOT_HepVtxTrackHelix
#include <HepVtxTrackHelix.h>
#endif
#ifndef ROOT_TRefArray
#include <TRefArray.h>
#endif
#ifndef HEP_HepMCParticle
#include <HepMCParticle.h>
#endif
#include <iostream>



class AtlIDTrack : public HepVtxTrackHelix {

private:
    TRefArray *fTRTHits;          // List of hits in the TRT belonging to this
			          // track
    TRefArray *fPixelHits;        // List of hits in the Pixels belonging to this
                                  // track
    TRefArray *fSCTHits;          // List of hits in the SCT belonging to this
                                  // track
    TRef      *fMCParticle;       // Link to the MC truth particle matched
			          // by Athena's hi-based matching
    Float_t    fMCParticleProb;   // Probability of hit-based truth matching

    Int_t fN_ContribPixelLayers;       // Number of contributing layers of the pixel detector
    Bool_t fExpectHitInBLayer;         // Boolean to know if b-layer hit is expected
    Int_t fN_BLayerHits;               // These are the hits in the first pixel layer, i.e. b-layer
    Int_t fN_BLayerOutliers;           // Number of blayer outliers
    Int_t fN_BLayerSharedHits;         // Number of Pixel b-layer hits shared by several tracks.
    Int_t fN_PixelHits;                // These are the pixel hits, including the b-layer
    Int_t fN_PixelOutliers;            // Number of pixel outliers
    Int_t fN_PixelHoles;               // Number of pixel layers on track with absence of hits
    Int_t fN_PixelSharedHits;          // Number of Pixel all-layer hits shared by several tracks.
    Int_t fN_GangedPixels;             // Number of pixels which have a ganged ambiguity.
    Int_t fN_GangedFlaggedFakes;       // Number of Ganged Pixels flagged as fakes
    Int_t fN_PixelDeadSensors;         // Number of dead pixel sensors crossed
    Int_t fN_PixelSpoiltHits;          // Number of pixel hits with broad errors (width/sqrt(12))
    Int_t fN_SCTHits;                  // Number of hits in SCT
    Int_t fN_SCTOutliers;              // Number of SCT outliers
    Int_t fN_SCTHoles;                 // Number of SCT holes
    Int_t fN_SCTDoubleHoles;           // Number of Holes in both sides of a SCT module
    Int_t fN_SCTSharedHits;            // Number of SCT hits shared by several tracks.
    Int_t fN_SCTDeadSensors;           // Number of dead SCT sensors crossed
    Int_t fN_SCTSpoiltHits;            // Number of SCT hits with broad errors (width/sqrt(12))
    Int_t fN_TRTHits;                  // Number of TRT hits
    Int_t fN_TRTOutliers;              // Number of TRT outliers
    Int_t fN_TRTHoles;                 // Number of TRT holes
    Int_t fN_TRTHighThresholdHits;     // Number of TRT hits which pass the high threshold
    Int_t fN_TRTHighThresholdOutliers; // Number of TRT high threshold outliers
    Int_t fN_TRTDeadStraws;            // Number of dead TRT straws crossed
    Int_t fN_TRTTubeHits;              // Number of TRT tube hits
    Float_t fPixeldEdx;                // dE/dx estimate, calculated using the pixel clusters 
    
  public:
    AtlIDTrack();
    AtlIDTrack(Int_t Id, Float_t Chi2, Int_t NDoF,
	       Float_t Xref, Float_t Yref, Float_t Zref, Float_t Phi0,
	       Float_t QovP, Float_t D0, Float_t Z0, Float_t Theta0, 
	       const Float_t CovMat[15] = 0);
    virtual ~AtlIDTrack();
    virtual void Clear(Option_t *option = "");
    virtual const HepMagneticField* GetMagneticField() const;
    virtual void Print(Option_t *option = "") const;
    static void PrintHeader();
    static void PrintFooter();
    void PrintHits();
    void AddTRTHit(AtlTRTDigit *hit);
    void AddPixelHit(AtlPixelHit *hit);
    void AddSCTHit(AtlSCT3DHit *hit);
    
    inline HepMCParticle* GetMCParticle() const {
	//
	// Return corresponding truth particle to this track (found by
	// Athena's hit-based truth matching algorithm) Please ask with 
	// AtlIDTrack->HasValidTruthMatch(Prob) for an existing MCParticle with
	// corresponding to a required 'Matching Probability' before using
	// GetMCParticle()
	//
	if (fMCParticle->GetObject() == 0)
	    std::cout << std::endl
		      << "WARNING !!!! RETURNED MCPARTICLE IS 0 !!!"  << std::endl
		      << "Please use HasValidTruthMatch(Prob) before!"
		      << std::endl << std::endl;
	return (HepMCParticle*)fMCParticle->GetObject(); 
    }
    inline Float_t GetMCParticleProb() const {
	//
	// Goodness of the hit-based track <-> particle truth matching
	//
	return fMCParticleProb; 
    }
    inline void SetMCParticle(HepMCParticle *mcprt,
			      Float_t prob) {
	//
	// Set hit-based matched MC truth particle
	//
	*fMCParticle = (TObject*)mcprt;
	fMCParticleProb = prob;
    }
    inline Bool_t HasValidTruthMatch(Float_t Prob) {
	//
	// Does this track have a valid MC truth match ?
	//
	if ( fMCParticle->GetObject() == 0) return kFALSE;
	else return ( fMCParticleProb > Prob ) ? kTRUE : kFALSE;
    }
    inline TRefArray* GetTRTHits() const {
	//
	// Get list of TRT hits
	// (only valid in case of ESDs)
	//
	return fTRTHits;
    }
    inline TRefArray* GetPixelHits() const {
	//
	// Get list of pixel detector hits
	// (only valid in case of ESDs)
	//
	return fPixelHits;
    }
    inline TRefArray* GetSCTHits() const {
	//
	// Get list of SCT hits
	// (only valid in case of ESDs)
	//
	return fSCTHits; }

    inline Int_t GetN_ContribPixelLayers() const {
	//
	// Get the number of contributing layers of the pixel detector
	//
	return fN_ContribPixelLayers;
    }
    inline Bool_t ExpectHitInBLayer() const {
      //
      // Get the info if b-layer hit is expected
      //
      return fExpectHitInBLayer;
    }
    inline Int_t GetN_BLayerHits() const {
	//
	// Get the number of hits in the first pixel layer, i.e. b-layer
	//
	return fN_BLayerHits;
    }
    inline Int_t Get_BLayerOutliers() const {
	//
	// Get the number of blayer outliers
	//
	return fN_BLayerOutliers;
    }
    inline Int_t GetN_BLayerSharedHit() const {
	//
	// Get the number of Pixel b-layer hits shared by several
	// tracks
	//
	return fN_BLayerSharedHits;
    }
    inline Int_t GetN_PixelHits() const {
	//
	// Get the number of pixel hits, including the b-layer
	//
	return fN_PixelHits;
    }
    inline Int_t GetN_PixelOutliers() const {
        //
        // Get the number of pixel hits, including the b-layer
        //
        return fN_PixelOutliers;
    }
    inline Int_t GetN_PixelHoles() const {
	//
	// Get the number of pixel layers on track with absence of
	// hits
	//
	return fN_PixelHoles;
    }
    inline Int_t GetN_PixelSharedHits() const {
	//
	// Get the number of Pixel all-layer hits shared by several
	// tracks
	//
	return fN_PixelSharedHits;
    }
    inline Int_t GetN_GangedPixels() const {
	//
	// Get the number of pixels which have a ganged ambiguity
	//
	return fN_GangedPixels;
    }
    inline Int_t GetN_GangedFlaggedFakes() const {
	//
	// Get the number of Ganged Pixels flagged as fakes
	//
	return fN_GangedFlaggedFakes;
    }
    inline Int_t GetN_PixelDeadSensors() const {
	//
	// Get the number of dead pixel sensors crossed
	//
	return fN_PixelDeadSensors;
    }
    inline Int_t GetN_PixelSpoiltHits() const {
	//
	// Get the number of pixel hits with broad errors
	// (width/sqrt(12))
	return fN_PixelSpoiltHits;
    }
    inline Int_t GetN_SCTHits() const {
	//
	// Get the number of hits in SCT
	//
	return fN_SCTHits;
    }
    inline Int_t GetN_SCTOutliers() const {
	//
	// Return the number of SCT outliers
	//
	return fN_SCTOutliers;
    }
    inline Int_t GetN_SCTHoles() const {
	//
	// Get the number of SCT holes
	//
	return fN_SCTHoles;
    }
    inline Int_t GetN_SCTDoubleHoles() const {
	//
	// Get the number of Holes in both sides of a SCT module
	//
	return fN_SCTDoubleHoles;
    }
    inline Int_t GetN_SCTSharedHits() const {
	//
	// Get the number of SCT hits shared by several tracks
	//
	return fN_SCTSharedHits;
    }
    inline Int_t GetN_SCTDeadSensors() const {
	//
	// Get the number of dead SCT sensors crossed
	//
	return fN_SCTDeadSensors;
    }
    inline Int_t GetN_SCTSpoiltHits() const {
	//
	// Get the number of SCT hits with broad errors
	// (width/sqrt(12))
	//
	return fN_SCTSpoiltHits;
    }
    inline Int_t GetN_TRTHits() const {
	//
	// Get the number of TRT hits
	//
	return fN_TRTHits;
    }
    inline Int_t GetN_TRTOutliers() const {
	//
	// Get the number of TRT outliers
	//
	return fN_TRTOutliers;
    }
    inline Int_t GetN_TRTHoles() const {
	//
	// Get the number of TRT holes
	//
	return fN_TRTHoles;
    }
    inline Int_t GetN_TRTHighThresholdHits() const {
	//
	// Get the number of TRT hits which pass the high threshold
	//
	return fN_TRTHighThresholdHits;
    }
    inline Int_t GetN_TRTHighThresholdOutliers() const {
	//
	// Gett the number of TRT high threshold outliers
	//
	return fN_TRTHighThresholdOutliers;
    }
    inline Int_t GetN_TRTDeadStraws() const {
	//
	// Get the number of dead TRT straws crossed
	//
	return fN_TRTDeadStraws;
    }
    inline Int_t GetN_TRTTubeHits() const {
	//
	// Get the number of TRT tube hits
	//
	return fN_TRTTubeHits;
    }
    inline Float_t GetPixeldEdx() const {
	//
	// Get the number of TRT tube hits
	//
	return fPixeldEdx;
    }
    inline void SetN_ContribPixelLayers(Int_t N_ContribPixelLayers) {
	//
	// Set the number of contributing layers of the pixel detector
	//
	fN_ContribPixelLayers = N_ContribPixelLayers;
    }
    inline void SetExpectHitInBLayer(Bool_t ExpectHitInBLayer) {
	//
	// Define if b-layer hit is expected
	//
	fExpectHitInBLayer = ExpectHitInBLayer;
    }
    inline void SetN_BLayerHits(Int_t N_BLayerHits) {
	//
	// Set the number of hits in the first pixel layer, i.e. b-layer
	//
	fN_BLayerHits = N_BLayerHits;
    }
    inline void SetN_BLayerOutliers(Int_t N_BLayerOutliers) {
	//
	// Set the number of blayer outliers
	//
	fN_BLayerOutliers = N_BLayerOutliers;
    }
    inline void SetN_BLayerSharedHits(Int_t N_BLayerSharedHits) {
	//
	// Set the number of Pixel b-layer hits shared by several
	// tracks
	//
	fN_BLayerSharedHits = N_BLayerSharedHits;
    }
    inline void SetN_PixelHits(Int_t N_PixelHits) {
	//
	// Set the number of pixel hits, including the b-layer
	//
	fN_PixelHits = N_PixelHits;
    }
    inline void SetN_PixelOutliers(Int_t N_PixelOutliers) {
        //
        // Set the number of pixel hits, including the b-layer
        //
        fN_PixelOutliers = N_PixelOutliers;
    }
    inline void SetN_PixelHoles(Int_t N_PixelHoles) {
	//
	// Setx the number of pixel layers on track with absence of
	// hits
	//
	fN_PixelHoles = N_PixelHoles;
    }
    inline void SetN_PixelSharedHits(Int_t N_PixelSharedHits) {
	//
	// Set the number of Pixel all-layer hits shared by several
	// tracks
	//
	fN_PixelSharedHits = N_PixelSharedHits;
    }
    inline void SetN_GangedPixels(Int_t N_GangedPixels) {
	//
	// Set the number of pixels which have a ganged ambiguity
	//
	fN_GangedPixels = N_GangedPixels;
    }
    inline void SetN_GangedFlaggedFakes(Int_t N_GangedFlaggedFakes) {
	//
	// Set the number of Ganged Pixels flagged as fakes
	//
	fN_GangedFlaggedFakes = N_GangedFlaggedFakes;
    }
    inline void SetN_PixelDeadSensors(Int_t N_PixelDeadSensors) {
	//
	// Set the number of dead pixel sensors crossed
	//
	fN_PixelDeadSensors = N_PixelDeadSensors;
    }
    inline void SetN_PixelSpoiltHits(Int_t N_PixelSpoiltHits) {
	//
	// Set the number of pixel hits with broad errors
	// (width/sqrt(12))
	fN_PixelSpoiltHits = N_PixelSpoiltHits;
    }
    inline void SetN_SCTHits(Int_t N_SCTHits) {
	//
	// Set the number of hits in SCT
	//
	fN_SCTHits = N_SCTHits;
    }
    inline void SetN_SCTOutliers(Int_t N_SCTOutliers) {
	//
	// the number of SCT outliers
	//
	fN_SCTOutliers = N_SCTOutliers;
    }
    inline void SetN_SCTHoles(Int_t N_SCTHoles) {
	//
	// Set the number of SCT holes
	//
	fN_SCTHoles = N_SCTHoles;
    }
    inline void SetN_SCTDoubleHoles(Int_t N_SCTDoubleHoles) {
	//
	// Set the number of Holes in both sides of a SCT module
	//
	fN_SCTDoubleHoles = N_SCTDoubleHoles;
    }
    inline void SetN_SCTSharedHits(Int_t N_SCTSharedHits) {
	//
	// Set the number of SCT hits shared by several tracks
	//
	fN_SCTSharedHits = N_SCTSharedHits;
    }
    inline void SetN_SCTDeadSensors(Int_t N_SCTDeadSensors) {
	//
	// Set the number of dead SCT sensors crossed
	//
	fN_SCTDeadSensors = N_SCTDeadSensors;
    }
    inline void SetN_SCTSpoiltHits(Int_t N_SCTSpoiltHits) {
	//
	// Set the number of SCT hits with broad errors
	// (width/sqrt(12))
	//
	fN_SCTSpoiltHits = N_SCTSpoiltHits;
    }
    inline void SetN_TRTHits(Int_t N_TRTHits) {
	//
	// Set the number of TRT hits
	//
	fN_TRTHits = N_TRTHits;
    }
    inline void SetN_TRTOutliers(Int_t N_TRTOutliers) {
	//
	// Set the number of TRT outliers
	//
	fN_TRTOutliers = N_TRTOutliers;
    }
    inline void SetN_TRTHoles(Int_t N_TRTHoles) {
	//
	// Set the number of TRT holes
	//
	fN_TRTHoles = N_TRTHoles;
    }
    inline void SetN_TRTHighThresholdHits(Int_t N_TRTHighThresholdHits) {
	//
	// Set the number of TRT hits which pass the high threshold
	//
	fN_TRTHighThresholdHits = N_TRTHighThresholdHits;
    }
    inline void SetN_TRTHighThresholdOutliers(Int_t N_TRTHighThresholdOutliers) {
	//
	// Sett the number of TRT high threshold outliers
	//
	fN_TRTHighThresholdOutliers = N_TRTHighThresholdOutliers;
    }
    inline void SetN_TRTDeadStraws(Int_t N_TRTDeadStraws) {
	//
	// Set the number of dead TRT straws crossed
	//
	fN_TRTDeadStraws = N_TRTDeadStraws;
    }
    inline void SetN_TRTTubeHits(Int_t N_TRTTubeHits) {
	//
	// Set the number of TRT tube hits
	//
	fN_TRTTubeHits = N_TRTTubeHits;
    }
    inline void SetPixeldEdx  (Float_t PixeldEdx  ) {
	//
	// Set dE/dx, calculated using the pixel clusters 
	//
	fPixeldEdx  = PixeldEdx ;
    }

    ClassDef(AtlIDTrack,11) // ATLAS inner detector track
};
#endif
 AtlIDTrack.h:1
 AtlIDTrack.h:2
 AtlIDTrack.h:3
 AtlIDTrack.h:4
 AtlIDTrack.h:5
 AtlIDTrack.h:6
 AtlIDTrack.h:7
 AtlIDTrack.h:8
 AtlIDTrack.h:9
 AtlIDTrack.h:10
 AtlIDTrack.h:11
 AtlIDTrack.h:12
 AtlIDTrack.h:13
 AtlIDTrack.h:14
 AtlIDTrack.h:15
 AtlIDTrack.h:16
 AtlIDTrack.h:17
 AtlIDTrack.h:18
 AtlIDTrack.h:19
 AtlIDTrack.h:20
 AtlIDTrack.h:21
 AtlIDTrack.h:22
 AtlIDTrack.h:23
 AtlIDTrack.h:24
 AtlIDTrack.h:25
 AtlIDTrack.h:26
 AtlIDTrack.h:27
 AtlIDTrack.h:28
 AtlIDTrack.h:29
 AtlIDTrack.h:30
 AtlIDTrack.h:31
 AtlIDTrack.h:32
 AtlIDTrack.h:33
 AtlIDTrack.h:34
 AtlIDTrack.h:35
 AtlIDTrack.h:36
 AtlIDTrack.h:37
 AtlIDTrack.h:38
 AtlIDTrack.h:39
 AtlIDTrack.h:40
 AtlIDTrack.h:41
 AtlIDTrack.h:42
 AtlIDTrack.h:43
 AtlIDTrack.h:44
 AtlIDTrack.h:45
 AtlIDTrack.h:46
 AtlIDTrack.h:47
 AtlIDTrack.h:48
 AtlIDTrack.h:49
 AtlIDTrack.h:50
 AtlIDTrack.h:51
 AtlIDTrack.h:52
 AtlIDTrack.h:53
 AtlIDTrack.h:54
 AtlIDTrack.h:55
 AtlIDTrack.h:56
 AtlIDTrack.h:57
 AtlIDTrack.h:58
 AtlIDTrack.h:59
 AtlIDTrack.h:60
 AtlIDTrack.h:61
 AtlIDTrack.h:62
 AtlIDTrack.h:63
 AtlIDTrack.h:64
 AtlIDTrack.h:65
 AtlIDTrack.h:66
 AtlIDTrack.h:67
 AtlIDTrack.h:68
 AtlIDTrack.h:69
 AtlIDTrack.h:70
 AtlIDTrack.h:71
 AtlIDTrack.h:72
 AtlIDTrack.h:73
 AtlIDTrack.h:74
 AtlIDTrack.h:75
 AtlIDTrack.h:76
 AtlIDTrack.h:77
 AtlIDTrack.h:78
 AtlIDTrack.h:79
 AtlIDTrack.h:80
 AtlIDTrack.h:81
 AtlIDTrack.h:82
 AtlIDTrack.h:83
 AtlIDTrack.h:84
 AtlIDTrack.h:85
 AtlIDTrack.h:86
 AtlIDTrack.h:87
 AtlIDTrack.h:88
 AtlIDTrack.h:89
 AtlIDTrack.h:90
 AtlIDTrack.h:91
 AtlIDTrack.h:92
 AtlIDTrack.h:93
 AtlIDTrack.h:94
 AtlIDTrack.h:95
 AtlIDTrack.h:96
 AtlIDTrack.h:97
 AtlIDTrack.h:98
 AtlIDTrack.h:99
 AtlIDTrack.h:100
 AtlIDTrack.h:101
 AtlIDTrack.h:102
 AtlIDTrack.h:103
 AtlIDTrack.h:104
 AtlIDTrack.h:105
 AtlIDTrack.h:106
 AtlIDTrack.h:107
 AtlIDTrack.h:108
 AtlIDTrack.h:109
 AtlIDTrack.h:110
 AtlIDTrack.h:111
 AtlIDTrack.h:112
 AtlIDTrack.h:113
 AtlIDTrack.h:114
 AtlIDTrack.h:115
 AtlIDTrack.h:116
 AtlIDTrack.h:117
 AtlIDTrack.h:118
 AtlIDTrack.h:119
 AtlIDTrack.h:120
 AtlIDTrack.h:121
 AtlIDTrack.h:122
 AtlIDTrack.h:123
 AtlIDTrack.h:124
 AtlIDTrack.h:125
 AtlIDTrack.h:126
 AtlIDTrack.h:127
 AtlIDTrack.h:128
 AtlIDTrack.h:129
 AtlIDTrack.h:130
 AtlIDTrack.h:131
 AtlIDTrack.h:132
 AtlIDTrack.h:133
 AtlIDTrack.h:134
 AtlIDTrack.h:135
 AtlIDTrack.h:136
 AtlIDTrack.h:137
 AtlIDTrack.h:138
 AtlIDTrack.h:139
 AtlIDTrack.h:140
 AtlIDTrack.h:141
 AtlIDTrack.h:142
 AtlIDTrack.h:143
 AtlIDTrack.h:144
 AtlIDTrack.h:145
 AtlIDTrack.h:146
 AtlIDTrack.h:147
 AtlIDTrack.h:148
 AtlIDTrack.h:149
 AtlIDTrack.h:150
 AtlIDTrack.h:151
 AtlIDTrack.h:152
 AtlIDTrack.h:153
 AtlIDTrack.h:154
 AtlIDTrack.h:155
 AtlIDTrack.h:156
 AtlIDTrack.h:157
 AtlIDTrack.h:158
 AtlIDTrack.h:159
 AtlIDTrack.h:160
 AtlIDTrack.h:161
 AtlIDTrack.h:162
 AtlIDTrack.h:163
 AtlIDTrack.h:164
 AtlIDTrack.h:165
 AtlIDTrack.h:166
 AtlIDTrack.h:167
 AtlIDTrack.h:168
 AtlIDTrack.h:169
 AtlIDTrack.h:170
 AtlIDTrack.h:171
 AtlIDTrack.h:172
 AtlIDTrack.h:173
 AtlIDTrack.h:174
 AtlIDTrack.h:175
 AtlIDTrack.h:176
 AtlIDTrack.h:177
 AtlIDTrack.h:178
 AtlIDTrack.h:179
 AtlIDTrack.h:180
 AtlIDTrack.h:181
 AtlIDTrack.h:182
 AtlIDTrack.h:183
 AtlIDTrack.h:184
 AtlIDTrack.h:185
 AtlIDTrack.h:186
 AtlIDTrack.h:187
 AtlIDTrack.h:188
 AtlIDTrack.h:189
 AtlIDTrack.h:190
 AtlIDTrack.h:191
 AtlIDTrack.h:192
 AtlIDTrack.h:193
 AtlIDTrack.h:194
 AtlIDTrack.h:195
 AtlIDTrack.h:196
 AtlIDTrack.h:197
 AtlIDTrack.h:198
 AtlIDTrack.h:199
 AtlIDTrack.h:200
 AtlIDTrack.h:201
 AtlIDTrack.h:202
 AtlIDTrack.h:203
 AtlIDTrack.h:204
 AtlIDTrack.h:205
 AtlIDTrack.h:206
 AtlIDTrack.h:207
 AtlIDTrack.h:208
 AtlIDTrack.h:209
 AtlIDTrack.h:210
 AtlIDTrack.h:211
 AtlIDTrack.h:212
 AtlIDTrack.h:213
 AtlIDTrack.h:214
 AtlIDTrack.h:215
 AtlIDTrack.h:216
 AtlIDTrack.h:217
 AtlIDTrack.h:218
 AtlIDTrack.h:219
 AtlIDTrack.h:220
 AtlIDTrack.h:221
 AtlIDTrack.h:222
 AtlIDTrack.h:223
 AtlIDTrack.h:224
 AtlIDTrack.h:225
 AtlIDTrack.h:226
 AtlIDTrack.h:227
 AtlIDTrack.h:228
 AtlIDTrack.h:229
 AtlIDTrack.h:230
 AtlIDTrack.h:231
 AtlIDTrack.h:232
 AtlIDTrack.h:233
 AtlIDTrack.h:234
 AtlIDTrack.h:235
 AtlIDTrack.h:236
 AtlIDTrack.h:237
 AtlIDTrack.h:238
 AtlIDTrack.h:239
 AtlIDTrack.h:240
 AtlIDTrack.h:241
 AtlIDTrack.h:242
 AtlIDTrack.h:243
 AtlIDTrack.h:244
 AtlIDTrack.h:245
 AtlIDTrack.h:246
 AtlIDTrack.h:247
 AtlIDTrack.h:248
 AtlIDTrack.h:249
 AtlIDTrack.h:250
 AtlIDTrack.h:251
 AtlIDTrack.h:252
 AtlIDTrack.h:253
 AtlIDTrack.h:254
 AtlIDTrack.h:255
 AtlIDTrack.h:256
 AtlIDTrack.h:257
 AtlIDTrack.h:258
 AtlIDTrack.h:259
 AtlIDTrack.h:260
 AtlIDTrack.h:261
 AtlIDTrack.h:262
 AtlIDTrack.h:263
 AtlIDTrack.h:264
 AtlIDTrack.h:265
 AtlIDTrack.h:266
 AtlIDTrack.h:267
 AtlIDTrack.h:268
 AtlIDTrack.h:269
 AtlIDTrack.h:270
 AtlIDTrack.h:271
 AtlIDTrack.h:272
 AtlIDTrack.h:273
 AtlIDTrack.h:274
 AtlIDTrack.h:275
 AtlIDTrack.h:276
 AtlIDTrack.h:277
 AtlIDTrack.h:278
 AtlIDTrack.h:279
 AtlIDTrack.h:280
 AtlIDTrack.h:281
 AtlIDTrack.h:282
 AtlIDTrack.h:283
 AtlIDTrack.h:284
 AtlIDTrack.h:285
 AtlIDTrack.h:286
 AtlIDTrack.h:287
 AtlIDTrack.h:288
 AtlIDTrack.h:289
 AtlIDTrack.h:290
 AtlIDTrack.h:291
 AtlIDTrack.h:292
 AtlIDTrack.h:293
 AtlIDTrack.h:294
 AtlIDTrack.h:295
 AtlIDTrack.h:296
 AtlIDTrack.h:297
 AtlIDTrack.h:298
 AtlIDTrack.h:299
 AtlIDTrack.h:300
 AtlIDTrack.h:301
 AtlIDTrack.h:302
 AtlIDTrack.h:303
 AtlIDTrack.h:304
 AtlIDTrack.h:305
 AtlIDTrack.h:306
 AtlIDTrack.h:307
 AtlIDTrack.h:308
 AtlIDTrack.h:309
 AtlIDTrack.h:310
 AtlIDTrack.h:311
 AtlIDTrack.h:312
 AtlIDTrack.h:313
 AtlIDTrack.h:314
 AtlIDTrack.h:315
 AtlIDTrack.h:316
 AtlIDTrack.h:317
 AtlIDTrack.h:318
 AtlIDTrack.h:319
 AtlIDTrack.h:320
 AtlIDTrack.h:321
 AtlIDTrack.h:322
 AtlIDTrack.h:323
 AtlIDTrack.h:324
 AtlIDTrack.h:325
 AtlIDTrack.h:326
 AtlIDTrack.h:327
 AtlIDTrack.h:328
 AtlIDTrack.h:329
 AtlIDTrack.h:330
 AtlIDTrack.h:331
 AtlIDTrack.h:332
 AtlIDTrack.h:333
 AtlIDTrack.h:334
 AtlIDTrack.h:335
 AtlIDTrack.h:336
 AtlIDTrack.h:337
 AtlIDTrack.h:338
 AtlIDTrack.h:339
 AtlIDTrack.h:340
 AtlIDTrack.h:341
 AtlIDTrack.h:342
 AtlIDTrack.h:343
 AtlIDTrack.h:344
 AtlIDTrack.h:345
 AtlIDTrack.h:346
 AtlIDTrack.h:347
 AtlIDTrack.h:348
 AtlIDTrack.h:349
 AtlIDTrack.h:350
 AtlIDTrack.h:351
 AtlIDTrack.h:352
 AtlIDTrack.h:353
 AtlIDTrack.h:354
 AtlIDTrack.h:355
 AtlIDTrack.h:356
 AtlIDTrack.h:357
 AtlIDTrack.h:358
 AtlIDTrack.h:359
 AtlIDTrack.h:360
 AtlIDTrack.h:361
 AtlIDTrack.h:362
 AtlIDTrack.h:363
 AtlIDTrack.h:364
 AtlIDTrack.h:365
 AtlIDTrack.h:366
 AtlIDTrack.h:367
 AtlIDTrack.h:368
 AtlIDTrack.h:369
 AtlIDTrack.h:370
 AtlIDTrack.h:371
 AtlIDTrack.h:372
 AtlIDTrack.h:373
 AtlIDTrack.h:374
 AtlIDTrack.h:375
 AtlIDTrack.h:376
 AtlIDTrack.h:377
 AtlIDTrack.h:378
 AtlIDTrack.h:379
 AtlIDTrack.h:380
 AtlIDTrack.h:381
 AtlIDTrack.h:382
 AtlIDTrack.h:383
 AtlIDTrack.h:384
 AtlIDTrack.h:385
 AtlIDTrack.h:386
 AtlIDTrack.h:387
 AtlIDTrack.h:388
 AtlIDTrack.h:389
 AtlIDTrack.h:390
 AtlIDTrack.h:391
 AtlIDTrack.h:392
 AtlIDTrack.h:393
 AtlIDTrack.h:394
 AtlIDTrack.h:395
 AtlIDTrack.h:396
 AtlIDTrack.h:397
 AtlIDTrack.h:398
 AtlIDTrack.h:399
 AtlIDTrack.h:400
 AtlIDTrack.h:401
 AtlIDTrack.h:402
 AtlIDTrack.h:403
 AtlIDTrack.h:404
 AtlIDTrack.h:405
 AtlIDTrack.h:406
 AtlIDTrack.h:407
 AtlIDTrack.h:408
 AtlIDTrack.h:409
 AtlIDTrack.h:410
 AtlIDTrack.h:411
 AtlIDTrack.h:412
 AtlIDTrack.h:413
 AtlIDTrack.h:414
 AtlIDTrack.h:415
 AtlIDTrack.h:416
 AtlIDTrack.h:417
 AtlIDTrack.h:418
 AtlIDTrack.h:419
 AtlIDTrack.h:420
 AtlIDTrack.h:421
 AtlIDTrack.h:422
 AtlIDTrack.h:423
 AtlIDTrack.h:424
 AtlIDTrack.h:425
 AtlIDTrack.h:426
 AtlIDTrack.h:427
 AtlIDTrack.h:428
 AtlIDTrack.h:429
 AtlIDTrack.h:430
 AtlIDTrack.h:431
 AtlIDTrack.h:432
 AtlIDTrack.h:433
 AtlIDTrack.h:434
 AtlIDTrack.h:435
 AtlIDTrack.h:436
 AtlIDTrack.h:437
 AtlIDTrack.h:438
 AtlIDTrack.h:439
 AtlIDTrack.h:440
 AtlIDTrack.h:441
 AtlIDTrack.h:442
 AtlIDTrack.h:443
 AtlIDTrack.h:444
 AtlIDTrack.h:445
 AtlIDTrack.h:446
 AtlIDTrack.h:447
 AtlIDTrack.h:448
 AtlIDTrack.h:449
 AtlIDTrack.h:450
 AtlIDTrack.h:451
 AtlIDTrack.h:452
 AtlIDTrack.h:453
 AtlIDTrack.h:454
 AtlIDTrack.h:455
 AtlIDTrack.h:456
 AtlIDTrack.h:457
 AtlIDTrack.h:458
 AtlIDTrack.h:459
 AtlIDTrack.h:460
 AtlIDTrack.h:461
 AtlIDTrack.h:462
 AtlIDTrack.h:463
 AtlIDTrack.h:464
 AtlIDTrack.h:465
 AtlIDTrack.h:466
 AtlIDTrack.h:467
 AtlIDTrack.h:468
 AtlIDTrack.h:469
 AtlIDTrack.h:470
 AtlIDTrack.h:471
 AtlIDTrack.h:472
 AtlIDTrack.h:473
 AtlIDTrack.h:474
 AtlIDTrack.h:475
 AtlIDTrack.h:476
 AtlIDTrack.h:477
 AtlIDTrack.h:478
 AtlIDTrack.h:479
 AtlIDTrack.h:480
 AtlIDTrack.h:481
 AtlIDTrack.h:482
 AtlIDTrack.h:483
 AtlIDTrack.h:484
 AtlIDTrack.h:485
 AtlIDTrack.h:486
 AtlIDTrack.h:487
 AtlIDTrack.h:488
 AtlIDTrack.h:489
 AtlIDTrack.h:490
 AtlIDTrack.h:491
 AtlIDTrack.h:492
 AtlIDTrack.h:493