1 #ifndef ALIPHOSVIMPACTS_H
2 #define ALIPHOSVIMPACTS_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 /* History of cvs commits:
11 * Revision 1.8 2005/05/28 14:19:05 schutz
12 * Compilation warnings fixed by T.P.
16 //_________________________________________________________________________
17 // Implementation version vImpacts of PHOS Manager class.
18 // This class inherits from v1 and adds impacts storing.
19 // Impacts stands for exact values of track coming to the detectors
21 // Impacts are written to the same tree as hits are
22 // but in separate branches.
24 //*-- Author: Yuri Kharlov (IHEP, Protvino/SUBATECH, Nantes)
26 // --- ROOT system ---
28 class TLorentzVector ;
31 // --- AliRoot header files ---
32 #include "AliPHOSv1.h"
34 class AliPHOSvImpacts : public AliPHOSv1 {
38 AliPHOSvImpacts(void) ;
39 AliPHOSvImpacts(const char *name, const char *title="") ;
40 AliPHOSvImpacts(AliPHOSvImpacts & phos);
41 virtual ~AliPHOSvImpacts(void) ;
43 virtual void Copy(TObject & phos) const;
44 virtual void AddImpact(const char* detector, Int_t shunt, Int_t primary, Int_t track,
45 Int_t module, Int_t pid, TLorentzVector p, Float_t *xyz) ;
46 virtual void MakeBranch(Option_t *opt=" ");
47 virtual void ResetHits();
48 virtual Int_t IsVersion(void) const {
49 // Gives the version number
52 virtual void StepManager(void) ;
53 virtual const TString Version(void)const{
54 // returns the version number
55 return TString("vImpacts") ;
58 AliPHOSvImpacts & operator = (const AliPHOSvImpacts & /*rvalue*/) {
59 // assignement operator requested by coding convention but not needed
60 Fatal("operator =", "not implemented") ;
66 TList * fEMCImpacts; // Array of impacts in EMC modules
67 TList * fCPVImpacts; // Array of impacts in CPV (IHEP) modules
68 TList * fPPSDImpacts; // Array of impacts in PPSD modules
70 Int_t fNEMCImpacts[5]; // Number of EMC impacts per module
71 Int_t fNCPVImpacts[5]; // Number of CPV impacts per module
72 Int_t fNPPSDImpacts[5]; // Number of PPSD impacts per module
75 ClassDef(AliPHOSvImpacts,1) // Implementation of PHOS manager class for layout EMC+PPSD
79 #endif // AliPHOSVIMPACTS_H