ROOT logo
/**************************************************************************
 * Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
/*
 * Track analysis component: Loops over tracks from the EMCal track container and
 * counts the tracks in histograms
 *
 *   Author: Markus Fasel
 */
#include <map>
#include <string>
#include <vector>

#include <TAxis.h>
#include <TClonesArray.h>
#include <TMath.h>
#include <TString.h>

#include "AliLog.h"
#include "AliMCEvent.h"
#include "AliVCluster.h"
#include "AliVEvent.h"
#include "AliVParticle.h"
#include "AliVTrack.h"

#include "AliEMCalTriggerAnaTriggerDecision.h"
#include "AliEMCalTriggerBinningComponent.h"
#include "AliEMCalTriggerEventData.h"
#include "AliEMCalTriggerKineCuts.h"
#include "AliEMCalPtTaskVTrackSelection.h"
#include "AliEMCalTriggerRecTrackAnalysisComponent.h"

ClassImp(EMCalTriggerPtAnalysis::AliEMCalTriggerRecTrackAnalysisComponent)

namespace EMCalTriggerPtAnalysis {

//______________________________________________________________________________
AliEMCalTriggerRecTrackAnalysisComponent::AliEMCalTriggerRecTrackAnalysisComponent() :
  AliEMCalTriggerTracksAnalysisComponent(),
  fTrackSelection(NULL),
  fSwapEta(kFALSE),
  fUsePatches(kFALSE),
  fRequestMCtrue(kFALSE)
{
  /*
   * Dummy (I/O) constructor
   */
}

//______________________________________________________________________________
AliEMCalTriggerRecTrackAnalysisComponent::AliEMCalTriggerRecTrackAnalysisComponent(const char *name) :
  AliEMCalTriggerTracksAnalysisComponent(name),
  fTrackSelection(NULL),
  fSwapEta(kFALSE),
  fUsePatches(kFALSE),
  fRequestMCtrue(kFALSE)
{
  /*
   * Main constructor
   */
}

//______________________________________________________________________________
AliEMCalTriggerRecTrackAnalysisComponent::~AliEMCalTriggerRecTrackAnalysisComponent() {
  /*
   * Destructor, taking care of the track selection
   */
  if(fTrackSelection) delete fTrackSelection;
}

//______________________________________________________________________________
void AliEMCalTriggerRecTrackAnalysisComponent::CreateHistos() {
  /*
   * Create histograms of the track analysis component. For each trigger class we have
   * - tracks with esd information
   * - tracks with MC information
   * - tracks with clusters and esd information
   * - tracks with clusters and MC information
   */
  AliEMCalTriggerTracksAnalysisComponent::CreateHistos();

  // Create trigger definitions
  std::map<std::string, std::string> triggerCombinations;
  const char *triggernames[11] = {"MinBias", "EMCJHigh", "EMCJLow", "EMCGHigh",
      "EMCGLow", "EMCHighBoth", "EMCHighGammaOnly", "EMCHighJetOnly",
      "EMCLowBoth", "EMCLowGammaOnly", "EMCLowJetOnly"};
  // Define names and titles for different triggers in the histogram container
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[0], "min. bias events"));
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[1], "jet-triggered events (high threshold)"));
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[2], "jet-triggered events (low threshold)"));
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[3], "gamma-triggered events (high threshold)"));
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[4], "gamma-triggered events (low threshold)"));
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[5], "jet and gamma triggered events (high threshold)"));
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[6], "exclusively gamma-triggered events (high threshold)"));
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[7], "exclusively jet-triggered events (high threshold)"));
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[8], "jet and gamma triggered events (low threshold)"));
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[9], "exclusively gamma-triggered events (low threshold)"));
  triggerCombinations.insert(std::pair<std::string,std::string>(triggernames[10], "exclusively-triggered events (low threshold)"));

  // Create axis definitions
  const AliEMCalTriggerBinningDimension *ptbinning = fBinning->GetBinning("pt"),
      *etabinning = fBinning->GetBinning("eta"),
      *phibinning = fBinning->GetBinning("phi"),
      *vertexbinning = fBinning->GetBinning("zvertex");

  const TAxis *trackaxes[5] = {
      DefineAxis("pt", ptbinning),
      DefineAxis("eta", etabinning),
      DefineAxis("phi", phibinning),
      DefineAxis("zvertex", vertexbinning),
      DefineAxis("mbtrigger", 2, -0.5, 1.5)
  };

  // Build histograms
  for(std::map<std::string,std::string>::iterator it = triggerCombinations.begin(); it != triggerCombinations.end(); ++it){
    const std::string name = it->first, &title = it->second;
    fHistos->CreateTHnSparse(Form("hTrackHist%s", name.c_str()), Form("Track-based data for %s events", title.c_str()), 5, trackaxes, "s");
    fHistos->CreateTHnSparse(Form("hTrackInAcceptanceHist%s", name.c_str()), Form("Track-based data for %s events  for tracks matched to EMCal clusters", title.c_str()), 5, trackaxes, "s");
    fHistos->CreateTHnSparse(Form("hMCTrackHist%s", name.c_str()), Form("Track-based data for %s events with MC kinematics", title.c_str()), 5, trackaxes, "s");
    fHistos->CreateTHnSparse(Form("hMCTrackInAcceptanceHist%s", name.c_str()), Form("Track-based data for %s events with MC kinematics for tracks matched to EMCal clusters", title.c_str()), 5, trackaxes, "s");
  }

  for(int iaxis = 0; iaxis < 5; iaxis++) delete trackaxes[iaxis];
}

