ROOT logo
#ifndef ALIEMCALCLUSTRACKMATCHERTASK_H
#define ALIEMCALCLUSTRACKMATCHERTASK_H

// $Id$

#include "AliAnalysisTaskEmcal.h"

class AliEmcalClusTrackMatcherTask : public AliAnalysisTaskEmcal {
 public:
  AliEmcalClusTrackMatcherTask();
  AliEmcalClusTrackMatcherTask(const char *name, Bool_t histo=kFALSE);
  virtual ~AliEmcalClusTrackMatcherTask();

  void          SetMaxDistance(Double_t d)       { fMaxDistance = d; }
  void          SetModifyObjs(Bool_t b)          { fModifyObjs  = b; }

 protected:
  void          ExecOnce();
  Int_t         GetMomBin(Double_t p) const;
  Bool_t        Run();
  void          UserCreateOutputObjects();

  Double_t      fMaxDistance;           // maximum distance to match clusters and tracks
  Bool_t        fModifyObjs;            // if true then modify original tracks/clusters
  TClonesArray *fOrigTracks;            //!ptr to original tracks (used if fModifyObjs true)
  TClonesArray *fOrigClus;              //!ptr to original clusters (used if fModifyObjs true)
  TH1          *fHistMatchEtaAll;       //!deta distribution
  TH1          *fHistMatchPhiAll;       //!dphi distribution
  TH1          *fHistMatchEta[8][9][2]; //!deta distribution
  TH1          *fHistMatchPhi[8][9][2]; //!dphi distribution
  
 private:
  AliEmcalClusTrackMatcherTask(const AliEmcalClusTrackMatcherTask&);            // not implemented
  AliEmcalClusTrackMatcherTask &operator=(const AliEmcalClusTrackMatcherTask&); // not implemented

  ClassDef(AliEmcalClusTrackMatcherTask, 6) // Cluster-Track matching task
};
#endif
 AliEmcalClusTrackMatcherTask.h:1
 AliEmcalClusTrackMatcherTask.h:2
 AliEmcalClusTrackMatcherTask.h:3
 AliEmcalClusTrackMatcherTask.h:4
 AliEmcalClusTrackMatcherTask.h:5
 AliEmcalClusTrackMatcherTask.h:6
 AliEmcalClusTrackMatcherTask.h:7
 AliEmcalClusTrackMatcherTask.h:8
 AliEmcalClusTrackMatcherTask.h:9
 AliEmcalClusTrackMatcherTask.h:10
 AliEmcalClusTrackMatcherTask.h:11
 AliEmcalClusTrackMatcherTask.h:12
 AliEmcalClusTrackMatcherTask.h:13
 AliEmcalClusTrackMatcherTask.h:14
 AliEmcalClusTrackMatcherTask.h:15
 AliEmcalClusTrackMatcherTask.h:16
 AliEmcalClusTrackMatcherTask.h:17
 AliEmcalClusTrackMatcherTask.h:18
 AliEmcalClusTrackMatcherTask.h:19
 AliEmcalClusTrackMatcherTask.h:20
 AliEmcalClusTrackMatcherTask.h:21
 AliEmcalClusTrackMatcherTask.h:22
 AliEmcalClusTrackMatcherTask.h:23
 AliEmcalClusTrackMatcherTask.h:24
 AliEmcalClusTrackMatcherTask.h:25
 AliEmcalClusTrackMatcherTask.h:26
 AliEmcalClusTrackMatcherTask.h:27
 AliEmcalClusTrackMatcherTask.h:28
 AliEmcalClusTrackMatcherTask.h:29
 AliEmcalClusTrackMatcherTask.h:30
 AliEmcalClusTrackMatcherTask.h:31
 AliEmcalClusTrackMatcherTask.h:32
 AliEmcalClusTrackMatcherTask.h:33
 AliEmcalClusTrackMatcherTask.h:34
 AliEmcalClusTrackMatcherTask.h:35
 AliEmcalClusTrackMatcherTask.h:36
 AliEmcalClusTrackMatcherTask.h:37
 AliEmcalClusTrackMatcherTask.h:38