Line data Source code
1 : /**************************************************************************
2 : * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 : * *
4 : * Author: The ALICE Off-line Project. *
5 : * Contributors are mentioned in the code where appropriate. *
6 : * *
7 : * Permission to use, copy, modify and distribute this software and its *
8 : * documentation strictly for non-commercial purposes is hereby granted *
9 : * without fee, provided that the above copyright notice appears in all *
10 : * copies and that both the copyright notice and this permission notice *
11 : * appear in the supporting documentation. The authors make no claims *
12 : * about the suitability of this software for any purpose. It is *
13 : * provided "as is" without express or implied warranty. *
14 : **************************************************************************/
15 :
16 : /* $Id$ */
17 :
18 : /* History of cvs commits:
19 : *
20 : * $Log$
21 : * Revision 1.6 2005/05/28 14:19:04 schutz
22 : * Compilation warnings fixed by T.P.
23 : *
24 : */
25 :
26 : //_________________________________________________________________________
27 : // Hit impact class for PHOS
28 : // A hit impact in PHOS is a set of parameters of a track which
29 : // enters the detector for the first time.
30 : // Track parameters are:
31 : // - track number
32 : // - primary particle number
33 : // - type of a particle
34 : // - impact coordinate
35 : // - impact 4-momentum
36 : //
37 : //*-- Author: Yuri Kharlov (IHEP, Protvino/SUBATECH, Nantes)
38 :
39 : // --- ROOT system ---
40 :
41 : // --- Standard library ---
42 :
43 : // --- AliRoot header files ---
44 : #include "AliPHOSImpact.h"
45 :
46 22 : ClassImp(AliPHOSImpact)
47 :
48 : //____________________________________________________________________________
49 0 : AliPHOSImpact::AliPHOSImpact() :
50 0 : fPid(0),
51 0 : fPrimary(0),
52 0 : fMomentum()
53 0 : {
54 : //Def ctor.
55 0 : }
56 :
57 : //____________________________________________________________________________
58 : AliPHOSImpact::AliPHOSImpact(const AliPHOSImpact & hit) :
59 0 : AliHit(hit),
60 0 : fPid(hit.fPid),
61 0 : fPrimary(hit.fPrimary),
62 0 : fMomentum(hit.fMomentum)
63 0 : {
64 : // copy ctor
65 0 : fTrack = hit.fTrack ;
66 0 : fX = hit.fX ;
67 0 : fY = hit.fY ;
68 0 : fZ = hit.fZ ;
69 0 : }
70 :
71 : //____________________________________________________________________________
72 : AliPHOSImpact::AliPHOSImpact(Int_t shunt, Int_t primary, Int_t track, Int_t pid, TLorentzVector p, Float_t *xyz):
73 0 : AliHit(shunt, track),
74 0 : fPid(pid),
75 0 : fPrimary(primary),
76 0 : fMomentum(p)
77 0 : {
78 : //
79 : // Create a PHOS hit impact object
80 : //
81 0 : fX = xyz[0]; //position of particle first entering cristall/pad
82 0 : fY = xyz[1];
83 0 : fZ = xyz[2];
84 0 : }
85 :
86 : //____________________________________________________________________________
87 : AliPHOSImpact & AliPHOSImpact::operator = (const AliPHOSImpact &)
88 : {
89 0 : Fatal("operator =", "not implemented");
90 0 : return *this;
91 : }
92 :
93 : //____________________________________________________________________________
94 : void AliPHOSImpact::Print(const Option_t *)const
95 : {
96 : // Prints particle info
97 0 : printf("Impact Pid=%4d, p=(%6.2f,%6.2f,%6.2f,%6.2f) GeV, x=(%6.1f,%6.1f,%6.1f) cm\n",
98 0 : fPid,fMomentum.Px(),fMomentum.Py(),fMomentum.Pz(),fMomentum.E(),
99 0 : fX,fY,fZ);
100 0 : }
|