//______________________________________________________________________________
void AliEMCalTriggerRecTrackAnalysisComponent::Process(const AliEMCalTriggerEventData* const data) {
  /*
   * Run track loop on list of matching tracks
   *
   * @param data: the event data
   */
  AliDebug(1, Form("Number of matched tracks: %d", data->GetMatchedTrackContainer()->GetEntries()));

  std::vector<std::string> triggernames;
  this->GetMachingTriggerNames(triggernames, fUsePatches);

  AliVTrack *track(NULL);
  AliVParticle *assocMC(NULL);
  TIter trackIter(data->GetMatchedTrackContainer());
  while((track = dynamic_cast<AliVTrack *>(trackIter()))){
    // Apply track selection
    assocMC = NULL;
    if(fKineCuts && !fKineCuts->IsSelected(track)) continue;
    if(fTrackSelection && !fTrackSelection->IsTrackAccepted(track)) continue;

    if(fRequestMCtrue && data->GetMCEvent() && !(assocMC = IsMCTrueTrack(track, data->GetMCEvent()))) continue;
    // Try to match the cluster
    Bool_t hasCluster = kFALSE;
    AliVCluster *clust(NULL);
    if(track->GetEMCALcluster() >= 0 && (clust = dynamic_cast<AliVCluster *>(data->GetClusterContainer()->At(track->GetEMCALcluster()))))
      hasCluster = kTRUE;

    // Fill histograms
    for(std::vector<std::string>::iterator name = triggernames.begin(); name != triggernames.end(); name++){
      FillHistogram(Form("hTrackHist%s", name->c_str()), track, NULL, data->GetRecEvent(), kFALSE);
      if(hasCluster) FillHistogram(Form("hTrackInAcceptanceHist%s", name->c_str()), track, NULL, data->GetRecEvent(), kFALSE);
      if(assocMC){
        FillHistogram(Form("hMCTrackHist%s", name->c_str()), track, NULL, data->GetRecEvent(), kTRUE);
        if(hasCluster) FillHistogram(Form("hMCTrackInAcceptanceHist%s", name->c_str()), track, NULL, data->GetRecEvent(), kTRUE);
      }
    }
  }
}

