ROOT logo
/**************************************************************************
* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
*                                                                        *
* Author: The ALICE Off-line Project.                                    *
* Contributors are mentioned in the code where appropriate.              *
*                                                                        *
* Permission to use, copy, modify and distribute this software and its   *
* documentation strictly for non-commercial purposes is hereby granted   *
* without fee, provided that the above copyright notice appears in all   *
* copies and that both the copyright notice and this permission notice   *
* appear in the supporting documentation. The authors make no claims     *
* about the suitability of this software for any purpose. It is          *
* provided "as is" without express or implied warranty.                  *
**************************************************************************/
//
// Class for spectrum correction
// Subtraction of hadronic background, Unfolding of the data and
// Renormalization done here
// For more information see the implementation file
//
#ifndef ALIHFEINCLUSIVESPECTRUM_H
#define ALIHFEINCLUSIVESPECTRUM_H

#include "AliHFECorrectSpectrumBase.h"


class TGraphErrors;
class TObject;
class TH1;
class TF1;
class TList;
class TObjArray;
class AliCFContainer;
class AliHFEcontainer;
class AliCFDataGrid;
class AliCFEffGrid;
class AliHFEInclusiveSpectrumQA;

class AliHFEInclusiveSpectrum : public AliHFECorrectSpectrumBase{
  public:
  
  AliHFEInclusiveSpectrum(const char* name);
    ~AliHFEInclusiveSpectrum();
    

    virtual Bool_t Init(const AliHFEcontainer *datahfecontainer, const AliHFEcontainer *mchfecontainer, const AliHFEcontainer */*bghfecontainer*/=0x0, const AliHFEcontainer *v0hfecontainer=0x0,AliCFContainer *photoniccontainerD=0x0);
    virtual Bool_t Correct(Bool_t subtractcontamination=kTRUE,  Bool_t subtractphotonic=kFALSE);
   
    AliCFDataGrid *SubtractBackground();
    AliCFDataGrid *SubtractPhotonicBackground();
    AliCFDataGrid *CorrectV0Efficiency(AliCFDataGrid* const bgsubpectrum = 0x0);
    AliCFDataGrid *CorrectParametrizedEfficiency(AliCFDataGrid* const bgsubpectrum = 0x0);
    THnSparse *Unfold(AliCFDataGrid* const bgsubpectrum = 0x0);
    AliCFDataGrid *CorrectForEfficiency(AliCFDataGrid* const bgsubpectrum = 0x0);

    void SetMCNoCentrality() { fNoCentralitySelectionMC = kTRUE; };

    void WriteResults(const char *filename);
   
 private:
    AliHFEInclusiveSpectrum(const AliHFEInclusiveSpectrum &ref);
    AliHFEInclusiveSpectrum &operator=(const AliHFEInclusiveSpectrum &ref);
    virtual void Copy(TObject &o) const;
 
    AliHFEInclusiveSpectrumQA *fQA; // QA

    Bool_t fNoCentralitySelectionMC;  // Explicitly switch off centrality selection
   
    ClassDef(AliHFEInclusiveSpectrum, 1) 
};
#endif

 AliHFEInclusiveSpectrum.h:1
 AliHFEInclusiveSpectrum.h:2
 AliHFEInclusiveSpectrum.h:3
 AliHFEInclusiveSpectrum.h:4
 AliHFEInclusiveSpectrum.h:5
 AliHFEInclusiveSpectrum.h:6
 AliHFEInclusiveSpectrum.h:7
 AliHFEInclusiveSpectrum.h:8
 AliHFEInclusiveSpectrum.h:9
 AliHFEInclusiveSpectrum.h:10
 AliHFEInclusiveSpectrum.h:11
 AliHFEInclusiveSpectrum.h:12
 AliHFEInclusiveSpectrum.h:13
 AliHFEInclusiveSpectrum.h:14
 AliHFEInclusiveSpectrum.h:15
 AliHFEInclusiveSpectrum.h:16
 AliHFEInclusiveSpectrum.h:17
 AliHFEInclusiveSpectrum.h:18
 AliHFEInclusiveSpectrum.h:19
 AliHFEInclusiveSpectrum.h:20
 AliHFEInclusiveSpectrum.h:21
 AliHFEInclusiveSpectrum.h:22
 AliHFEInclusiveSpectrum.h:23
 AliHFEInclusiveSpectrum.h:24
 AliHFEInclusiveSpectrum.h:25
 AliHFEInclusiveSpectrum.h:26
 AliHFEInclusiveSpectrum.h:27
 AliHFEInclusiveSpectrum.h:28
 AliHFEInclusiveSpectrum.h:29
 AliHFEInclusiveSpectrum.h:30
 AliHFEInclusiveSpectrum.h:31
 AliHFEInclusiveSpectrum.h:32
 AliHFEInclusiveSpectrum.h:33
 AliHFEInclusiveSpectrum.h:34
 AliHFEInclusiveSpectrum.h:35
 AliHFEInclusiveSpectrum.h:36
 AliHFEInclusiveSpectrum.h:37
 AliHFEInclusiveSpectrum.h:38
 AliHFEInclusiveSpectrum.h:39
 AliHFEInclusiveSpectrum.h:40
 AliHFEInclusiveSpectrum.h:41
 AliHFEInclusiveSpectrum.h:42
 AliHFEInclusiveSpectrum.h:43
 AliHFEInclusiveSpectrum.h:44
 AliHFEInclusiveSpectrum.h:45
 AliHFEInclusiveSpectrum.h:46
 AliHFEInclusiveSpectrum.h:47
 AliHFEInclusiveSpectrum.h:48
 AliHFEInclusiveSpectrum.h:49
 AliHFEInclusiveSpectrum.h:50
 AliHFEInclusiveSpectrum.h:51
 AliHFEInclusiveSpectrum.h:52
 AliHFEInclusiveSpectrum.h:53
 AliHFEInclusiveSpectrum.h:54
 AliHFEInclusiveSpectrum.h:55
 AliHFEInclusiveSpectrum.h:56
 AliHFEInclusiveSpectrum.h:57
 AliHFEInclusiveSpectrum.h:58
 AliHFEInclusiveSpectrum.h:59
 AliHFEInclusiveSpectrum.h:60
 AliHFEInclusiveSpectrum.h:61
 AliHFEInclusiveSpectrum.h:62
 AliHFEInclusiveSpectrum.h:63
 AliHFEInclusiveSpectrum.h:64
 AliHFEInclusiveSpectrum.h:65
 AliHFEInclusiveSpectrum.h:66
 AliHFEInclusiveSpectrum.h:67
 AliHFEInclusiveSpectrum.h:68
 AliHFEInclusiveSpectrum.h:69
 AliHFEInclusiveSpectrum.h:70
 AliHFEInclusiveSpectrum.h:71
 AliHFEInclusiveSpectrum.h:72