ROOT logo
//-------------------------------------------------------------------------
//     OADB container for trigger analysis configuration (cut ranges.. ...)
//     Author: Michele Floris, CERN
//-------------------------------------------------------------------------

#include "AliOADBTriggerAnalysis.h"
#include "AliLog.h"
#include "TBrowser.h"
#include "TFolder.h"
#include <iostream>

using namespace std;

ClassImp(AliOADBTriggerAnalysis)

AliOADBTriggerAnalysis::AliOADBTriggerAnalysis() : TNamed("AliOADBTriggerAnalysis", "OADB object storing trigger analysis settings"),   
  fZDCCutRefSumCorr(-65.5),
  fZDCCutRefDeltaCorr(-2.1),
  fZDCCutSigmaSumCorr(6.0),
  fZDCCutSigmaDeltaCorr(1.2),
  fZDCCutZNATimeCorrMin(2.0),
  fZDCCutZNATimeCorrMax(100.0),
  fZDCCutZNCTimeCorrMin(5.0),
  fZDCCutZNCTimeCorrMax(100.0)
{
  // default ctor
}

AliOADBTriggerAnalysis::AliOADBTriggerAnalysis(char* name) : TNamed(name, "OADB object storing trigger analysis settings"), 
  fZDCCutRefSumCorr(-65.5),
  fZDCCutRefDeltaCorr(-2.1),
  fZDCCutSigmaSumCorr(6.0),
  fZDCCutSigmaDeltaCorr(1.2),
  fZDCCutZNATimeCorrMin(2.0),
  fZDCCutZNATimeCorrMax(100.0),
  fZDCCutZNCTimeCorrMin(5.0),
  fZDCCutZNCTimeCorrMax(100.0)
{
  // ctor
  // Init();
}

// void AliOADBTriggerAnalysis::Init() {
//   // initialize pointers
  
  

// }

AliOADBTriggerAnalysis::~AliOADBTriggerAnalysis(){
  // dtor

}
  
void AliOADBTriggerAnalysis::Browse(TBrowser *b)
{
   // Browse this object.
   // If b=0, there is no Browse call TObject::Browse(0) instead.
   //         This means TObject::Inspect() will be invoked indirectly


  static TObjString * strZDCCutRefSumCorr     =0;    
  static TObjString * strZDCCutRefDeltaCorr   =0;  
  static TObjString * strZDCCutSigmaSumCorr   =0;  
  static TObjString * strZDCCutSigmaDeltaCorr =0;
  static TObjString * strZDCCutZNATimeCorrMin =0;
  static TObjString * strZDCCutZNATimeCorrMax =0;
  static TObjString * strZDCCutZNCTimeCorrMin =0;
  static TObjString * strZDCCutZNCTimeCorrMax =0;

  if(strZDCCutRefSumCorr     ) delete strZDCCutRefSumCorr     ;
  if(strZDCCutRefDeltaCorr   ) delete strZDCCutRefDeltaCorr   ;
  if(strZDCCutSigmaSumCorr   ) delete strZDCCutSigmaSumCorr   ;
  if(strZDCCutSigmaDeltaCorr ) delete strZDCCutSigmaDeltaCorr ;
  if(strZDCCutZNATimeCorrMin ) delete strZDCCutZNATimeCorrMin ;
  if(strZDCCutZNATimeCorrMax ) delete strZDCCutZNATimeCorrMax ;
  if(strZDCCutZNCTimeCorrMin ) delete strZDCCutZNCTimeCorrMin ;
  if(strZDCCutZNCTimeCorrMax ) delete strZDCCutZNCTimeCorrMax ;
  
  strZDCCutRefSumCorr     = new TObjString(Form("ZDCCutRefSumCorr     %f", fZDCCutRefSumCorr    )); 
  strZDCCutRefDeltaCorr   = new TObjString(Form("ZDCCutRefDeltaCorr   %f", fZDCCutRefDeltaCorr  )); 
  strZDCCutSigmaSumCorr   = new TObjString(Form("ZDCCutSigmaSumCorr   %f", fZDCCutSigmaSumCorr  )); 
  strZDCCutSigmaDeltaCorr = new TObjString(Form("ZDCCutSigmaDeltaCorr %f", fZDCCutSigmaDeltaCorr)); 
  strZDCCutZNATimeCorrMin = new TObjString(Form("ZDCCutZNATimeCorrMin %f", fZDCCutZNATimeCorrMin));
  strZDCCutZNATimeCorrMax = new TObjString(Form("ZDCCutZNATimeCorrMax %f", fZDCCutZNATimeCorrMax));
  strZDCCutZNCTimeCorrMin = new TObjString(Form("ZDCCutZNCTimeCorrMin %f", fZDCCutZNCTimeCorrMin));
  strZDCCutZNCTimeCorrMax = new TObjString(Form("ZDCCutZNCTimeCorrMax %f", fZDCCutZNCTimeCorrMax));

  if (b) {
    // Creates a folder for each beam type containing the list of corresponding bx ids
    b->Add(strZDCCutRefSumCorr    );
    b->Add(strZDCCutRefDeltaCorr  );
    b->Add(strZDCCutSigmaSumCorr  );
    b->Add(strZDCCutSigmaDeltaCorr);
    b->Add(strZDCCutZNATimeCorrMin);
    b->Add(strZDCCutZNATimeCorrMax);
    b->Add(strZDCCutZNCTimeCorrMin);
    b->Add(strZDCCutZNCTimeCorrMax);
  }     
  else
    TObject::Browse(b);
}

