]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PMD/AliPMD.h
merging and digitization added
[u/mrichter/AliRoot.git] / PMD / AliPMD.h
CommitLineData
895a906e 1#ifndef ALIPMD_H
2#define ALIPMD_H
3da30618 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
fe4da5cc 8////////////////////////////////////////////////
9// Manager and hits classes for set:PMD //
10////////////////////////////////////////////////
11
12#include "AliDetector.h"
895a906e 13#include "AliLoader.h"
fe4da5cc 14
4fa198c6 15class TClonesArray;
2ab0c725 16class TFile;
4fa198c6 17class AliPMDRecPoint;
895a906e 18class AliPMDLoader;
19class AliPMDhit;
fe4da5cc 20
21class AliPMD : public AliDetector {
895a906e 22
fe4da5cc 23public:
24 AliPMD();
25 AliPMD(const char *name, const char *title);
1661e612 26
27 virtual AliLoader* MakeLoader(const char* topfoldername);
28
4fa198c6 29 virtual ~AliPMD();
895a906e 30 virtual void AddHit(Int_t track, Int_t* vol, Float_t* hits);
1661e612 31 virtual void BuildGeometry();
fe4da5cc 32 virtual void CreateGeometry() {}
33 virtual void CreateMaterials() {}
895a906e 34 Int_t DistancetoPrimitive(Int_t, Int_t) const;
fe4da5cc 35 virtual Int_t IsVersion() const =0;
895a906e 36 virtual void SetPAR(Float_t p1, Float_t p2, Float_t p3, Float_t p4);
37 virtual void SetIN(Float_t p1, Float_t p2, Float_t p3, Float_t p4, Float_t p5);
38 virtual void SetGEO(Float_t p1, Float_t p2, Float_t p3);
39 virtual void SetPadSize(Float_t p1, Float_t p2, Float_t p3, Float_t p4);
fe4da5cc 40 virtual void StepManager();
4fa198c6 41 virtual void AddRecPoint(const AliPMDRecPoint &p);
88cb7938 42 virtual void MakeBranch(Option_t* option);
4fa198c6 43 virtual void SetTreeAddress();
44 virtual void ResetHits();
45
85a5290f 46 virtual void Hits2SDigits();
53043784 47 virtual void SDigits2Digits();
48 virtual void Hits2Digits();
85a5290f 49
53043784 50 virtual AliDigitizer* CreateDigitizer(AliRunDigitizer* manager);
fe4da5cc 51
895a906e 52 protected:
53 Float_t fPar[4]; // pmdin, pmdout, thgas, thcell
54 Float_t fIn[5]; // thmin, thmax, zdist, thlow, thhigh
55 Float_t fGeo[3]; // wafer, edge, numqu
56 Float_t fPadSize[4]; // size of the pads
57 Int_t fNumPads[4]; // number of the pads
fe4da5cc 58
fe4da5cc 59
895a906e 60 private:
61 TClonesArray* fRecPoints; //! List of reconstructed hits
62 Int_t fNRecPoints; // Number of reconstructed hits
4fa198c6 63
53043784 64 ClassDef(AliPMD,4) // Base Class for Photon Multiplicity Detector
fe4da5cc 65};
fe4da5cc 66#endif