Coding rules (Markus)
authordainese <dainese@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 23 Oct 2009 16:13:43 +0000 (16:13 +0000)
committerdainese <dainese@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 23 Oct 2009 16:13:43 +0000 (16:13 +0000)
28 files changed:
PWG3/hfe/AliAnalysisTaskHFE.cxx
PWG3/hfe/AliAnalysisTaskHFE.h
PWG3/hfe/AliHFEcollection.cxx
PWG3/hfe/AliHFEcollection.h
PWG3/hfe/AliHFEcuts.cxx
PWG3/hfe/AliHFEcuts.h
PWG3/hfe/AliHFEextraCuts.cxx
PWG3/hfe/AliHFEextraCuts.h
PWG3/hfe/AliHFEmcQA.cxx
PWG3/hfe/AliHFEmcQA.h
PWG3/hfe/AliHFEpid.cxx
PWG3/hfe/AliHFEpid.h
PWG3/hfe/AliHFEpidBase.cxx
PWG3/hfe/AliHFEpidBase.h
PWG3/hfe/AliHFEpidITS.cxx
PWG3/hfe/AliHFEpidITS.h
PWG3/hfe/AliHFEpidMC.cxx
PWG3/hfe/AliHFEpidMC.h
PWG3/hfe/AliHFEpidTOF.cxx
PWG3/hfe/AliHFEpidTOF.h
PWG3/hfe/AliHFEpidTPC.cxx
PWG3/hfe/AliHFEpidTPC.h
PWG3/hfe/AliHFEpidTRD.cxx
PWG3/hfe/AliHFEpidTRD.h
PWG3/hfe/AliHFEpriVtx.cxx
PWG3/hfe/AliHFEpriVtx.h
PWG3/hfe/AliHFEsecVtx.cxx
PWG3/hfe/AliHFEsecVtx.h

index ce07754..02064b1 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-/*
- * The analysis task:
- * Filling an AliCFContainer with the quantities pt, eta and phi
- * for tracks which survivied the particle cuts (MC resp. ESD tracks)
- * Track selection is done using the AliHFE package
- * 
- * Author:
- *  Raphaelle Bailhache <R.Bailhache@gsi.de>
- *  Markus Fasel <M.Fasel@gsi.de>
- *  Matus Kalisky <matus.kalisky@cern.ch>
- *  MinJung Kweon <minjung@physi.uni-heidelberg.de>
- */
+//
+// The analysis task:
+// Filling an AliCFContainer with the quantities pt, eta and phi
+// for tracks which survivied the particle cuts (MC resp. ESD tracks)
+// Track selection is done using the AliHFE package
+// 
+// Author:
+//  Raphaelle Bailhache <R.Bailhache@gsi.de>
+//  Markus Fasel <M.Fasel@gsi.de>
+//  Matus Kalisky <matus.kalisky@cern.ch>
+//  MinJung Kweon <minjung@physi.uni-heidelberg.de>
+//
 #include <TAxis.h>
 #include <TCanvas.h>
 #include <TChain.h>
