Effective C++ corrections (T.Pocheptsov)
[u/mrichter/AliRoot.git] / PHOS / AliPHOSvImpacts.h
CommitLineData
09906775 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 */
5
702ab87e 6/* $Id$ */
7
8/* History of cvs commits:
9 *
10 * $Log$
43fbaae1 11 * Revision 1.8 2005/05/28 14:19:05 schutz
12 * Compilation warnings fixed by T.P.
13 *
702ab87e 14 */
15
09906775 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
20// EMC, CPV or PPSD.
21// Impacts are written to the same tree as hits are
22// but in separate branches.
23//*--
24//*-- Author: Yuri Kharlov (IHEP, Protvino/SUBATECH, Nantes)
25
26// --- ROOT system ---
27class TList ;
28class TLorentzVector ;
29
30
31// --- AliRoot header files ---
32#include "AliPHOSv1.h"
33
34class AliPHOSvImpacts : public AliPHOSv1 {
35
36public:
37
38 AliPHOSvImpacts(void) ;
39 AliPHOSvImpacts(const char *name, const char *title="") ;
43fbaae1 40 AliPHOSvImpacts(AliPHOSvImpacts & phos);
09906775 41 virtual ~AliPHOSvImpacts(void) ;
42
702ab87e 43 virtual void Copy(TObject & phos) const;
8e8eae84 44 virtual void AddImpact(const char* detector, Int_t shunt, Int_t primary, Int_t track,
09906775 45 Int_t module, Int_t pid, TLorentzVector p, Float_t *xyz) ;
88cb7938 46 virtual void MakeBranch(Option_t *opt=" ");
09906775 47 virtual void ResetHits();
48 virtual Int_t IsVersion(void) const {
49 // Gives the version number
50 return 1 ;
51 }
52 virtual void StepManager(void) ;
702ab87e 53 virtual const TString Version(void)const{
09906775 54 // returns the version number
55 return TString("vImpacts") ;
56 }
57
8c140292 58 AliPHOSvImpacts & operator = (const AliPHOSvImpacts & /*rvalue*/) {
09906775 59 // assignement operator requested by coding convention but not needed
f1611b7c 60 Fatal("operator =", "not implemented") ;
09906775 61 return *this ;
62 }
63
64protected:
65
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
69
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
73
74
75 ClassDef(AliPHOSvImpacts,1) // Implementation of PHOS manager class for layout EMC+PPSD
76
77};
78
79#endif // AliPHOSVIMPACTS_H