]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONEventRecoCombi.h
Bug fix
[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
aa70da7a 10/// \brief Combined cluster / track finder in the MUON arm of ALICE
c4ee792d 11/// \author Alexander Zinchenko, JINR Dubna
cc87ebcd 12
13#include <TObject.h>
14#include <TArrayD.h>
e785d2ac 15#include <TClonesArray.h>
16
cc87ebcd 17class AliMUONData;
18class AliMUONDetElement;
2457f726 19class AliMUONTrackReconstructorK;
cc87ebcd 20class AliMUONClusterFinderAZ;
21class AliMUONHitForRec;
6a518391 22class AliMUONSegmentation;
cc87ebcd 23class AliLoader;
24
25class AliMUONEventRecoCombi : public TObject
26{
27 public:
28 virtual ~AliMUONEventRecoCombi();
6a518391 29 static AliMUONEventRecoCombi* Instance(AliMUONSegmentation* segmentation = 0);
29cac82a 30 void FillEvent(AliMUONData *data, AliMUONClusterFinderAZ *recModel); // fill event info
2457f726 31 void FillRecP(AliMUONData *dataCluster, AliMUONTrackReconstructorK *recoTrack) const; // fill used rec. points from det. elems
cc87ebcd 32
71a2d3aa 33 Int_t Nz() const { return fNZ; } ///< number of DE different Z-positions
34 Double_t Z(Int_t iz) const { return (*fZ)[iz]; } ///< Z of DE
35 Int_t *DEatZ(Int_t iz) const { return fDEvsZ[iz]+1; } ///< list of DE's at Z
36 AliMUONDetElement *DetElem(Int_t iPos) const { return (AliMUONDetElement*) fDetElems->UncheckedAt(iPos); } ///< Det element
cc87ebcd 37 Int_t IZfromHit(AliMUONHitForRec *hit) const; // IZ from Hit
38
39 protected:
6a518391 40 AliMUONEventRecoCombi(AliMUONSegmentation* segmentation = 0);
cc87ebcd 41
42 private:
71a2d3aa 43 /// Not implemented
44 AliMUONEventRecoCombi(const AliMUONEventRecoCombi& rhs);
45 /// Not implemented
46 AliMUONEventRecoCombi & operator = (const AliMUONEventRecoCombi& rhs);
47
aa70da7a 48 static AliMUONEventRecoCombi* fgRecoCombi; //!< singleton instance
6a518391 49 AliMUONSegmentation* fSegmentation; //!< Segmentation
aa70da7a 50 TClonesArray *fDetElems; //!< array of Det. Elem. objects
51 TArrayD *fZ; //!< array of det. elem. Z-coordinates
52 Int_t fNZ; //!< number of different Z's
53 Int_t **fDEvsZ; //!< list of DE's vs Z-coordinates
cc87ebcd 54
55 ClassDef(AliMUONEventRecoCombi, 0) // Combined cluster/track finder steering class
56 };
57#endif