@@ -87,7 +87,7 @@ AliAnalysisTaskHFE::AliAnalysisTaskHFE():
   , fHistSECVTX(0x0)
 {
   //
-  // Default constructor
+  // Dummy constructor
   //
   DefineInput(0, TChain::Class());
   DefineOutput(0, TH1I::Class());
@@ -227,6 +227,10 @@ AliAnalysisTaskHFE::~AliAnalysisTaskHFE(){
 
 //____________________________________________________________
 void AliAnalysisTaskHFE::ConnectInputData(Option_t *){
+  //
+  // Connecting the input
+  // Called once per worker
+  //
 /*  TTree *esdchain = dynamic_cast<TChain *>(GetInputData(0));
   if(!esdchain){
     AliError("ESD chain empty");
@@ -253,6 +257,16 @@ void AliAnalysisTaskHFE::ConnectInputData(Option_t *){
 
 //____________________________________________________________
 void AliAnalysisTaskHFE::CreateOutputObjects(){
+  //
+  // Creating output container and output objects
+  // Here we also Initialize the correction framework container and 
+  // the objects for
+  // - PID
+  // - MC QA
+  // - SecVtx
+  // QA histograms are created if requested
+  // Called once per worker
+  //
   fNEvents = new TH1I("nEvents", "Number of Events in the Analysis", 2, 0, 2); // Number of Events neccessary for the analysis and not a QA histogram
   fNElectronTracksEvent = new TH1I("nElectronTracksEvent", "Number of Electron Candidates", 100, 0, 100);
   // First Step: TRD alone
@@ -944,7 +958,11 @@ void AliAnalysisTaskHFE::MakeParticleContainer(){
     fPIDperformance->SetBinEdges(idim, binEdges2[idim]);
 }
 
+//____________________________________________________________
 void AliAnalysisTaskHFE::AddPIDdetector(Char_t *detector){
+  //
+  // Adding PID detector to the task
+  //
   if(!fPIDdetectors.Length()) 
     fPIDdetectors = detector;
   else
@@ -952,7 +970,7 @@ void AliAnalysisTaskHFE::AddPIDdetector(Char_t *detector){
 }
 
 //____________________________________________________________
-void AliAnalysisTaskHFE::PrintStatus(){
+void AliAnalysisTaskHFE::PrintStatus() const {
   //
   // Print Analysis status
   //
@@ -1000,7 +1018,7 @@ Bool_t AliAnalysisTaskHFE::LabelContainer::Append(Int_t label){
 }
 
 //____________________________________________________________
-Bool_t AliAnalysisTaskHFE::LabelContainer::Find(Int_t label){
+Bool_t AliAnalysisTaskHFE::LabelContainer::Find(Int_t label) const {
   //
   // Find track in the list of labels
   //
@@ -1069,13 +1087,14 @@ Int_t AliAnalysisTaskHFE::IsSignalElectron(AliVParticle *fTrack) const{
 }
 
 //__________________________________________
-Float_t AliAnalysisTaskHFE::GetRapidity(TParticle *part)
+Float_t AliAnalysisTaskHFE::GetRapidity(TParticle *part) const
 {
-      // return rapidity
-
-       Float_t rapidity;
-       if(!((part->Energy() - part->Pz())*(part->Energy() + part->Pz())>0)) rapidity=-999;
-       else rapidity = 0.5*(TMath::Log((part->Energy()+part->Pz()) / (part->Energy()-part->Pz())));
-       return rapidity;
+  //
+  // return rapidity
+  //
+  Float_t rapidity;
+  if(!((part->Energy() - part->Pz())*(part->Energy() + part->Pz())>0)) rapidity=-999;
+  else rapidity = 0.5*(TMath::Log((part->Energy()+part->Pz()) / (part->Energy()-part->Pz())));
+  return rapidity;
 }
 
index f6d8c72..af5fe54 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
+//
+// Task for Heavy Flavour Electron Analysis
+// Fills a single-inclusive electron pt-spectrum
+// For further information see implementation file
+//
 #ifndef ALIANALYSISTASKHFE_H
 #define ALIANALYSISTASKHFE_H
 
@@ -36,12 +41,6 @@ class TH1I;
 class TList;
 
 class AliAnalysisTaskHFE : public AliAnalysisTask{
-  enum{
-    kIsSecVtxOn = BIT(19),
-    kIsPriVtxOn = BIT(20),
-    kIsRunningPostProcess = BIT(21),
-    kHasMCdata = BIT(22)
-  };
   public:
   enum{
     kPIDqa = 0,
@@ -72,20 +71,26 @@ class AliAnalysisTaskHFE : public AliAnalysisTask{
     void SetPriVtxOn(Bool_t option = kTRUE)        { SetBit(kIsPriVtxOn, option); };
     void SetSecVtxOn(Bool_t option = kTRUE)        { SetBit(kIsSecVtxOn, option); };
     void SetRunPostProcess(Bool_t option = kTRUE)  { SetBit(kIsRunningPostProcess, option); };
-    void SetPIDdetectors(Char_t *detectors){ fPIDdetectors = detectors; }
+    void SetPIDdetectors(Char_t * const detectors){ fPIDdetectors = detectors; }
     void SetPIDStrategy(UInt_t strategy) { fPIDstrategy = strategy; }
     void AddPIDdetector(Char_t *detector);
-    void PrintStatus();
-    Float_t GetRapidity(TParticle *part);
+    void PrintStatus() const;
+    Float_t GetRapidity(TParticle *part) const;
  
   private:
+    enum{
+      kIsSecVtxOn = BIT(19),
+      kIsPriVtxOn = BIT(20),
+      kIsRunningPostProcess = BIT(21),
+      kHasMCdata = BIT(22)
+    };
     class LabelContainer{
       public:
         LabelContainer(Int_t capacity);
         ~LabelContainer() {delete[] fContainer; };
 
         Bool_t Append(Int_t label);
-        Bool_t Find(Int_t Label);
+        Bool_t Find(Int_t Label) const;
         Int_t Next();
         void ResetIterator(){ fCurrent = fBegin; }
 
index f86726c..65c5d41 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
+//
+// Collection class for histograms
+// Stores either histograms or vectors of histograms
+// 
+// Author:
+// Matus Kalisky  <matus.kalisky@cern.ch>
+//
 
-#include <iostream>
+//#include <iostream>
 
 #include <TH1F.h>
 #include <TH2F.h>
@@ -106,11 +113,16 @@ void AliHFEcollection::Copy(TObject &ref) const {
 }
 //___________________________________________________________________
 AliHFEcollection::~AliHFEcollection(){
+  //
+  // Destructor
+  //
   AliInfo("DESTRUCTOR");
 }
 //___________________________________________________________________
 Bool_t AliHFEcollection::CreateTH1F(const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax){
-  
+  //
+  // Creates a TH1F histogram for the collection
+  //
   if(!fListE){
     AliError("No TList pointer ! ");
     return kFALSE;
@@ -122,7 +134,9 @@ Bool_t AliHFEcollection::CreateTH1F(const char* name, const char* title, Int_t n
 }
 //___________________________________________________________________
 Bool_t AliHFEcollection::CreateTH2F(const char* name, const char* title, Int_t nBinX, Float_t nMinX, Float_t nMaxX, Int_t nBinY, Float_t nMinY, Float_t nMaxY){
-  
+  //
+  // Creates a TH2F histogram for the collection
+  //
   if(!fListE){
     AliError("No TList pointer ! ");
     return kFALSE;
@@ -132,9 +146,9 @@ Bool_t AliHFEcollection::CreateTH2F(const char* name, const char* title, Int_t n
 }
 //___________________________________________________________________
 Bool_t AliHFEcollection::CreateTH1Fvector1(Int_t X, const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax){
-
+  //
   // create a 1 dimensional array of size [X]
-  
+  //
   if(!fListE){
     AliError("No TList pointer ! ");
     return kFALSE;
@@ -159,8 +173,9 @@ Bool_t AliHFEcollection::CreateTH1Fvector1(Int_t X, const char* name, const char
 }
 //___________________________________________________________________
 Bool_t AliHFEcollection::CreateTH2Fvector1(Int_t X, const char* name, const char* title, Int_t nBinX, Float_t nMinX, Float_t nMaxX, Int_t nBinY, Float_t nMinY, Float_t nMaxY){
-
+  //
   // create a 1 dimensinal array of TH2F histograms with size [X]
+  //
   if(!fListE){
     AliError("No TList pointer !");
     return kFALSE;
@@ -185,8 +200,9 @@ Bool_t AliHFEcollection::CreateTH2Fvector1(Int_t X, const char* name, const char
 }
 //___________________________________________________________________
 Bool_t AliHFEcollection::CreateTH1Fvector2(Int_t X, Int_t Y, const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax){
-
+  //
   // create a 2 dimensional array of histograms of size [X, Y]
+  //
   if(!fListE){
     AliError("No TList pointer ! ");
     return kFALSE;
@@ -215,7 +231,12 @@ Bool_t AliHFEcollection::CreateTH1Fvector2(Int_t X, Int_t Y, const char* name, c
 }
 //___________________________________________________________________
 TObject* AliHFEcollection::Get(const char* name, Int_t X){
-  
+  //
+  // Get the histogram from the vector
+  // Paramter: 
+  //  name - vector name
+  //  X - Number of the desired histogram
+  //
   TString hname = name;
   hname.Append(Form("_[%d]", X));
   if(!CheckObject(hname.Data())){
@@ -228,7 +249,12 @@ TObject* AliHFEcollection::Get(const char* name, Int_t X){
 }
 //___________________________________________________________________
 TObject* AliHFEcollection::Get(const char* name, Int_t X, Int_t Y){
-  
+  //
+  // Get histogram from the 2D vector
+  // Parameters:
+  //  name - Name of the vector
+  //  X,Y - Indices of the histogram
+  //
   TString hname = name;
   hname.Append(Form("_[%d][%d]", X, Y));
   if(!CheckObject(hname.Data())){
@@ -242,8 +268,9 @@ TObject* AliHFEcollection::Get(const char* name, Int_t X, Int_t Y){
 }
 //___________________________________________________________________
 Bool_t AliHFEcollection::CheckObject(const char* name){
-
+  //
   // check wheter the creation of the histogram was succesfull
+  //
   
   if(!fListE){
     AliError("No TList pointer ! ");
@@ -258,11 +285,16 @@ Bool_t AliHFEcollection::CheckObject(const char* name){
 }
 //___________________________________________________________________
 TObject* AliHFEcollection::Get(const char* name){ 
+  //
+  // Get histogram with the required name
+  // 
   return fListE->FindObject(name); 
 }
 //___________________________________________________________________
 Long64_t AliHFEcollection::Merge(TCollection *list){
-
+  //
+  // Merge the collections
+  //
   if(!fListE){
     AliError("AliHFEcollection::Merge : No TList pointer ! ");
     return 0;
@@ -274,7 +306,9 @@ Long64_t AliHFEcollection::Merge(TCollection *list){
 //____________________________________________________________________
 void AliHFEcollection::Browse(TBrowser *b)
 {
-   // Browse the content of the directory.
+  //
+  // Browse the content of the directory.
+  //
 
    if (b) {
       TObject *obj = 0;
index 0dfc92c..7666686 100644 (file)
@@ -2,21 +2,21 @@
  * See cxx source for full Copyright notice      
  */
 
-/************************************************************************
- *                                                                      *
- * Class for AliHFEcollection                                           *
- * Serves as a data container - currently based on internal TList       *
- *                                                                      *
- * Authors:                                                             *
- *   Markus Fasel  <M.Fasel@gsi.de>                                     *
- *   Matus Kalisky <matus.kalisky@cern.ch>  (contact)                   *
- ************************************************************************/
-
-/*
- * Provides an option for storing and creating histograms outside the
- * analysis class
- * the performance will be improved once the TMap is used insted of TTree
- */
+//                                                                      
+// Class for AliHFEcollection                                           
+// Serves as a data container - currently based on internal TList      
+//                                                                      
+// Authors:                                                             
+//   Markus Fasel  <M.Fasel@gsi.de>                                    
+//   Matus Kalisky <matus.kalisky@cern.ch>  (contact)                   
+//
+
+
+//
+// Provides an option for storing and creating histograms outside the
+// analysis class
+// the performance will be improved once the TMap is used insted of TTree
+//
 
 /*
  * vesion: 1.0.1
index 1c7c8a0..b863950 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-/************************************************************************
- *                                                                      *
- * Cut menagement class implemented by the                              *
- * ALICE Heavy Flavour Electron Group                                   *
- *                                                                      *
- * Authors:                                                             *
- *   Raphaelle Bailhache <R.Bailhache@gsi.de>                           *
- *   Markus Fasel <M.Fasel@gsi.de>                                      *
- *   Markus Heide <mheide@uni-muenster.de>                              *
- *   Matus Kalisky <m.kalisky@uni-muenster.de>                          *
- *                                                                      *
- ************************************************************************/
+//
+// Cut menagement class implemented by the
+// ALICE Heavy Flavour Electron Group
+// Interface to the correction framework
+// Provides a set of standard cuts 
+// 
+// Authors:
+//   Raphaelle Bailhache <R.Bailhache@gsi.de>
+//   Markus Fasel <M.Fasel@gsi.de>
+//   Markus Heide <mheide@uni-muenster.de>
+//   Matus Kalisky <m.kalisky@uni-muenster.de>
+//
 #include <TClass.h>
 #include <TList.h>
 #include <TObjArray.h>
@@ -39,7 +39,6 @@
 #include "AliCFTrackKineCuts.h"
 #include "AliCFTrackQualityCuts.h"
 #include "AliESDtrack.h"
-#include "AliMCParticle.h"
 
 #include "AliHFEcuts.h"
 
@@ -110,6 +109,10 @@ AliHFEcuts::~AliHFEcuts(){
 
 //__________________________________________________________________
 void AliHFEcuts::Initialize(AliCFManager *cfm){
+  //
+  // Initializes the cut objects from the correction framework
+  // Publishes the cuts to the correction framework manager
+  //
   if(IsInDebugMode()){
      fHistQA = new TList;
     fHistQA->SetName("CutQAhistograms");
index af188d6..7f409ec 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
+//
+// Cut container class for the ALICE HFE group
+// Serves also as interface to the correction Framework
+// Provides a set of standard cuts
+//
 #ifndef ALIHFECUTS_H
 #define ALIHFECUTS_H
 
@@ -31,18 +36,6 @@ class TObjArray;
 class TList;
 
 class AliHFEcuts : public TObject{
-  enum{
-    kDebugMode = BIT(14)
-  };
-  typedef enum{
-    kPrimary = 0,
-    kProductionVertex = 1,
-    kSigmaToVertex = 2,
-    kDCAToVertex = 3,
-    kITSPixel = 4,
-    kMaxImpactParam = 5
-  } Require_t;
-
   public:
     typedef enum{
       kStepMCGenerated = 0,
@@ -112,6 +105,17 @@ class AliHFEcuts : public TObject{
     Int_t GetDebugLevel() const { return fDebugLevel; };
 
   private:
+    enum{
+      kDebugMode = BIT(14)
+    };
+    typedef enum{
+      kPrimary = 0,
+      kProductionVertex = 1,
+      kSigmaToVertex = 2,
+      kDCAToVertex = 3,
+      kITSPixel = 4,
+      kMaxImpactParam = 5
+    } Require_t;
     void SetParticleGenCutList();
     void SetAcceptanceCutList();
     void SetRecKineITSTPCCutList();
index d4584bd..54f522a 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-/************************************************************************
- *                                                                      *
- * Extra cuts implemented by the ALICE Heavy Flavour Electron Group     *
- * Cuts stored here:                                                    *
- * - ITS pixels                                                         *
- * - TPC cluster ratio                                                  *
- * - TRD tracklets                                                      *
- *                                                                      *
- * Authors:                                                             *
- *   Markus Fasel <M.Fasel@gsi.de>                                      *
- *                                                                      *
- ************************************************************************/
-#include <TAxis.h>
+//
+// Extra cuts implemented by the ALICE Heavy Flavour Electron Group
+// Cuts stored here:
+// - ITS pixels
+// - TPC cluster ratio
+// - TRD tracklets
+//
+// Authors:
+//   Markus Fasel <M.Fasel@gsi.de>
+//
 #include <TClass.h>
 #include <TH1F.h>
 #include <TH2F.h>
@@ -33,7 +30,6 @@
 #include <TMath.h>
 
 #include "AliESDtrack.h"
-#include "AliLog.h"
 #include "AliMCParticle.h"
 
 #include "AliHFEextraCuts.h"
index 6978a4e..0688965 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
+//
+// Extra Cuts from the ALICE HFE Group
+// Container for cuts which are currently not implemented by
+// the Correction Framework
+//
 #ifndef ALIHFEEXTRACUTS_H
 #define ALIHFEEXTRACUTS_H
 
index 4997af3..e7f6a92 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/**************************************************************************
- *                                                                        *
- * QA class of Heavy Flavor quark and fragmeted/decayed particles         *
- * -Check kinematics of Heavy Quarks/hadrons, and decayed leptons         *
- *    pT, rapidity                                                        *
- *    decay lepton kinematics w/wo acceptance                             *
- *    heavy hadron decay length, electron pT fraction carried from decay  *
- * -Check yield of Heavy Quarks/hadrons                                   *
- *    Number of produced heavy quark                                      *
- *    Number of produced hadron of given pdg code                         *
- *                                                                        *
- *                                                                        *
- * Authors:                                                               *
- *   MinJung Kweon <minjung@physi.uni-heidelberg.de>                      *
- *                                                                        *
- **************************************************************************/
-
+//
+// QA class of Heavy Flavor quark and fragmeted/decayed particles
+// -Check kinematics of Heavy Quarks/hadrons, and decayed leptons
+//    pT, rapidity
+//    decay lepton kinematics w/wo acceptance
+//    heavy hadron decay length, electron pT fraction carried from decay
+// -Check yield of Heavy Quarks/hadrons
+//    Number of produced heavy quark
+//    Number of produced hadron of given pdg code
+//
+//
+// Authors:
+//   MinJung Kweon <minjung@physi.uni-heidelberg.de>
+//
 
-#include <iostream>
 #include <TH2F.h>
-#include <TCanvas.h>
-#include <TFile.h>
 #include <TH1F.h>
 #include <TH2F.h>
-#include <TCut.h>
-#include <TRandom.h>
-#include <TDatabasePDG.h>
-#include <TROOT.h>
 #include <TParticle.h>
 
 #include <AliLog.h>
-#include <AliESDEvent.h>
-#include <AliESDtrack.h>
-#include <AliESDInputHandler.h>
-#include <AliESDVertex.h>
 #include <AliStack.h>
 #include <AliAODMCParticle.h>
 
@@ -98,7 +84,7 @@ AliHFEmcQA::~AliHFEmcQA()
 }
 
 //_______________________________________________________________________________________________
-void AliHFEmcQA::PostAnalyze()
+void AliHFEmcQA::PostAnalyze() const
 {
 }
 
@@ -460,7 +446,7 @@ void AliHFEmcQA::GetDecayedKine(TParticle* mcpart, const Int_t kquark, Int_t kde
       return; 
     }
     Int_t iq = kquark - kCharm; 
-    Bool_t IsFinalOpenCharm = kFALSE;
+    Bool_t isFinalOpenCharm = kFALSE;
 
 /*
     if (iTrack < 0) { 
@@ -494,10 +480,10 @@ void AliHFEmcQA::GetDecayedKine(TParticle* mcpart, const Int_t kquark, Int_t kde
 
          for (Int_t i=0; i<fNparents; i++){
             if (abs(maPdgcode)==fParentSelect[0][i]){
-              IsFinalOpenCharm = kTRUE;
+              isFinalOpenCharm = kTRUE;
             } 
          }  
-         if (!IsFinalOpenCharm) return ;
+         if (!isFinalOpenCharm) return ;
 
           // iterate until you find B hadron as a mother or become top ancester 
           for (Int_t i=1; i<fgkMaxIter; i++){
@@ -587,7 +573,7 @@ void  AliHFEmcQA::GetDecayedKine(AliAODMCParticle *mcpart, const Int_t kquark, I
   }
 
   Int_t iq = kquark - kCharm;
-  Bool_t IsFinalOpenCharm = kFALSE;
+  Bool_t isFinalOpenCharm = kFALSE;
 
   if ( abs(mcpart->GetPdgCode()) != kdecayed ) return;
 
@@ -608,10 +594,10 @@ void  AliHFEmcQA::GetDecayedKine(AliAODMCParticle *mcpart, const Int_t kquark, I
 
     for (Int_t i=0; i<fNparents; i++){
        if (abs(maPdgcode)==fParentSelect[0][i]){
-         IsFinalOpenCharm = kTRUE;
+         isFinalOpenCharm = kTRUE;
        }
     } 
-    if (!IsFinalOpenCharm) return;
+    if (!isFinalOpenCharm) return;
 
     for (Int_t i=1; i<fgkMaxIter; i++){
 
@@ -769,7 +755,7 @@ void AliHFEmcQA::ReportStrangeness(Int_t &motherID, Int_t &mothertype, Int_t &mo
 }
 
 //__________________________________________
-Float_t AliHFEmcQA::GetRapidity(TParticle *part)
+Float_t AliHFEmcQA::GetRapidity(TParticle *part) const
 {
       // return rapidity
 
@@ -780,7 +766,7 @@ Float_t AliHFEmcQA::GetRapidity(TParticle *part)
 }
 
 //__________________________________________
-Float_t AliHFEmcQA::GetRapidity(AliAODMCParticle *part)
+Float_t AliHFEmcQA::GetRapidity(AliAODMCParticle *part) const
 {
       // return rapidity
 
@@ -798,7 +784,7 @@ Int_t AliHFEmcQA::GetElectronSource(AliAODMCParticle *mcpart)
   if ( abs(mcpart->GetPdgCode()) != AliHFEmcQA::kElectronPDG ) return -1;
        
   Int_t origin = -1;
-  Bool_t IsFinalOpenCharm = kFALSE;
+  Bool_t isFinalOpenCharm = kFALSE;
 
   // mother
   Int_t iLabel = mcpart->GetMother();
@@ -815,10 +801,10 @@ Int_t AliHFEmcQA::GetElectronSource(AliAODMCParticle *mcpart)
     
     for (Int_t i=0; i<fNparents; i++){
        if (abs(maPdgcode)==fParentSelect[0][i]){
-         IsFinalOpenCharm = kTRUE;
+         isFinalOpenCharm = kTRUE;
        }
     }
-    if (!IsFinalOpenCharm) return -1;
+    if (!isFinalOpenCharm) return -1;
 
     // iterate until you find B hadron as a mother or become top ancester 
     for (Int_t i=1; i<fgkMaxIter; i++){
@@ -875,7 +861,7 @@ Int_t AliHFEmcQA::GetElectronSource(TParticle* mcpart)
   if ( abs(mcpart->GetPdgCode()) != AliHFEmcQA::kElectronPDG ) return -1;
 
   Int_t origin = -1;
-  Bool_t IsFinalOpenCharm = kFALSE;
+  Bool_t isFinalOpenCharm = kFALSE;
 
   Int_t iLabel = mcpart->GetFirstMother();
   if (iLabel<0){
@@ -891,10 +877,10 @@ Int_t AliHFEmcQA::GetElectronSource(TParticle* mcpart)
 
      for (Int_t i=0; i<fNparents; i++){
         if (abs(maPdgcode)==fParentSelect[0][i]){
-          IsFinalOpenCharm = kTRUE;
+          isFinalOpenCharm = kTRUE;
         }
      }
-     if (!IsFinalOpenCharm) return -1;
+     if (!isFinalOpenCharm) return -1;
 
      // iterate until you find B hadron as a mother or become top ancester 
      for (Int_t i=1; i<fgkMaxIter; i++){
index 4dd6e00..19de700 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/**************************************************************************
- *                                                                        *
- * QA class of Heavy Flavor quark and fragmeted/decayed particles         *
- * -Check kinematics of Heavy Quarks/hadrons, and decayed leptons         *
- *    pT, rapidity                                                        *
- *    decay lepton kinematics w/wo acceptance                             *
- *    heavy hadron decay length, electron pT fraction carried from decay  *
- * -Check yield of Heavy Quarks/hadrons                                   *
- *    Number of produced heavy quark                                      *
- *    Number of produced hadron of given pdg code                         *
- *                                                                        *
- **************************************************************************/
+//
+// QA class of Heavy Flavor quark and fragmeted/decayed particles
+// -Check kinematics of Heavy Quarks/hadrons, and decayed leptons
+//    pT, rapidity
+//    decay lepton kinematics w/wo acceptance
+//    heavy hadron decay length, electron pT fraction carried from decay 
+// -Check yield of Heavy Quarks/hadrons
+//    Number of produced heavy quark
+//    Number of produced hadron of given pdg code
+//
 
 #ifndef ALIHFEMCQA_H
 #define ALIHFEMCQA_H
@@ -57,7 +55,7 @@ class AliHFEmcQA: public TObject {
 
                 virtual ~AliHFEmcQA();
 
-                void PostAnalyze();
+                void PostAnalyze() const;
                 void CreateHistograms(const Int_t kquark, Int_t icut, TString hnopt=""); // create histograms for mc qa analysis
                 void SetStack(AliStack* const stack){fStack=stack;} // set stack pointer
                 void SetMCArray(TClonesArray* const mcarry){fMCArray=mcarry;} // set mcarray pointer
@@ -77,8 +75,8 @@ class AliHFEmcQA: public TObject {
                 void ReportStrangeness(Int_t &motherID, Int_t &mothertype, Int_t &motherlabel); // report if the quark production process is unknown
                 Bool_t IsFromInitialShower(Int_t inputmotherlabel, Int_t &motherID, Int_t &mothertype, Int_t &motherlabel); // check if the quark is produced from initial parton shower 
                 Bool_t IsFromFinalParton(Int_t inputmotherlabel, Int_t &motherID, Int_t &mothertype, Int_t &motherlabel); // check if the quark is produced from final parton shower
-                Float_t GetRapidity(TParticle *part); // return rapidity
-               Float_t GetRapidity(AliAODMCParticle *part); // return rapidity
+                Float_t GetRapidity(TParticle *part) const; // return rapidity
+               Float_t GetRapidity(AliAODMCParticle *part) const; // return rapidity
 
                 AliStack* fStack; // stack pointer           
                TClonesArray *fMCArray; // mc array pointer
index bf9e111..957877b 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-/************************************************************************
- *                                                                      *
- * PID Steering Class                                                   *
- * Interface to the user task                                           *
- *                                                                      *
- * Authors:                                                             *
- *   Markus Fasel <M.Fasel@gsi.de>                                      *
- *                                                                      *
- ************************************************************************/
+//
+// PID Steering Class 
+// Interface to the user task
+// 
+// Authors:
+//   Markus Fasel <M.Fasel@gsi.de>
+//
+#include <TAxis.h>
 #include <TClass.h>
 #include <THnSparse.h>
-#include <TH3F.h>
 #include <TIterator.h>
 #include <TList.h>
 #include <TObjArray.h>
 #include <TObjString.h>
 #include <TString.h>
 
-#include "AliAODTrack.h"
 #include "AliESDtrack.h"
 #include "AliLog.h"
 #include "AliPID.h"
index 881abcb..8f904b6 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
+//
+// Steering class for electron identification
+// Combines detector PID objects
+// For more information please check the implementation file
+//
 #ifndef ALIHFEPID_H
 #define ALIHFEPID_H
 
@@ -30,27 +35,7 @@ class AliMCParticle;
 class TList;
 
 class AliHFEpid : public TObject{
-  enum{
-    kIsQAOn = BIT(14),
-    kHasMCData = BIT(15)
-  };
-  enum{
-    kMCpid = 0,
-    kESDpid = 1,
-    kITSpid = 2,
-    kTPCpid = 3,
-    kTRDpid = 4,
-    kTOFpid = 5,
-    kNdetectorPID = 6
-  };
-  enum{
-    kCombinedTPCTRD=0
-  };
-  enum{
-    kTRDSignal = 0,
-    kITSSignal = 1
-  };
-  public:
+ public:
     AliHFEpid();
     AliHFEpid(const AliHFEpid &c);
     AliHFEpid &operator=(const AliHFEpid &c);
@@ -83,6 +68,26 @@ class AliHFEpid : public TObject{
     Bool_t IdentifyStrategy4(AliHFEpidObject *track);
     Bool_t IdentifyStrategy5(AliHFEpidObject *track);
   private:
+    enum{
+      kIsQAOn = BIT(14),
+      kHasMCData = BIT(15)
+    };
+    enum{
+      kMCpid = 0,
+      kESDpid = 1,
+      kITSpid = 2,
+      kTPCpid = 3,
+      kTRDpid = 4,
+      kTOFpid = 5,
+      kNdetectorPID = 6
+    };
+    enum{
+      kCombinedTPCTRD=0
+    };
+    enum{
+      kTRDSignal = 0,
+      kITSSignal = 1
+    };
     AliHFEpidBase *fDetectorPID[kNdetectorPID];     //! Detector PID classes
     UInt_t fEnabledDetectors;                       //  Enabled Detectors
     UInt_t fPIDstrategy;                            //  PID Strategy
index cebc733..8a86011 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-/************************************************************************
- *                                                                      *
- * Abstract PID base class for Detector PID classes                     *
- * Supplies detector PID classes with basic informations (i.e. Debug    *
- * Level)                                                               *
- *                                                                      *
- * Authors:                                                             *
- *   Markus Fasel <M.Fasel@gsi.de>                                      *
- *                                                                      *
- ************************************************************************/
-#include <TParticle.h>
-
-#include "AliESDtrack.h"
-#include "AliMCParticle.h"
-
+//
+// Abstract PID base class for Detector PID classes 
+// Supplies detector PID classes with basic informations (i.e. Debug 
+// Level)
+//  
+// Authors: 
+//   Markus Fasel <M.Fasel@gsi.de> 
+// 
 #include "AliHFEpidBase.h"
 
 ClassImp(AliHFEpidBase)
@@ -66,6 +59,9 @@ AliHFEpidBase &AliHFEpidBase::operator=(const AliHFEpidBase &ref){
 
 //___________________________________________________________________
 void AliHFEpidBase::Copy(TObject &ref) const {
+  //
+  // Copy function for assignment operator
+  //
   AliHFEpidBase &target = dynamic_cast<AliHFEpidBase &>(ref);
 
   target.fDebugLevel = fDebugLevel;
index 56d037f..fd7eff8 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
+//
+// Base Class for Detector PID Objects
+// For more information see the implementation file
+//
 #ifndef ALIHFEPIDBASE_H
 #define ALIHFEPIDBASE_H
  
@@ -28,17 +32,13 @@ struct AliHFEpidObject{
       kESDanalysis,
       kAODanalysis
     }AnalysisType_t;
-    AliVParticle *fRecTrack;
-    AliVParticle *fMCtrack;
-    UChar_t fAnalysisType;
+    AliVParticle *fRecTrack;    // Reconstructed track
+    AliVParticle *fMCtrack;     // Monte Carlo track
+    UChar_t fAnalysisType;      // Analysis Mode (ESD or AOD)
     AliHFEpidObject():fRecTrack(NULL), fMCtrack(NULL), fAnalysisType(kESDanalysis){}
 };
 
 class AliHFEpidBase : public TNamed{
-  enum{
-    kQAon = BIT(14),
-    kHasMCData = BIT(15)
-  };
   public:
     AliHFEpidBase(const Char_t *name);
     AliHFEpidBase(const AliHFEpidBase &c);
@@ -61,6 +61,11 @@ class AliHFEpidBase : public TNamed{
     void Copy(TObject &ref) const;
     virtual void AddQAhistograms(TList *){};
   private:
+    enum{
+      kQAon = BIT(14),
+      kHasMCData = BIT(15)
+    };
+
     Int_t fDebugLevel;              // Debug Level
 
     ClassDef(AliHFEpidBase, 1)      // Base class for detector Electron ID
index b74f5fb..ecd215c 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/*
- * ITS PID class
- * checks ITS PID based on ITS dE/dx truncated mean
- *
- * Authors: Matus Kalisky <matus.kalisky@cern.ch>
- *          Markus Fasel <M.Fasel@gsi.de>
- *
- */
+//
+// ITS PID class
+// checks ITS PID based on ITS dE/dx truncated mean
+//
+// Authors: Matus Kalisky <matus.kalisky@cern.ch>
+//          Markus Fasel <M.Fasel@gsi.de>
+//
 #include <TClass.h>
 #include <TH2F.h>
 #include <TList.h>
 #include <TMath.h>
 #include <TString.h>
 
-#include "AliAODTrack.h"
-#include "AliAODMCParticle.h"
+//#include "AliAODTrack.h"
+//#include "AliAODMCParticle.h"
 #include "AliESDtrack.h"
 #include "AliLog.h"
 #include "AliPID.h"
index ae8fe63..7bfd9d1 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
+//
+// PID development class for ITS
+// does proton rejection via dE/dx
+// For more information see implementation file
 #ifndef ALIHFEPIDITS_H
 #define ALIHFEPIDITS_H
 
@@ -23,11 +27,6 @@ class AliVParticle;
 class TList;
 
 class AliHFEpidITS : public AliHFEpidBase{
-  enum{
-    kITSsigV1 = 0,
-    kITSsigV2 = 1,
-    kHistosSigAll = 2
-  };
   public:
     AliHFEpidITS(const Char_t *name);
     AliHFEpidITS(const AliHFEpidITS &ref);
@@ -46,6 +45,11 @@ class AliHFEpidITS : public AliHFEpidBase{
     void FillHistogramsSignalV1(Double_t p, Double_t signal, Int_t species);
     void FillHistogramsSignalV2(Double_t p, Double_t signal, Int_t species);
   private:
+    enum{
+      kITSsigV1 = 0,
+      kITSsigV2 = 1,
+      kHistosSigAll = 2
+    };
     TList *fQAlist;      // QA histograms for ITS pid
 
     ClassDef(AliHFEpidITS, 0)  // PID class for ITS
index 25dd6c5..36fc56c 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-/************************************************************************
- *                                                                      *
- * Class for TRD PID                                                    *
- * Implements the abstract base class AliHFEpidBase                     *
- * Make PID does the PID decision                                       *
- * Class further contains TRD specific cuts and QA histograms           *
- *                                                                      *
- * Authors:                                                             *
- *   Markus Fasel <M.Fasel@gsi.de>                                      *
- *                                                                      *
- ************************************************************************/
-#include <TMath.h>
+//
+// Class for TRD PID
+// Implements the abstract base class AliHFEpidBase
+// Make PID does the PID decision
+// Class further contains TRD specific cuts and QA histograms
+//
+// Authors:
+//   Markus Fasel <M.Fasel@gsi.de>
+//
 #include <TParticle.h>
 
 #include "AliAODMCParticle.h"
 #include "AliMCParticle.h"
-#include "AliVParticle.h"
+//#include "AliVParticle.h"
 
 #include "AliHFEpidMC.h"
 
index 98f32c2..9299883 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
+//
+// Detector PID Class for Monte Carlo PID
+// Returns PDG code of a particle
+// For more information see the impelmentation file
+//
 #ifndef ALIHFEPIDMC_H
 #define ALIHFEPIDMC_H
 
index c7eadea..2323840 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
+//
+// Class for TOF PID
+// Implements the abstract base class AliHFEpidBase
+// IsInitialized() does the PID decision
+// 
+// Authors:
+//   Markus Fasel  <M.Fasel@gsi.de>
+//   Matus Kalisky <matus.kalisky@cern.ch>  (contact)
+//
 
 #include <TH2F.h>
 #include <TList.h>
@@ -122,6 +131,9 @@ Int_t AliHFEpidTOF::IsSelected(AliHFEpidObject *vtrack)
 
 //___________________________________________________________________
 Int_t AliHFEpidTOF::MakePIDesd(AliESDtrack *track, AliMCParticle * /*mcTrack*/){
+  //
+  // Does particle identification as discribed in IsSelected
+  //
   Long_t status = 0;
   status = track->GetStatus(); 
 
index c9f3136..641fb4c 100644 (file)
@@ -4,17 +4,11 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice   */   
 
-/************************************************************************
- *                                                                      *
- * Class for TOF PID                                                    *
- * Implements the abstract base class AliHFEpidBase                     *
- * IsInitialized() does the PID decision                                *
- *                                                                      *
- * Authors:                                                             *
- *   Markus Fasel  <M.Fasel@gsi.de>                                     *
- *   Matus Kalisky <matus.kalisky@cern.ch>  (contact)                   *
- ************************************************************************/
+//
+// Class for TOF PID
+// Rejects protons and kaons at the TPC dE/dx line crossings
+// For more information please check the implementation file
+//
 #ifndef ALIHFEPIDBASE_H
 #include "AliHFEpidBase.h"
 #endif
@@ -28,8 +22,26 @@ class AliESDtrack;
 class AliMCParticle;
 
 class AliHFEpidTOF : public AliHFEpidBase{
-  typedef enum{
-    kHistTOFpidFlags = 0,
+  public:
+    AliHFEpidTOF(const Char_t *name);
+    virtual ~AliHFEpidTOF();
+    AliHFEpidTOF(const AliHFEpidTOF &c);
+    AliHFEpidTOF &operator=(const AliHFEpidTOF &c);
+  
+    virtual Bool_t    InitializePID();
+    virtual Int_t     IsSelected(AliHFEpidObject *track);
+    virtual Bool_t    HasQAhistos() const { return kTRUE; };
+  
+  
+  protected:
+    void Copy(TObject &ref) const;
+    void AddQAhistograms(TList *qaHist);
+    Int_t MakePIDesd(AliESDtrack *esdTrack, AliMCParticle *mcTrack);
+    Int_t MakePIDaod(AliAODTrack *aodTrack, AliAODMCParticle *mcTrack);
+  
+  private:
+    typedef enum{
+      kHistTOFpidFlags = 0,
       kHistTOFpidBetavP = 1,
       kHistTOFsignal = 2,
       kHistTOFlength =3,
@@ -39,29 +51,11 @@ class AliHFEpidTOF : public AliHFEpidBase{
       kHistTOFpid3 = 7,
       kHistTOFpid4 = 8
       
-      } QAHist_t;
- public:
-  AliHFEpidTOF(const Char_t *name);
-  virtual ~AliHFEpidTOF();
-  AliHFEpidTOF(const AliHFEpidTOF &c);
-  AliHFEpidTOF &operator=(const AliHFEpidTOF &c);
-  
-  virtual Bool_t    InitializePID();
-  virtual Int_t     IsSelected(AliHFEpidObject *track);
-  virtual Bool_t    HasQAhistos() const { return kTRUE; };
-  
-  
- protected:
-  void Copy(TObject &ref) const;
-  void AddQAhistograms(TList *qaHist);
-  Int_t MakePIDesd(AliESDtrack *esdTrack, AliMCParticle *mcTrack);
-  Int_t MakePIDaod(AliAODTrack *aodTrack, AliAODMCParticle *mcTrack);
-  
- private:
-  
-  AliPID *fPID;           //! PID Object
-  TList *fQAList;         //! QA histograms
-  ClassDef(AliHFEpidTOF, 1)
+    } QAHist_t;
+
+    AliPID *fPID;           //! PID Object
+    TList *fQAList;         //! QA histograms
+    ClassDef(AliHFEpidTOF, 1) // TOF PID class
 };
 
 #endif
index dbbbb39..99b2e57 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-/************************************************************************
- *                                                                      *
- * Class for TPC PID                                                    *
- * Implements the abstract base class AliHFEpidBase                     *
- *                                                                      *
- * Class contains TPC specific cuts and QA histograms                   *
- * Two selection strategies are offered: Selection of certain value     *
- * regions in the TPC dE/dx (by IsSelected), and likelihoods            *
- *                                                                      *
- * Authors:                                                             *
- *                                                                      *
- *   Markus Fasel <M.Fasel@gsi.de>                                      *
- *   Markus Heide <mheide@uni-muenster.de>                              *
- *                                                                      *
- *                                                                      *
- ************************************************************************/
+//
+// Class for TPC PID
+// Implements the abstract base class AliHFEpidBase
+// 
+// Class contains TPC specific cuts and QA histograms
+// Two selection strategies are offered: Selection of certain value
+// regions in the TPC dE/dx (by IsSelected), and likelihoods
+//
+// Authors: 
+//
+//   Markus Fasel <M.Fasel@gsi.de> 
+//   Markus Heide <mheide@uni-muenster.de> 
+//  
 #include <TH2I.h>
 #include <TList.h>
 #include <TMath.h>
-#include <TParticle.h>
+//#include <TParticle.h>
 
 #include "AliAODTrack.h"
 #include "AliAODMCParticle.h"
@@ -41,7 +38,7 @@
 #include "AliMCParticle.h"
 #include "AliPID.h"
 #include "AliTPCpidESD.h"
-#include "AliVParticle.h"
+//#include "AliVParticle.h"
 
 #include "AliHFEpidTPC.h"
 
@@ -275,12 +272,13 @@ Double_t  AliHFEpidTPC::Suppression(const AliESDtrack *track, Int_t species)
 {
   //ratio of likelihoods to be whatever species/to be an electron;
   //as a cross-check for possible particle type suppression compared to electrons
+  const Double_t kVerySmall = 1e-10;
   if(!track) return -20;
-  if((Likelihood(track,species) == -2.)||(Likelihood(track,0)== -2.))
+  if((TMath::Abs(Likelihood(track,species) + 2) < kVerySmall)||(TMath::Abs(Likelihood(track,0) + 2 ) < kVerySmall))
     return -30;
-  if(Likelihood(track,species) == 0.)
+  if(TMath::Abs(Likelihood(track,species)) < kVerySmall)
     return -10;
-  if (Likelihood(track,0) == 0.)
+  if (TMath::Abs(Likelihood(track,0)) < kVerySmall)
     return 10.;
   else
     return TMath::Log10(Likelihood(track,species)/(Likelihood(track,0)));
@@ -290,6 +288,8 @@ Double_t  AliHFEpidTPC::Suppression(const AliESDtrack *track, Int_t species)
 
 //___________________________________________________________________
 void AliHFEpidTPC::FillTPChistograms(const AliESDtrack *track, const AliMCParticle *mctrack){
+  // 
+  // Fill the QA histogtrams
   //
   if(!track)
     return;
@@ -345,6 +345,9 @@ void AliHFEpidTPC::FillTPChistograms(const AliESDtrack *track, const AliMCPartic
 
 //___________________________________________________________________
 void AliHFEpidTPC::AddQAhistograms(TList *qaList){
+  //
+  // Create QA histograms for TPC PID
+  //
   fQAList = new TList;
   fQAList->SetName("fTPCqaHistos");
 
index 2e82dd5..c8c958f 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
+//
+// Class for TPC PID
+// Does electron selection based on dE/dx
+// For more information please check the implementation file
+//
 #ifndef ALIHFEPIDTPC_H
 #define ALIHFEPIDTPC_H
 
@@ -32,39 +37,6 @@ class AliTPCpidESD;
 class AliVParticle;
 
 class AliHFEpidTPC : public AliHFEpidBase{
-  typedef enum{
-    kHistTPCelectron = 0,
-    kHistTPCpion = 1,
-    kHistTPCmuon = 2,
-    kHistTPCkaon = 3,
-    kHistTPCproton = 4,
-    kHistTPCothers = 5,
-    kHistTPCall = 6,
-    kHistTPCselected = 7,
-    kHistTPCprobEl = 8,
-    kHistTPCprobPi = 9,
-    kHistTPCprobMu = 10,
-    kHistTPCprobKa = 11,
-    kHistTPCprobPro = 12,
-    kHistTPCprobOth = 13,
-    kHistTPCprobAll = 14,
-    kHistTPCsuppressPi = 15,
-    kHistTPCsuppressMu = 16,
-    kHistTPCsuppressKa = 17,
-    kHistTPCsuppressPro = 18,
-    kHistTPCenhanceElPi = 19,
-    kHistTPCenhanceElMu = 20,
-    kHistTPCenhanceElKa = 21,
-    kHistTPCenhanceElPro = 22,
-    kHistTPCElprobPi = 23,
-    kHistTPCElprobMu = 24,
-    kHistTPCElprobKa = 25,
-    kHistTPCElprobPro = 26
-  } QAHist_t;
-  enum{
-    kAsymmetricSigmaCut = BIT(20),
-    kRejection = BIT(21)
-  };
   public:
     AliHFEpidTPC(const Char_t *name);
     AliHFEpidTPC(const AliHFEpidTPC &ref);
@@ -93,6 +65,39 @@ class AliHFEpidTPC : public AliHFEpidBase{
     Double_t Suppression(const AliESDtrack *track, Int_t species);
 
   private:
+    typedef enum{
+      kHistTPCelectron = 0,
+      kHistTPCpion = 1,
+      kHistTPCmuon = 2,
+      kHistTPCkaon = 3,
+      kHistTPCproton = 4,
+      kHistTPCothers = 5,
+      kHistTPCall = 6,
+      kHistTPCselected = 7,
+      kHistTPCprobEl = 8,
+      kHistTPCprobPi = 9,
+      kHistTPCprobMu = 10,
+      kHistTPCprobKa = 11,
+      kHistTPCprobPro = 12,
+      kHistTPCprobOth = 13,
+      kHistTPCprobAll = 14,
+      kHistTPCsuppressPi = 15,
+      kHistTPCsuppressMu = 16,
+      kHistTPCsuppressKa = 17,
+      kHistTPCsuppressPro = 18,
+      kHistTPCenhanceElPi = 19,
+      kHistTPCenhanceElMu = 20,
+      kHistTPCenhanceElKa = 21,
+      kHistTPCenhanceElPro = 22,
+      kHistTPCElprobPi = 23,
+      kHistTPCElprobMu = 24,
+      kHistTPCElprobKa = 25,
+      kHistTPCElprobPro = 26
+    } QAHist_t;
+    enum{
+      kAsymmetricSigmaCut = BIT(20),
+      kRejection = BIT(21)
+    };
     Double_t fLineCrossingSigma[AliPID::kSPECIES];          // with of the exclusion point
     UChar_t fLineCrossingsEnabled;                          // Bitmap showing which line crossing is set
     Float_t fPAsigCut[2];                                   // Momentum region where to perform asymmetric sigma cut
index 005eabf..e2b0ae7 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
-/************************************************************************
- *                                                                      *
- * Class for TRD PID                                                    *
- * Implements the abstract base class AliHFEpidbase                     *
- * Make PID does the PID decision                                       *
- * Class further contains TRD specific cuts and QA histograms           *
- *                                                                      *
- * Authors:                                                             *
- *   Markus Fasel <M.Fasel@gsi.de>                                      *
- *                                                                      *
- ************************************************************************/
-#include <TAxis.h>
-#include <TFile.h>
+//
+// Class for TRD PID
+// Implements the abstract base class AliHFEpidbase 
+// Make PID does the PID decision 
+// Class further contains TRD specific cuts and QA histograms 
+//  
+// Authors: 
+//   Markus Fasel <M.Fasel@gsi.de>  
+// 
 #include <TH1F.h>
 #include <TH2F.h>
-#include <TIterator.h>
-#include <TKey.h>
-#include <TMap.h>
-#include <TObjArray.h>
-#include <TObjString.h>
+#include <TList.h>
 #include <TString.h>
-#include <TROOT.h>
 
 #include "AliAODTrack.h"
 #include "AliAODMCParticle.h"
@@ -140,12 +131,18 @@ Int_t AliHFEpidTRD::IsSelected(AliHFEpidObject *track){
 
 //______________________________________________________
 Int_t AliHFEpidTRD::MakePIDaod(AliAODTrack * /*aodTrack*/, AliAODMCParticle * /*aodmc*/){
+  //
+  // Does PID decision for AOD tracks as discribed above
+  //
   AliError("AOD PID not yet implemented");
   return 0;
 }
 
 //______________________________________________________
 Int_t AliHFEpidTRD::MakePIDesd(AliESDtrack *esdTrack, AliMCParticle * /*mcTrack*/){
+  //
+  // Does PID decision for ESD tracks as discribed above
+  //
   Double_t p = esdTrack->GetOuterParam() ? esdTrack->GetOuterParam()->P() : esdTrack->P();
   if(p < 2.0) return 0;
 
index fe51280..f0e3b3e 100644 (file)
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/
+//
+// TRD PID Class
+// Does PID either on a x% electron efficiency basis or on dE/dx
+// For more information please check the implementation file
+//
 #ifndef ALIHFEPIDTRD_H
 #define ALIHFEPIDTRD_H
 
index 321feca..13bc675 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/**************************************************************************
- *                                                                        *
- *  QA class of primary vertex study for Heavy Flavor electrons           *
- *                                                                        *
- * Authors:                                                               *
- *   MinJung Kweon <minjung@physi.uni-heidelberg.de>                      *
- *                                                                        *
- **************************************************************************/
+//
+//  QA class of primary vertex study for Heavy Flavor electrons
+//
+// Authors:
+//   MinJung Kweon <minjung@physi.uni-heidelberg.de>
+//
 
 
-#include <iostream>
 #include <TH2F.h>
-#include <TH3F.h>
-#include "TLorentzVector.h"
-#include <TNtuple.h>
 #include <TParticle.h>
 
 #include "AliESDEvent.h"
index 1eb493b..5959643 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-
-/**************************************************************************
- *                                                                        *
- * QA class of primary vertex study for Heavy Flavor electrons            * 
- *                                                                        *
- **************************************************************************/
+//
+// QA class of primary vertex study for Heavy Flavor electrons
+//
 
 #ifndef ALIHFEPRIVTX_H
 #define ALIHFEPRIVTX_H
@@ -45,8 +42,8 @@ class AliHFEpriVtx : public TObject {
 
                 void CreateHistograms(TString hnopt=""); // create histograms
                 void Init();
-                void SetEvent(AliESDEvent* ESD){fESD1=ESD;}; // set ESD pointer
-                void SetStack(AliStack* stack){fStack=stack;} // set stack pointer
+                void SetEvent(AliESDEvent * const ESD){fESD1=ESD;}; // set ESD pointer
+                void SetStack(AliStack * const stack){fStack=stack;} // set stack pointer
                 void CountNtracks(Int_t sourcePart, Int_t recpid, Double_t recprob); // count number of tracks passed certain cut
                 void FillNtracks(); // fill counted number of tracks
                 void CountPriVxtElecContributor(AliESDtrack *ESDelectron, Int_t sourcePart, Int_t recpid, Double_t recprob); 
index cd632f7..774cd7d 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/**************************************************************************
- *                                                                        *
- * Secondary vertexing construction Class                                 *
- *  Construct secondary vertex from Beauty hadron with electron and       *
- *  hadrons, then apply selection criteria                                *
- *                                                                        *
- * Authors:                                                               *
- *   MinJung Kweon <minjung@physi.uni-heidelberg.de>                      *
- *                                                                        *
- **************************************************************************/
+//
+// Secondary vertexing construction Class
+//  Construct secondary vertex from Beauty hadron with electron and
+//  hadrons, then apply selection criteria
+//
+// Authors:
+//   MinJung Kweon <minjung@physi.uni-heidelberg.de>
+//
 
-#include <iostream>
 #include <TH2F.h>
-#include <TH3F.h>
-#include <TLorentzVector.h>
-#include <TNtuple.h>
 #include <TParticle.h>
 
 #include <AliESDEvent.h>
@@ -36,7 +30,6 @@
 #include <AliKFParticle.h>
 #include <AliKFVertex.h>
 #include <AliLog.h>
-#include <AliPID.h>
 #include <AliStack.h>
 
 ClassImp(AliHFEsecVtx)
index c68a4d5..50a26e9 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-/**************************************************************************
- *                                                                        *
- * Secondary vertexing construction Class                                 *
- *  Construct secondary vertex from Beauty hadron with electron and       *
- *  hadrons, then apply selection criteria                                *
- *                                                                        *
- **************************************************************************/
-
+//
+//  Secondary vertexing construction Class
+//  Construct secondary vertex from Beauty hadron with electron and
+//  hadrons, then apply selection criteria
+//
 
 #ifndef ALIHFESECVTX_H
 #define ALIHFESECVTX_H