]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVGEN/AliDimuCombinator.h
Typo corrected.
[u/mrichter/AliRoot.git] / EVGEN / AliDimuCombinator.h
index ae6a593d6d41f503629df23d5270f97926b8736b..5eec3444e94f2804288ab851b146e2e5b1e91c74 100644 (file)
@@ -4,7 +4,13 @@
  * See cxx source for full Copyright notice                               */
 
 /* $Id$ */
-#include <TParticle.h>
+
+
+//  Class for dimuon analysis and fast dimuon simulation.
+//  It uses the AliRun particle tree.
+//  Comments and suggestions to andreas.morsch@cern.ch
+
+
 #include <TObject.h>
 
 class TClonesArray;
@@ -15,10 +21,12 @@ class AliDimuCombinator:
     public TObject 
 {
 public:
-    AliDimuCombinator(TClonesArray* Partarray);
-    AliDimuCombinator(const AliDimuCombinator &combinator);
+    AliDimuCombinator();
+    void  Copy(AliDimuCombinator &combi) const;
 //    
 //  Iterators
+//  Access to particle stack
+    TParticle* Particle(Int_t i);
 //  Single muons
     TParticle* FirstMuon();
     TParticle* NextMuon();
@@ -51,12 +59,11 @@ public:
     void SmearGauss(Float_t width, Float_t & value);
 // Weight
     Bool_t  Correlated(TParticle* part1, TParticle* part2);
-    void    SetRate(Float_t rate){fRate1=rate;}
-    void    SetRate(Float_t rate1, Float_t rate2 ){fRate1=rate1; fRate2=rate2;}
+    void    SetRate(Float_t rate) {fRate1=rate;}
+    void    SetRate(Float_t rate1, Float_t rate2 ) {fRate1=rate1; fRate2=rate2;}
     Float_t Weight(TParticle* part);
     Float_t Weight(TParticle* part1, TParticle* part);
     Float_t DecayProbability(TParticle* part);
-    AliDimuCombinator & operator=(const AliDimuCombinator & rhs);
     
  private:
     void FirstPartner();
@@ -66,20 +73,22 @@ public:
     Int_t Origin(TParticle* part);
     TParticle* Parent(TParticle* part);
     TParticle* Partner();
-    Int_t Type(TParticle *part) {return part->GetPdgCode();}
-private:
-    TClonesArray *fPartArray;      // MC Event
+    Int_t Type(TParticle *part);
+    AliDimuCombinator(const AliDimuCombinator &combinator);
+    AliDimuCombinator & operator=(const AliDimuCombinator & rhs);
+
+ private:
     Int_t fNParticle;              // Number of particles
-    Int_t fimuon1;                 // Index of first muon
-    Int_t fimuon2;                 // Index of second muon
-    Int_t fimin1;                  // Lowest index for first   muon  
-    Int_t fimin2;                  // Lowest index for second  muon 
-    Int_t fimax1;                  // Highest index for first  muon  
-    Int_t fimax2;                  // Highest index for second muon 
+    Int_t fImuon1;                 // Index of first muon
+    Int_t fImuon2;                 // Index of second muon
+    Int_t fImin1;                  // Lowest index for first   muon  
+    Int_t fImin2;                  // Lowest index for second  muon 
+    Int_t fImax1;                  // Highest index for first  muon  
+    Int_t fImax2;                  // Highest index for second muon 
     Float_t fRate1;                // weight factor  
     Float_t fRate2;                // weight factor
-    TParticle *fmuon1;             // First muon
-    TParticle *fmuon2;             // Second muon
+    TParticle *fMuon1;             // First muon
+    TParticle *fMuon2;             // Second muon
     Float_t fPtMin;                // pT-cut 
     Float_t fEtaMin;               // Minimum pseudorapidity cut
     Float_t fEtaMax;               // Maximum pseudorapidity cut
@@ -92,3 +101,6 @@ private:
 
 
 
+
+
+