]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Place holder for QTheta created.
authormarkus <markus@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 16 Oct 2007 09:12:47 +0000 (09:12 +0000)
committermarkus <markus@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 16 Oct 2007 09:12:47 +0000 (09:12 +0000)
STEER/AliAODHeader.cxx
STEER/AliAODHeader.h

index 077d9068a4a77148fb74e6e47091feadcc46b8b2..5057696e96fd892c8e0c47335f8e8ee647927e1b 100644 (file)
@@ -35,6 +35,8 @@ AliAODHeader::AliAODHeader() :
   fZDCN2Energy(-999.),
   fZDCP2Energy(-999.),
   fZDCEMEnergy(-999.),
+  fNQTheta(0),
+  fQTheta(0x0),
   fTriggerMask(0),
   fRunNumber(-999),  
   fRefMult(-999),
@@ -66,8 +68,10 @@ AliAODHeader::AliAODHeader(Int_t nRun,
   fZDCN2Energy(-999.),
   fZDCP2Energy(-999.),
   fZDCEMEnergy(-999.),
+  fNQTheta(0),
+  fQTheta(0x0),
   fTriggerMask(0),
-   fRunNumber(nRun),
+  fRunNumber(nRun),
   fRefMult(-999),
   fRefMultPos(-999),
   fRefMultNeg(-999),
@@ -112,6 +116,8 @@ AliAODHeader::AliAODHeader(Int_t nRun,
   fZDCN2Energy(n2Energy),
   fZDCP2Energy(p2Energy),
   fZDCEMEnergy(emEnergy),
+  fNQTheta(0),
+  fQTheta(0x0),
   fTriggerMask(trigMask),
   fRunNumber(nRun),  
   fRefMult(refMult),
@@ -133,6 +139,8 @@ AliAODHeader::AliAODHeader(Int_t nRun,
 AliAODHeader::~AliAODHeader() 
 {
   // destructor
+  
+  RemoveQTheta();
 }
 
 //______________________________________________________________________________
@@ -146,6 +154,8 @@ AliAODHeader::AliAODHeader(const AliAODHeader& hdr) :
   fZDCN2Energy(hdr.fZDCN2Energy),
   fZDCP2Energy(hdr.fZDCP2Energy),
   fZDCEMEnergy(hdr.fZDCEMEnergy),
+  fNQTheta(0),
+  fQTheta(0x0),
   fTriggerMask(hdr.fTriggerMask),
   fRunNumber(hdr.fRunNumber),  
   fRefMult(hdr.fRefMult), 
@@ -161,6 +171,7 @@ AliAODHeader::AliAODHeader(const AliAODHeader& hdr) :
   
   SetName(hdr.fName);
   SetTitle(hdr.fTitle);
+  SetQTheta(hdr.fQTheta, hdr.fNQTheta);
 }
 
 //______________________________________________________________________________
@@ -189,14 +200,56 @@ AliAODHeader& AliAODHeader::operator=(const AliAODHeader& hdr)
     fPeriodNumber     = hdr.fPeriodNumber;
     fBunchCrossNumber = hdr.fBunchCrossNumber;
     fTriggerCluster   = hdr.fTriggerCluster;
+
+    SetName(hdr.fName);
+    SetTitle(hdr.fTitle);
+    SetQTheta(hdr.fQTheta, hdr.fNQTheta);
   }
 
-  SetName(hdr.fName);
-  SetTitle(hdr.fTitle);
 
   return *this;
 }
 
+//______________________________________________________________________________
+void AliAODHeader::SetQTheta(Double_t *QTheta, UInt_t size) 
+{
+  if (QTheta && size>0) {
+    if (size != (UInt_t)fNQTheta) {
+      RemoveQTheta();
+      fNQTheta = size;
+      fQTheta = new Double_t[fNQTheta];
+    }
+    
+    for (Int_t i = 0; i < fNQTheta; i++) {
+      fQTheta[i] = QTheta[i];
+    }
+  } else {
+    RemoveQTheta();
+  }
+
+  return;
+}
+
+//______________________________________________________________________________
+Double_t AliAODHeader::GetQTheta(UInt_t i) const
+{
+  if (fQTheta && i < (UInt_t)fNQTheta) {
+    return fQTheta[i];
+  } else {
+    return -999.;
+  }
+}
+
+//______________________________________________________________________________
+void AliAODHeader::RemoveQTheta()
+{
+  delete[] fQTheta;
+  fQTheta = 0x0;
+  fNQTheta = 0;
+
+  return;
+}
+
 //______________________________________________________________________________
 void AliAODHeader::Print(Option_t* /*option*/) const 
 {
@@ -222,4 +275,11 @@ void AliAODHeader::Print(Option_t* /*option*/) const
   printf("ref. Multiplicity (pos) : %d\n", fRefMultPos);
   printf("ref. Multiplicity (neg) : %d\n", fRefMultNeg);
 
+  if (fQTheta) {
+    for (UInt_t i = 0; i<(UInt_t)fNQTheta; i++) {
+      printf("QTheta[%d]              : %d\n", i, GetQTheta(i));
+    }
+  }
+
+  return;
 }
index 7a0da9a1ce3aa2904c9e1d9ad66acfceee2bffc9..a06bd7c0fd456a099a408823e6cbf369cd928f6b 100644 (file)
@@ -62,6 +62,9 @@ class AliAODHeader : public AliVHeader {
   Int_t     GetRefMultiplicity()    const { return fRefMult; }
   Int_t     GetRefMultiplicityPos() const { return fRefMultPos; }
   Int_t     GetRefMultiplicityNeg() const { return fRefMultNeg; }
+
+  Double_t  GetQTheta(UInt_t i) const;
+  UInt_t    GetNQTheta() const { return (UInt_t)fNQTheta; }
   
   void SetRunNumber(Int_t nRun)                { fRunNumber = nRun; }
   void SetBunchCrossNumber(UShort_t nBx)       { fBunchCrossNumber = nBx; }
@@ -83,6 +86,9 @@ class AliAODHeader : public AliVHeader {
   void SetRefMultiplicityPos(Int_t refMultPos) { fRefMultPos = refMultPos; }
   void SetRefMultiplicityNeg(Int_t refMultNeg) { fRefMultNeg = refMultNeg; }
   
+  void SetQTheta(Double_t *QTheta, UInt_t size = 5);  
+  void RemoveQTheta();
+
   void Print(Option_t* option = "") const;
   
   
@@ -96,6 +102,8 @@ class AliAODHeader : public AliVHeader {
   Double32_t  fZDCN2Energy;         // reconstructed energy in the neutron2 ZDC
   Double32_t  fZDCP2Energy;         // reconstructed energy in the proton2 ZDC
   Double32_t  fZDCEMEnergy;         // reconstructed energy in the electromagnetic ZDC
+  Int_t       fNQTheta;             // number of QTheta elements
+  Double32_t *fQTheta;              // [fNQTheta] values to store Lee-Yang-Zeros
   ULong64_t   fTriggerMask;         // Trigger Type (mask)
   Int_t       fRunNumber;           // Run Number
   Int_t       fRefMult;             // reference multiplicity