]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PYTHIA6/AliGenPythiaEventHeader.cxx
Macro to calculate the resolution and the efficiency of chamber(s) (Nicolas)
[u/mrichter/AliRoot.git] / PYTHIA6 / AliGenPythiaEventHeader.cxx
index 78ea582940357185617e752cf5e415ca2a3ff415..a203bfbc5cb14e6ea4f347fc968e496d6c044330 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  2002/11/15 00:40:21  morsch
-Information about trigger jets added.
-
-Revision 1.1  2001/07/13 09:34:53  morsch
-Event header class for Pythia added.
-
-*/
+/* $Id$ */
 
 #include "AliGenPythiaEventHeader.h"
 ClassImp(AliGenPythiaEventHeader)
 
 
+AliGenPythiaEventHeader::AliGenPythiaEventHeader():
+    fProcessType(0),
+    fTrials(0),
+    fNJets(0),
+    fNUQJets(0), 
+    fXJet(-1.),
+    fYJet(-1.),
+    fPtHard(0.) 
+{
+// Default Constructor
+    for (Int_t i = 0; i < 4; i++) fZquench[i] = 0.;
+}
+
+AliGenPythiaEventHeader::AliGenPythiaEventHeader(const char* name):
+    AliGenEventHeader(name),
+    fProcessType(0),
+    fTrials(0),
+    fNJets(0),
+    fNUQJets(0), 
+    fXJet(-1.),
+    fYJet(-1.),
+    fPtHard(0.) 
+{
+// Constructor
+    for (Int_t i = 0; i < 4; i++) fZquench[i] = 0.;
+}
+
 void AliGenPythiaEventHeader::AddJet(Float_t px, Float_t py, Float_t pz, Float_t e)
 {
 //
@@ -43,6 +62,38 @@ void AliGenPythiaEventHeader::AddJet(Float_t px, Float_t py, Float_t pz, Float_t
     }
 }
 
+void AliGenPythiaEventHeader::AddUQJet(Float_t px, Float_t py, Float_t pz, Float_t e)
+{
+//
+//  Add a jet 
+//
+    if (fNUQJets < 10) {
+       fUQJets[0][fNUQJets] = px;
+       fUQJets[1][fNUQJets] = py;
+       fUQJets[2][fNUQJets] = pz;
+       fUQJets[3][fNUQJets] = e;
+       fNUQJets++;
+    } else {
+       printf("\nWarning: More than 10 jets triggered !!\n");
+    }
+}
+
+void AliGenPythiaEventHeader::SetZQuench(Double_t z[4])
+{
+    //
+    // Set quenching fraction
+    //
+    for (Int_t i = 0; i < 4; i++) fZquench[i] = z[i];
+}
+
+void AliGenPythiaEventHeader::GetZQuench(Double_t z[4])
+{
+    //
+    // Get quenching fraction
+    //
+    for (Int_t i = 0; i < 4; i++) z[i] = fZquench[i];
+}
+
 void AliGenPythiaEventHeader::TriggerJet(Int_t i, Float_t p[4])
 {
 //
@@ -57,3 +108,28 @@ void AliGenPythiaEventHeader::TriggerJet(Int_t i, Float_t p[4])
        p[3] = fJets[3][i];
     }
 }
+
+void AliGenPythiaEventHeader::UQJet(Int_t i, Float_t p[4])
+{
+//
+// Give back jet #i
+//
+    if (i >= fNUQJets) {
+       printf("\nWarning: Unquenched Jets, index out of Range!!\n");
+    } else {
+       p[0] = fUQJets[0][i];
+       p[1] = fUQJets[1][i];
+       p[2] = fUQJets[2][i];
+       p[3] = fUQJets[3][i];
+    }
+}
+
+void AliGenPythiaEventHeader::SetXYJet(Double_t x, Double_t y)
+{
+
+//
+//  Add jet production point
+//
+    fXJet = x; 
+    fYJet = y; 
+}