void AliOADBTriggerAnalysis::Print(Option_t* option) const {
  // Print Class contents
  // Option is passed to TMap::Print
  cout << "ZDC configuration" << endl;
  cout << " - ZDCCutRefSumCorr     "<< fZDCCutRefSumCorr     << endl;
  cout << " - ZDCCutRefDeltaCorr   "<< fZDCCutRefDeltaCorr   << endl;
  cout << " - ZDCCutSigmaSumCorr   "<< fZDCCutSigmaSumCorr   << endl;
  cout << " - ZDCCutSigmaDeltaCorr "<< fZDCCutSigmaDeltaCorr << endl;
  cout << " - ZDCCutZNATimeCorrMin "<< fZDCCutZNATimeCorrMin << endl;
  cout << " - ZDCCutZNATimeCorrMax "<< fZDCCutZNATimeCorrMax << endl;
  cout << " - ZDCCutZNCTimeCorrMin "<< fZDCCutZNCTimeCorrMin << endl;
  cout << " - ZDCCutZNCTimeCorrMax "<< fZDCCutZNCTimeCorrMax << endl;
  cout << option << endl;

}
 AliOADBTriggerAnalysis.cxx:1
 AliOADBTriggerAnalysis.cxx:2
 AliOADBTriggerAnalysis.cxx:3
 AliOADBTriggerAnalysis.cxx:4
 AliOADBTriggerAnalysis.cxx:5
 AliOADBTriggerAnalysis.cxx:6
 AliOADBTriggerAnalysis.cxx:7
 AliOADBTriggerAnalysis.cxx:8
 AliOADBTriggerAnalysis.cxx:9
 AliOADBTriggerAnalysis.cxx:10
 AliOADBTriggerAnalysis.cxx:11
 AliOADBTriggerAnalysis.cxx:12
 AliOADBTriggerAnalysis.cxx:13
 AliOADBTriggerAnalysis.cxx:14
 AliOADBTriggerAnalysis.cxx:15
 AliOADBTriggerAnalysis.cxx:16
 AliOADBTriggerAnalysis.cxx:17
 AliOADBTriggerAnalysis.cxx:18
 AliOADBTriggerAnalysis.cxx:19
 AliOADBTriggerAnalysis.cxx:20
 AliOADBTriggerAnalysis.cxx:21
 AliOADBTriggerAnalysis.cxx:22
 AliOADBTriggerAnalysis.cxx:23
 AliOADBTriggerAnalysis.cxx:24
 AliOADBTriggerAnalysis.cxx:25
 AliOADBTriggerAnalysis.cxx:26
 AliOADBTriggerAnalysis.cxx:27
 AliOADBTriggerAnalysis.cxx:28
 AliOADBTriggerAnalysis.cxx:29
 AliOADBTriggerAnalysis.cxx:30
 AliOADBTriggerAnalysis.cxx:31
 AliOADBTriggerAnalysis.cxx:32
 AliOADBTriggerAnalysis.cxx:33
 AliOADBTriggerAnalysis.cxx:34
 AliOADBTriggerAnalysis.cxx:35
 AliOADBTriggerAnalysis.cxx:36
 AliOADBTriggerAnalysis.cxx:37
 AliOADBTriggerAnalysis.cxx:38
 AliOADBTriggerAnalysis.cxx:39
 AliOADBTriggerAnalysis.cxx:40
 AliOADBTriggerAnalysis.cxx:41
 AliOADBTriggerAnalysis.cxx:42
 AliOADBTriggerAnalysis.cxx:43
 AliOADBTriggerAnalysis.cxx:44
 AliOADBTriggerAnalysis.cxx:45
 AliOADBTriggerAnalysis.cxx:46
 AliOADBTriggerAnalysis.cxx:47
 AliOADBTriggerAnalysis.cxx:48
 AliOADBTriggerAnalysis.cxx:49
 AliOADBTriggerAnalysis.cxx:50
 AliOADBTriggerAnalysis.cxx:51
 AliOADBTriggerAnalysis.cxx:52
 AliOADBTriggerAnalysis.cxx:53
 AliOADBTriggerAnalysis.cxx:54
 AliOADBTriggerAnalysis.cxx:55
 AliOADBTriggerAnalysis.cxx:56
 AliOADBTriggerAnalysis.cxx:57
 AliOADBTriggerAnalysis.cxx:58
 AliOADBTriggerAnalysis.cxx:59
 AliOADBTriggerAnalysis.cxx:60
 AliOADBTriggerAnalysis.cxx:61
 AliOADBTriggerAnalysis.cxx:62
 AliOADBTriggerAnalysis.cxx:63
 AliOADBTriggerAnalysis.cxx:64
 AliOADBTriggerAnalysis.cxx:65
 AliOADBTriggerAnalysis.cxx:66
 AliOADBTriggerAnalysis.cxx:67
 AliOADBTriggerAnalysis.cxx:68
 AliOADBTriggerAnalysis.cxx:69
 AliOADBTriggerAnalysis.cxx:70
 AliOADBTriggerAnalysis.cxx:71
 AliOADBTriggerAnalysis.cxx:72
 AliOADBTriggerAnalysis.cxx:73
 AliOADBTriggerAnalysis.cxx:74
 AliOADBTriggerAnalysis.cxx:75
 AliOADBTriggerAnalysis.cxx:76
 AliOADBTriggerAnalysis.cxx:77
 AliOADBTriggerAnalysis.cxx:78
 AliOADBTriggerAnalysis.cxx:79
 AliOADBTriggerAnalysis.cxx:80
 AliOADBTriggerAnalysis.cxx:81
 AliOADBTriggerAnalysis.cxx:82
 AliOADBTriggerAnalysis.cxx:83
 AliOADBTriggerAnalysis.cxx:84
 AliOADBTriggerAnalysis.cxx:85
 AliOADBTriggerAnalysis.cxx:86
 AliOADBTriggerAnalysis.cxx:87
 AliOADBTriggerAnalysis.cxx:88
 AliOADBTriggerAnalysis.cxx:89
 AliOADBTriggerAnalysis.cxx:90
 AliOADBTriggerAnalysis.cxx:91
 AliOADBTriggerAnalysis.cxx:92
 AliOADBTriggerAnalysis.cxx:93
 AliOADBTriggerAnalysis.cxx:94
 AliOADBTriggerAnalysis.cxx:95
 AliOADBTriggerAnalysis.cxx:96
 AliOADBTriggerAnalysis.cxx:97
 AliOADBTriggerAnalysis.cxx:98
 AliOADBTriggerAnalysis.cxx:99
 AliOADBTriggerAnalysis.cxx:100
 AliOADBTriggerAnalysis.cxx:101
 AliOADBTriggerAnalysis.cxx:102
 AliOADBTriggerAnalysis.cxx:103
 AliOADBTriggerAnalysis.cxx:104
 AliOADBTriggerAnalysis.cxx:105
 AliOADBTriggerAnalysis.cxx:106
 AliOADBTriggerAnalysis.cxx:107
 AliOADBTriggerAnalysis.cxx:108
 AliOADBTriggerAnalysis.cxx:109
 AliOADBTriggerAnalysis.cxx:110
 AliOADBTriggerAnalysis.cxx:111
 AliOADBTriggerAnalysis.cxx:112
 AliOADBTriggerAnalysis.cxx:113
 AliOADBTriggerAnalysis.cxx:114
 AliOADBTriggerAnalysis.cxx:115
 AliOADBTriggerAnalysis.cxx:116
 AliOADBTriggerAnalysis.cxx:117
 AliOADBTriggerAnalysis.cxx:118