]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONEventRecoCombi.h
Introduced new DE names unique to each det element;
[u/mrichter/AliRoot.git] / MUON / AliMUONEventRecoCombi.h
CommitLineData
cc87ebcd 1#ifndef ALIMUONEVENTRECOCOMBI_H
2#define ALIMUONEVENTRECOCOMBI_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8/// \ingroup rec
9/// \class AliMUONEventRecoCombi
10/// \brief Combined cluster / track finder in MUON arm of ALICE
11
12#include <TObject.h>
13#include <TArrayD.h>
e785d2ac 14#include <TClonesArray.h>
15
cc87ebcd 16class AliMUONData;
17class AliMUONDetElement;
2457f726 18class AliMUONTrackReconstructorK;
cc87ebcd 19class AliMUONClusterFinderAZ;
20class AliMUONHitForRec;
21class AliLoader;
22
23class AliMUONEventRecoCombi : public TObject
24{
25 public:
26 virtual ~AliMUONEventRecoCombi();
27 static AliMUONEventRecoCombi* Instance();
29cac82a 28 void FillEvent(AliMUONData *data, AliMUONClusterFinderAZ *recModel); // fill event info
2457f726 29 void FillRecP(AliMUONData *dataCluster, AliMUONTrackReconstructorK *recoTrack) const; // fill used rec. points from det. elems
cc87ebcd 30
31 Int_t Nz() const { return fNZ; } // number of DE different Z-positions
32 Double_t Z(Int_t iz) const { return (*fZ)[iz]; } // Z of DE
33 Int_t *DEatZ(Int_t iz) const { return fDEvsZ[iz]+1; } // list of DE's at Z
34 AliMUONDetElement *DetElem(Int_t iPos) const { return (AliMUONDetElement*) fDetElems->UncheckedAt(iPos); }
35 Int_t IZfromHit(AliMUONHitForRec *hit) const; // IZ from Hit
36
37 protected:
38 AliMUONEventRecoCombi();
cc87ebcd 39
40 private:
829425a5 41 static AliMUONEventRecoCombi* fgRecoCombi; //!< singleton instance
42 TClonesArray *fDetElems; //!< array of Det. Elem. objects
43 TArrayD *fZ; //!< array of det. elem. Z-coordinates
44 Int_t fNZ; //!< number of different Z's
45 Int_t **fDEvsZ; //!< list of DE's vs Z-coordinates
cc87ebcd 46
54d7ba50 47 AliMUONEventRecoCombi(const AliMUONEventRecoCombi& rhs);
48 AliMUONEventRecoCombi & operator = (const AliMUONEventRecoCombi& rhs);
49
cc87ebcd 50 ClassDef(AliMUONEventRecoCombi, 0) // Combined cluster/track finder steering class
51 };
52#endif