]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/UPGRADE/AliITSUModule.h
to suppress compilation warnings
[u/mrichter/AliRoot.git] / ITS / UPGRADE / AliITSUModule.h
CommitLineData
451f5018 1#ifndef ALIITSUMODULE_H
2#define ALIITSUMODULE_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id: AliITSUModule.h 53509 2011-12-10 18:55:52Z masera $ */
7///////////////////////////////////////////////////////////////////////
8// //
9// Class AliITSUModule //
10// is a superclass for AliITSUModuleSSD, SPD and SDD. //
11// The main function of modules is to simulate DIGITS from //
12// GEANT HITS and produce POINTS from DIGITS //
13// It also make fast simulation without use of DIGITS //
14// //
15// created by: A.Boucham, W.Peryt, S.Radomski, P.Skowronski //
16// R.Barbera, B. Batynia, B. Nilsen //
17// ver. 1.0 CERN, 16.09.1999 //
18// modified for upgrade: ruben.shahoyan@cern.ch //
19// //
20///////////////////////////////////////////////////////////////////////
21
22#include <TObject.h>
23#include <TObjArray.h>
24#include "AliITSUHit.h"
25class AliITSUGeomTGeo;
26
27class AliITSUModule: public TObject {
28
29 public:
30 AliITSUModule(); // default constructor
31 AliITSUModule(Int_t index, AliITSUGeomTGeo* tg);
32 virtual ~AliITSUModule();
33 UInt_t GetIndex() const {return GetUniqueID();}
34 void SetIndex(UInt_t ind) {return SetUniqueID(ind);}
35 Int_t GetNHits() const {return fHitsM->GetEntriesFast();}
36 TObjArray *GetHits() const {return fHitsM;}
37 AliITSUHit *GetHit(Int_t i) const {return (AliITSUHit*)fHitsM->UncheckedAt(i);}
38 void AddHit(AliITSUHit *hit) {fHitsM->AddLast(hit);}
39 void Clear(Option_t* opt=0);
40 //
41 Bool_t MedianHitG(AliITSUHit *h1,AliITSUHit *h2,Float_t &x,Float_t &y,Float_t &z);
42 void MedianHitG(Int_t index, Float_t hitx1,Float_t hity1,Float_t hitz1,Float_t hitx2,Float_t hity2,Float_t hitz2, Float_t &xMg,Float_t &yMg, Float_t &zMg);
43 Bool_t MedianHitL(AliITSUHit *h1,AliITSUHit *h2,Float_t &x,Float_t &y,Float_t &z) const;
44 void MedianHitL(Int_t,AliITSUHit *,AliITSUHit *,Float_t &,Float_t &, Float_t &){};
45 Double_t PathLength(const AliITSUHit *itsHit1,const AliITSUHit *itsHit2);
46 void MedianHit(Int_t index, Float_t xg,Float_t yg,Float_t zg,Int_t status,Float_t &xMg, Float_t &yMg, Float_t &zMg,Int_t &flag);
47 void PathLength(Float_t x,Float_t y,Float_t z,Int_t status,Int_t &nseg,Float_t &x1,Float_t &y1,Float_t &z1,Float_t &dx1,Float_t &dy1, Float_t &dz1,Int_t &flag) const;
48 Bool_t LineSegmentL(Int_t hindex,Double_t &a,Double_t &b,Double_t &c,Double_t &d,Double_t &e,Double_t &f,Double_t &de);
0ebc85cf 49 Bool_t LineSegmentL(Int_t hindex,Double_t &a,Double_t &b,Double_t &c,Double_t &d,Double_t &e,Double_t &f,Double_t &de, Double_t &tof, Int_t &track);
451f5018 50 //
51 Bool_t LineSegmentG(Int_t hindex,Double_t &a,Double_t &b,Double_t &c,Double_t &d,Double_t &e,Double_t &f,Double_t &de);
0ebc85cf 52 Bool_t LineSegmentG(Int_t hindex,Double_t &a,Double_t &b,Double_t &c,Double_t &d,Double_t &e,Double_t &f,Double_t &de, Double_t &tof, Int_t &track);
451f5018 53 //
54 protected:
55 AliITSUModule(const AliITSUModule &source);
56 AliITSUModule& operator=(const AliITSUModule &source);
57 TObjArray *fHitsM; // Pointer to list of hits on this module
58 AliITSUGeomTGeo *fGeomTG; // pointed to geometry
59 //
60 ClassDef(AliITSUModule,1) // Copy the hits into a more useful order
61};
62
63inline void AliITSUModule::Clear(Option_t *) {fHitsM->Clear();}
64
65#endif
66
67
68