ROOT logo
#ifndef ALITRDPIDREFMAKERLQ_H
#define ALITRDPIDREFMAKERLQ_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

/* $Id: AliTRDpidRefMakerLQ.h 34125 2009-08-06 09:35:40Z cblume $ */

///////////////////////////////////////////////////////////////////////////////
//                                                                           //
//  TRD calibration class for building reference data for PID                //
//                                                                           //
///////////////////////////////////////////////////////////////////////////////

#ifndef ALITRDPIDREFMAKER_H
#include "AliTRDpidRefMaker.h"
#endif

// #ifndef ALITRDPIDUTIL_H
// #include "AliTRDpidUtil.h"
// #endif
// #ifndef ALIPID_H
// #include "AliPID.h"
// #endif

class TKDNodeInfo;
class TKDInterpolator;
class TObjArray;
class AliTRDpidRefMakerLQ : public AliTRDpidRefMaker {
public:
  enum ETRDpidRefMakerLQsteer{
    kMaxStat    = 40000 // maximum statistics/PID bin
   ,kMinStat    = 50     // minimum statistics/bucket 14%
   ,kMinBuckets = 100    // minimum number of buckets [lambda(6)*alpha(1.5)*regions(50)]
  };
  AliTRDpidRefMakerLQ();
  AliTRDpidRefMakerLQ(const char *n);
  ~AliTRDpidRefMakerLQ();

  TObject*    GetOCDBEntry(Option_t *opt);
  Bool_t      GetRefFigure(Int_t ifig);
  Bool_t      HasOnlineMonitor() const {return kTRUE;}
  TObjArray*  Histos();
  Bool_t      Load(const Char_t *file = "AnalysisResults.root", const Char_t *dir = "TRD.CalibPIDrefMaker");
  Bool_t      PostProcess();
  void        UserCreateOutputObjects();
  void        UserExec(Option_t *opt);

private:
  AliTRDpidRefMakerLQ(const AliTRDpidRefMakerLQ &ref);
  AliTRDpidRefMakerLQ& operator=(const AliTRDpidRefMakerLQ &ref);
  void        SetZeroes(TKDInterpolator *in, TKDNodeInfo *node, Int_t n0, Int_t& idx, Float_t x, Float_t dx, Float_t y, Float_t dy, const Char_t opt='x');

  TObjArray   *fPDF;          // list of PDF estimations

  ClassDef(AliTRDpidRefMakerLQ, 6)  // Reference builder for Multidim-LQ TRD-PID

};

#endif

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