]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVGEN/AliDecayerPolarized.cxx
Fix for bug #56473: Segmentation fault in AliESDRun::Print (Matthias)
[u/mrichter/AliRoot.git] / EVGEN / AliDecayerPolarized.cxx
index 99506174d93d0fd2da4f64d2ab175d97c2ea5d0b..a99811661e365462a59c7b9757586a01ad51692b 100644 (file)
 
 ClassImp(AliDecayerPolarized)
 
+
+
 //____________________________________________________________
-AliDecayerPolarized::AliDecayerPolarized()
+AliDecayerPolarized::AliDecayerPolarized():
+    fAlpha(0),
+    fSystRef(kHelicity),
+    fDecProd(kMuon),
+    fPol(new TF1("dsigdcostheta","1.+[0]*x*x",-1.,1.)),
+    fMother(0),
+    fDaughter1(0),
+    fDaughter2(0)
 {
 // Default constructor
-    fAlpha=0;
-    fSystRef=kHelicity;
-    fDecProd=kMuon;
-    fMother=0;
-    fDaughter1=0;
-    fDaughter2=0;
-    fPol = new TF1("dsigdcostheta","1.+[0]*x*x",-1.,1.);
     fPol->SetParameter(0,fAlpha);
 }
 
 //____________________________________________________________
-AliDecayerPolarized::AliDecayerPolarized(Double_t alpha, Polar_t systref, FinState_t decprod)
+AliDecayerPolarized::AliDecayerPolarized(Double_t alpha, Polar_t systref, FinState_t decprod):
+    fAlpha(alpha),
+    fSystRef(systref),
+    fDecProd(decprod),
+    fPol(new TF1("dsigdcostheta","1.+[0]*x*x",-1.,1.)),
+    fMother(0),
+    fDaughter1(0),
+    fDaughter2(0)
 {
 // Another constructor
-    fAlpha=alpha;
-    fSystRef=systref;
-    fDecProd=decprod;
-    fMother=0;
-    fDaughter1=0;
-    fDaughter2=0;
-    fPol = new TF1("dsigdcostheta","1.+[0]*x*x",-1.,1.);
     fPol->SetParameter(0,fAlpha);
     if(fDecProd!=kMuon && fDecProd!=kElectron)
-    AliFatal("Only polarized decay into muons or electrons is implemented!");
+       AliFatal("Only polarized decay into muons or electrons is implemented!");
+}
+
+AliDecayerPolarized::AliDecayerPolarized(const AliDecayerPolarized &decayer):
+    AliDecayer(decayer),
+    fAlpha(0),
+    fSystRef(kHelicity),
+    fDecProd(kMuon),
+    fPol(new TF1("dsigdcostheta","1.+[0]*x*x",-1.,1.)),
+    fMother(0),
+    fDaughter1(0),
+    fDaughter2(0)   
+{
+    // Copy Constructor
+    decayer.Copy(*this);
 }
 
 //____________________________________________________________
@@ -171,7 +187,6 @@ void  AliDecayerPolarized::Copy(TObject &) const
 void AliDecayerPolarized::SetForceDecay(Int_t)
 {
     // This method is dummy
-    AliWarning("Method not implemented for this class !\n");
 }
 
 void AliDecayerPolarized::ForceDecay()
@@ -183,8 +198,7 @@ void AliDecayerPolarized::ForceDecay()
 Float_t AliDecayerPolarized::GetPartialBranchingRatio(Int_t)
 {
     // This method is dummy
-    AliWarning("Method not implemented for this class !\n");
-    return -1.;
+    return  1.;
 }
 
 Float_t AliDecayerPolarized::GetLifetime(Int_t)