//______________________________________________________________________________
AliVParticle * AliEMCalTriggerRecTrackAnalysisComponent::IsMCTrueTrack(
    const AliVTrack* const trk, const AliMCEvent* evnt) const {
  /*
   * Check according to the associated MC information whether the track is a MC true track,
   * and whether it is physical primary
   *
   * @param trk: track to check
   * @param evnt: MC event information necessary for the check
   *
   * @return: the associated MC particle (NULL if not MC true)
   */
  int label = TMath::Abs(trk->GetLabel());
  AliVParticle *mcpart = evnt->GetTrack(label);
  if(!mcpart) return NULL;
  if(!evnt->IsPhysicalPrimary(label)) return NULL;
  return mcpart;
}

//______________________________________________________________________________
void AliEMCalTriggerRecTrackAnalysisComponent::FillHistogram(
    const TString& histname, const AliVTrack* const trk,
    const AliVParticle* assocMC, const AliVEvent* const recev,
    Bool_t useMCkine) {
  /*
   *
   */
  if(useMCkine && !assocMC) return;
  double data[5];
  data[0] = useMCkine ? TMath::Abs(assocMC->Pt()) : TMath::Abs(trk->Pt());
  data[1] = (fSwapEta ? -1. : 1.) * (useMCkine ? assocMC->Eta() : trk->Eta());
  data[2] = useMCkine ? assocMC->Phi() : trk->Phi();
  data[3] = recev->GetPrimaryVertex()->GetZ();
  data[4] = fTriggerDecision->IsMinBias();
  fHistos->FillTHnSparse(histname.Data(), data);
}

} /* namespace EMCalTriggerPtAnalysis */
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:1
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:2
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:3
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:4
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:5
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:6
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:7
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:8
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:9
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:10
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:11
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:12
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:13
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:14
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:15
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:16
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:17
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:18
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:19
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:20
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:21
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:22
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:23
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:24
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:25
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:26
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:27
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:28
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:29
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:30
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:31
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:32
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:33
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:34
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:35
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:36
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:37
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:38
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:39
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:40
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:41
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:42
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:43
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:44
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:45
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:46
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:47
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:48
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:49
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:50
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:51
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:52
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:53
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:54
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:55
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:56
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:57
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:58
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:59
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:60
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:61
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:62
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:63
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:64
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:65
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:66
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:67
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:68
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:69
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:70
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:71
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:72
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:73
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:74
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:75
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:76
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:77
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:78
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:79
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:80
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:81
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:82
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:83
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:84
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:85
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:86
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:87
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:88
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:89
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:90
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:91
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:92
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:93
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:94
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:95
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:96
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:97
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:98
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:99
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:100
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:101
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:102
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:103
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:104
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:105
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:106
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:107
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:108
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:109
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:110
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:111
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:112
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:113
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:114
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:115
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:116
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:117
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:118
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:119
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:120
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:121
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:122
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:123
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:124
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:125
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:126
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:127
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:128
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:129
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:130
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:131
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:132
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:133
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:134
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:135
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:136
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:137
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:138
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:139
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:140
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:141
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:142
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:143
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:144
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:145
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:146
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:147
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:148
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:149
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:150
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:151
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:152
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:153
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:154
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:155
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:156
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:157
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:158
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:159
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:160
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:161
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:162
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:163
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:164
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:165
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:166
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:167
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:168
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:169
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:170
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:171
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:172
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:173
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:174
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:175
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:176
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:177
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:178
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:179
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:180
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:181
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:182
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:183
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:184
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:185
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:186
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:187
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:188
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:189
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:190
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:191
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:192
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:193
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:194
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:195
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:196
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:197
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:198
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:199
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:200
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:201
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:202
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:203
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:204
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:205
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:206
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:207
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:208
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:209
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:210
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:211
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:212
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:213
 AliEMCalTriggerRecTrackAnalysisComponent.cxx:214