]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliMultiplicity.cxx
Strip units changed from 8x1 to 8x2 (T.Pocheptsov)
[u/mrichter/AliRoot.git] / STEER / AliMultiplicity.cxx
CommitLineData
32e449be 1#include "AliMultiplicity.h"
2
3ClassImp(AliMultiplicity)
4
5//______________________________________________________________________
fe12e09c 6AliMultiplicity::AliMultiplicity():
7 TObject(),
8 fNtracks(0),
9 fTh(0),
10 fPhi(0),
968e8539 11 fDeltPhi(0),
12 fNsingle(0),
13 fThsingle(0),
14 fPhisingle(0)
fe12e09c 15
16{
32e449be 17 // Default Constructor
32e449be 18}
19
20//______________________________________________________________________
968e8539 21AliMultiplicity::AliMultiplicity(Int_t ntr, Float_t *t, Float_t *ph, Float_t *df, Int_t ns, Float_t *ts, Float_t *ps):
fe12e09c 22 TObject(),
23 fNtracks(ntr),
24 fTh(0),
25 fPhi(0),
968e8539 26 fDeltPhi(0),
27 fNsingle(ns),
28 fThsingle(0),
29 fPhisingle(0)
fe12e09c 30{
32e449be 31// Standard constructor
32e449be 32 if(ntr>0){
33 fTh = new Float_t [ntr];
34 fPhi = new Float_t [ntr];
35 fDeltPhi = new Float_t [ntr];
36 for(Int_t i=0;i<fNtracks;i++){
37 fTh[i]=t[i];
38 fPhi[i]=ph[i];
39 fDeltPhi[i]=df[i];
40 }
41 }
968e8539 42 if(ns>0){
43 fThsingle = new Float_t [ns];
44 fPhisingle = new Float_t [ns];
45 for(Int_t i=0;i<fNsingle;i++){
46 fThsingle[i]=ts[i];
47 fPhisingle[i]=ps[i];
48 }
49 }
32e449be 50}
51
52//______________________________________________________________________
fe12e09c 53AliMultiplicity::AliMultiplicity(const AliMultiplicity& m):
54 TObject(m),
55 fNtracks(m.fNtracks),
56 fTh(0),
57 fPhi(0),
968e8539 58 fDeltPhi(0),
59 fNsingle(m.fNsingle),
60 fThsingle(0),
61 fPhisingle(0)
fe12e09c 62{
32e449be 63 // copy constructor
64
65 Duplicate(m);
66
67}
68
69//______________________________________________________________________
70AliMultiplicity &AliMultiplicity::operator=(const AliMultiplicity& m){
71 // assignment operator
72 if(this == &m)return *this;
73 ((TObject *)this)->operator=(m);
74
75 if (fTh)delete [] fTh;
76 if(fPhi)delete [] fPhi;
77 if(fDeltPhi)delete [] fDeltPhi;
968e8539 78 if(fThsingle)delete [] fThsingle;
79 if(fPhisingle)delete [] fPhisingle;
32e449be 80 Duplicate(m);
81
82 return *this;
83}
84
85//______________________________________________________________________
86void AliMultiplicity::Duplicate(const AliMultiplicity& m){
87 // used by copy constructor and assignment operator
88 fNtracks = m.fNtracks;
89 if(fNtracks>0){
90 fTh = new Float_t [fNtracks];
91 fPhi = new Float_t [fNtracks];
92 fDeltPhi = new Float_t [fNtracks];
93 }
94 else {
95 fTh = 0;
96 fPhi = 0;
97 fDeltPhi = 0;
98 }
968e8539 99 fNsingle = m.fNsingle;
100 if(fNsingle>0){
101 fThsingle = new Float_t [fNsingle];
102 fPhisingle = new Float_t [fNsingle];
103 }
104 else {
105 fThsingle = 0;
106 fPhisingle = 0;
107 }
32e449be 108 memcpy(fTh,m.fTh,fNtracks*sizeof(Float_t));
109 memcpy(fPhi,m.fPhi,fNtracks*sizeof(Float_t));
110 memcpy(fDeltPhi,m.fDeltPhi,fNtracks*sizeof(Float_t));
968e8539 111 memcpy(fThsingle,m.fThsingle,fNsingle*sizeof(Float_t));
112 memcpy(fPhisingle,m.fPhisingle,fNsingle*sizeof(Float_t));
32e449be 113}
114
115//______________________________________________________________________
116AliMultiplicity::~AliMultiplicity(){
117 // Destructor
118 if (fTh)delete [] fTh;
119 if(fPhi)delete [] fPhi;
120 if(fDeltPhi)delete [] fDeltPhi;
968e8539 121 if(fThsingle)delete [] fThsingle;
122 if(fPhisingle)delete [] fPhisingle;
32e449be 123}
124
125