In AliMUONPairLight, AliMUONTrackLight:
authorivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 24 Nov 2011 15:50:24 +0000 (15:50 +0000)
committerivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 24 Nov 2011 15:50:24 +0000 (15:50 +0000)
Adding missing assignment operators
(fixing Coverity defect COPY_WITHOUT_ASSIGN)

MUON/AliMUONPairLight.cxx
MUON/AliMUONPairLight.h
MUON/AliMUONTrackLight.cxx
MUON/AliMUONTrackLight.h

index b1ab53b..eb4c6d6 100644 (file)
@@ -82,6 +82,25 @@ AliMUONPairLight::~AliMUONPairLight(){
 
 //====================================
 
+AliMUONPairLight& AliMUONPairLight::operator=(const AliMUONPairLight& dimuCopy)
+{
+  // check assignment to self
+  if (this == &dimuCopy) return *this;
+
+  // base class assignment
+  TObject::operator=(dimuCopy);
+
+  // assignment operator
+  fMu0 = dimuCopy.fMu0;
+  fMu1 = dimuCopy.fMu1; 
+  fCreationProcess = dimuCopy.fCreationProcess;
+  fIsCorrelated = dimuCopy.fIsCorrelated; 
+  fCauseOfCorrelation  = dimuCopy.fCauseOfCorrelation;
+  fIsFeedDown = dimuCopy.fIsFeedDown;
+}
+
+//====================================
+
 Bool_t AliMUONPairLight::IsAResonance(){
   /// checks if muon pair comes from a resonance decay  
   if (!fIsCorrelated) return kFALSE;   //if muons not correlated, cannot be a resonance
index 7482554..9456940 100644 (file)
@@ -36,6 +36,7 @@ public:
   AliMUONPairLight();
   AliMUONPairLight(AliMUONPairLight &dimuCopy);
   virtual ~AliMUONPairLight();
+  AliMUONPairLight& operator=(const AliMUONPairLight&);
   virtual void SetMuons(const AliMUONTrackLight& mu0, const AliMUONTrackLight& mu1);
   AliMUONTrackLight* GetMuon(Int_t index) ;   
   Int_t GetMuonMotherPDG(Int_t imuon, Int_t mother=0) ; 
index 805ae82..a452537 100644 (file)
@@ -146,6 +146,39 @@ AliMUONTrackLight::~AliMUONTrackLight()
 } 
 
 //============================================
+AliMUONTrackLight& AliMUONTrackLight::operator=(const AliMUONTrackLight& muonCopy)
+{
+  // check assignment to self
+  if (this == &muonCopy) return *this;
+
+  // base class assignment
+  TObject::operator=(muonCopy);
+
+  // assignment operator
+  fPrec = muonCopy.fPrec; 
+  fIsTriggered = muonCopy.fIsTriggered;
+  fCharge = muonCopy.fCharge; 
+  fChi2 = muonCopy.fChi2; 
+  fCentr = muonCopy.fCentr;
+  fPgen = muonCopy.fPgen; 
+  fTrackPythiaLine = muonCopy.fTrackPythiaLine;
+  fTrackPDGCode = muonCopy.fTrackPDGCode;
+  fOscillation = muonCopy.fOscillation; 
+  fNParents = muonCopy.fNParents;
+  fWeight = muonCopy.fWeight;
+  
+  for (Int_t i=0; i<3; i++) fXYZ[i]=muonCopy.fXYZ[i]; 
+  for (Int_t npar = 0; npar < fgkNParentsMax; npar++){
+    fParentPDGCode[npar] = muonCopy.fParentPDGCode[npar]; 
+    fParentPythiaLine[npar] = muonCopy.fParentPythiaLine[npar];
+  }
+  for (Int_t i = 0; i < 4; i++){
+    fQuarkPDGCode[i] = muonCopy.fQuarkPDGCode[i]; 
+    fQuarkPythiaLine[i] = muonCopy.fQuarkPythiaLine[i]; 
+  }
+}    
+
+//============================================
 
 void AliMUONTrackLight::FillFromAliMUONTrack(AliMUONTrack *trackReco,Double_t zvert){
   /// this method sets the muon reconstructed momentum according to the value given by AliMUONTrack
index b51b127..dc976ca 100644 (file)
@@ -36,6 +36,7 @@ class AliMUONTrackLight : public TObject {
   AliMUONTrackLight(); 
   AliMUONTrackLight(AliESDMuonTrack* muonTrack); 
   AliMUONTrackLight(const AliMUONTrackLight &muonCopy);
+  AliMUONTrackLight& operator=(const AliMUONTrackLight&);
   virtual ~AliMUONTrackLight(); 
   
   /// Set 4-momentum of the generated particle