Bug correction: uninitialized fPartX
authorskowron <skowron@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 8 Jan 2003 10:04:27 +0000 (10:04 +0000)
committerskowron <skowron@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 8 Jan 2003 10:04:27 +0000 (10:04 +0000)
HBTAN/AliHBTPair.cxx
HBTAN/AliHBTPair.h

index 388246b6c42dcfc23905105a16ccd47236c89c6d..5c4947bec5d9f045a164b7b0b619a66a0520e3a0 100644 (file)
@@ -3,9 +3,10 @@
 
 ClassImp(AliHBTPair)
 
-//value of rev 
 /************************************************************************/
-AliHBTPair::AliHBTPair(Bool_t rev)
+AliHBTPair::AliHBTPair(Bool_t rev):
+ fPart1(0x0),
+ fPart2(0x0)
  {
 //value of rev defines if it is Swaped
 //if you pass kTRUE swpaped pair will NOT be created
@@ -16,6 +17,21 @@ AliHBTPair::AliHBTPair(Bool_t rev)
   
  }
 /************************************************************************/
+
+AliHBTPair::AliHBTPair(AliHBTParticle* part1, AliHBTParticle* part2, Bool_t rev):
+ fPart1(part1),
+ fPart2(part2)
+ {
+//value of rev defines if it is Swaped
+//if you pass kTRUE swpaped pair will NOT be created
+//though you wont be able to get the swaped pair from this pair
+
+  if(!rev) fSwapedPair = new AliHBTPair(part2,part1,kTRUE); //if false create swaped pair
+  else fSwapedPair = 0x0; //if true set the pointer to NULL
+  
+ }
+/************************************************************************/
+
 Double_t AliHBTPair::GetInvMass()
 {
 //Returns qinv value for a pair
index d24e5c906a8930ef2cee68f6c0ad440dc55bf23e..ebd73b1eba3d8b4b6e07514184430fd47426ffe4 100644 (file)
@@ -13,6 +13,7 @@ class AliHBTPair: public TObject
 {
  public:
    AliHBTPair(Bool_t rev = kFALSE); //contructor
+   AliHBTPair(AliHBTParticle* part1, AliHBTParticle* part2, Bool_t rev = kFALSE); //contructor
    virtual ~AliHBTPair(){}
    void SetParticles(AliHBTParticle*,AliHBTParticle*); //sets particles in the pair
    AliHBTPair* GetSwapedPair() {return fSwapedPair;} //returns pair with swapped particles
@@ -20,11 +21,12 @@ class AliHBTPair: public TObject
    AliHBTParticle* Particle1() const {return fPart1;} //returns pointer to first particle
    AliHBTParticle* Particle2() const {return fPart2;} //returns pointer to decond particle
    
+   void Changed();
    //Center Mass System - Longitudinally Comoving
    
    Double_t GetInvMass(); //returns invariant mass of the pair
-   
-
+    
+  
    Double_t GetQInv(); //returns Q invariant
    Double_t GetQSideCMSLC(); //returns Q Side CMS longitudionally co-moving
    Double_t GetQOutCMSLC(); //returns Q out CMS longitudionally co-moving
@@ -120,9 +122,15 @@ void AliHBTPair::SetParticles(AliHBTParticle* p1,AliHBTParticle* p2)
  fPart2 = p2;
  if (fSwapedPair) //if we have Swaped (so we are not)
    fSwapedPair->SetParticles(p2,p1); //set particles for him too
- // Resel all calculations (flags)
+ Changed();
+ //and do nothing until will be asked for
+} 
+/****************************************************************/
 
+inline
+void AliHBTPair::Changed()
+{
+ // Resel all calculations (flags)
  fChanged           = kTRUE;
  fSumsNotCalc       = kTRUE;
  fDiffsNotCalc      = kTRUE;
@@ -135,11 +143,8 @@ void AliHBTPair::SetParticles(AliHBTParticle* p1,AliHBTParticle* p2)
  fKtNotCalc         = kTRUE;
  fKStarNotCalc      = kTRUE;
  fQInvLNotCalc      = kTRUE;
- //and do nothing until will be asked for
 }
 /****************************************************************/
-/****************************************************************/
 inline 
 void AliHBTPair::CalculateInvMassSqr()
  {