1963b290 |
1 | #ifndef ALIEMCALV2_H |
2 | #define ALIEMCALV2_H |
3 | /* Copyright(c) 1998-2004, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice |
5 | */ |
6 | /* $Id$ */ |
7 | |
8 | //_________________________________________________________________________ |
9 | // Implementation version v2 of EMCAL Manager class for Shish-Kebab case |
10 | //*-- |
11 | //*-- Author: Aleksei Pavlinov |
12 | |
13 | // --- ROOT system --- |
14 | class TClonesArray; |
15 | class TLorentzVector; |
16 | class TFile; |
17 | class TH1F; |
18 | |
19 | class TBrowser; |
20 | class AliEMCALGeometry; |
21 | |
22 | // --- AliRoot header files --- |
23 | #include "AliEMCALv1.h" |
24 | |
25 | // for TRD2 case |
26 | //#include "TGeant3.h" |
27 | |
28 | class AliEMCALv2 : public AliEMCALv1 { |
29 | |
30 | public: |
31 | |
32 | AliEMCALv2(void) ; |
33 | AliEMCALv2(const char *name, const char *title="") ; |
34 | // cpy ctor: no implementation yet |
35 | // requested by the Coding Convention |
36 | AliEMCALv2(const AliEMCALv1 & emcal):AliEMCALv1(emcal) { |
37 | Fatal("cpy ctor", "not implemented") ; } |
38 | virtual ~AliEMCALv2(void) ; |
39 | virtual void AddHit( Int_t shunt, Int_t primary, Int_t track, Int_t iparent, Float_t ienergy, |
40 | Int_t id, Float_t *hits, Float_t *p); |
41 | |
42 | virtual void StepManager(void) ; |
43 | virtual void FinishEvent(); |
44 | |
45 | // Gives the version number |
46 | virtual Int_t IsVersion(void) const {return 2;} |
47 | virtual const TString Version(void)const {return TString("v2");} |
48 | // virtual void RemapTrackHitIDs(Int_t *map); |
49 | //virtual void FinishPrimary(); |
50 | // virtual void SetTimeCut(Float_t tc){ fTimeCut = tc;} |
51 | // virtual Float_t GetTimeCut(){return fTimeCut;} |
52 | // assignement operator requested by coding convention but not needed |
53 | AliEMCALv2 & operator = (const AliEMCALv1 & /*rvalue*/){ |
54 | Fatal("operator =", "not implemented") ; |
55 | return *this;} |
56 | // 23-mar-05 |
57 | Double_t GetDepositEnergy(int print=1); // *MENU* |
58 | // 30-aug-04 |
59 | virtual void Browse(TBrowser* b); |
60 | // drawing |
61 | void DrawCalorimeterCut(const char *name="SMOD", int axis=3, double dcut=1.); // *MENU* |
62 | void DrawSuperModuleCut(const char *name="EMOD", int axis=2, double dcut=0.03, int fill = 6);// *MENU* |
63 | void DrawTowerCut(const char *name="SCMY", int axis=2, double dcut=0., int fill=1, char *optShad="on"); // *MENU* |
64 | void DrawAlicWithHits(int mode=1); // *MENU* |
65 | void SetVolumeAttributes(const char *name="SCM0",const int seen=1, const int color=1, const int fill=1); // *MENU* |
66 | void TestIndexTransition(int pri=0, int idmax=0); // *MENU* |
67 | |
68 | AliEMCALGeometry* fGeometry; //! |
69 | TH1F* fHDe; //! |
70 | |
71 | ClassDef(AliEMCALv2,1) //Implementation of EMCAL manager class to produce hits in a Shish-Kebab |
72 | |
73 | }; |
74 | |
75 | #endif // AliEMCALV2_H |