ROOT logo
#ifndef ALIITSURECONSTRUCTOR_H
#define ALIITSURECONSTRUCTOR_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

/* $Id: AliITSUReconstructor.h 54053 2012-01-22 22:12:15Z masera $ */
///////////////////////////////////////////////////////////////////////////////
//                                                                           //
// class for ITS reconstruction                                              //
//                                                                           //
///////////////////////////////////////////////////////////////////////////////

#include "AliReconstructor.h"
#include "AliITSURecoParam.h"
#include "AliITSURecoDet.h"

class AliTracker;
class AliTrackleter;
class AliITSUGeomTGeo;

class AliITSUReconstructor: public AliReconstructor {
public:
  AliITSUReconstructor();
  virtual ~AliITSUReconstructor();
  virtual void          Init();
  virtual void          Reconstruct(TTree *digitsTree, TTree *clustersTree) const;
  virtual void          Reconstruct(AliRawReader*, TTree*) const {};
  //
  virtual AliTracker*    CreateTracker()    const;
  virtual AliVertexer*   CreateVertexer()   const;
  virtual AliTrackleter* CreateMultFinder() const;
  virtual AliTracker*    CreateTrackleter() const;
  //
  virtual const char*    GetDetectorName() const {return "ITS";}
  //
  TClonesArray*          GetClusters(Int_t lrID)            const {return fClusters ? fClusters[lrID] : 0;}
  AliITSUGeomTGeo*       GetGeom()                          const {return (AliITSUGeomTGeo*)fGeom;}
  AliITSURecoDet*        GetITSInterface();
  //
  Int_t                  LoadClusters(TTree* treeRP)        {return GetITSInterface()->LoadClusters(treeRP);}
  //
  static const AliITSURecoParam* GetRecoParam() { 
    return dynamic_cast<const AliITSURecoParam*>(AliReconstructor::GetRecoParam(0)); }

private:
  AliITSUReconstructor(const AliITSUReconstructor &); //Not implemented
  AliITSUReconstructor& operator=(const AliITSUReconstructor &); //Not implemented
  AliITSUGeomTGeo* fGeom;          // geometry wrapper
  AliITSURecoDet*  fITS;           // interface to ITS (reconstruction oriented)
  TObjArray        fClusterFinders; // array of clusterfinders per layer
  TClonesArray**   fClusters;      // container for recpoints TClonesArrays
  //
  ClassDef(AliITSUReconstructor, 0)   // class for the ITSU reconstruction
};

#endif
 AliITSUReconstructor.h:1
 AliITSUReconstructor.h:2
 AliITSUReconstructor.h:3
 AliITSUReconstructor.h:4
 AliITSUReconstructor.h:5
 AliITSUReconstructor.h:6
 AliITSUReconstructor.h:7
 AliITSUReconstructor.h:8
 AliITSUReconstructor.h:9
 AliITSUReconstructor.h:10
 AliITSUReconstructor.h:11
 AliITSUReconstructor.h:12
 AliITSUReconstructor.h:13
 AliITSUReconstructor.h:14
 AliITSUReconstructor.h:15
 AliITSUReconstructor.h:16
 AliITSUReconstructor.h:17
 AliITSUReconstructor.h:18
 AliITSUReconstructor.h:19
 AliITSUReconstructor.h:20
 AliITSUReconstructor.h:21
 AliITSUReconstructor.h:22
 AliITSUReconstructor.h:23
 AliITSUReconstructor.h:24
 AliITSUReconstructor.h:25
 AliITSUReconstructor.h:26
 AliITSUReconstructor.h:27
 AliITSUReconstructor.h:28
 AliITSUReconstructor.h:29
 AliITSUReconstructor.h:30
 AliITSUReconstructor.h:31
 AliITSUReconstructor.h:32
 AliITSUReconstructor.h:33
 AliITSUReconstructor.h:34
 AliITSUReconstructor.h:35
 AliITSUReconstructor.h:36
 AliITSUReconstructor.h:37
 AliITSUReconstructor.h:38
 AliITSUReconstructor.h:39
 AliITSUReconstructor.h:40
 AliITSUReconstructor.h:41
 AliITSUReconstructor.h:42
 AliITSUReconstructor.h:43
 AliITSUReconstructor.h:44
 AliITSUReconstructor.h:45
 AliITSUReconstructor.h:46
 AliITSUReconstructor.h:47
 AliITSUReconstructor.h:48
 AliITSUReconstructor.h:49
 AliITSUReconstructor.h:50
 AliITSUReconstructor.h:51
 AliITSUReconstructor.h:52
 AliITSUReconstructor.h:53
 AliITSUReconstructor.h:54
 AliITSUReconstructor.h:55
 AliITSUReconstructor.h:56