// Author: Gero Flucke <mailto:flucke@mail.desy.de>
//____________________________________
// GFAxisVariables
//   Author:      Gero Flucke
//   Date:        May 14th, 2002
//   last update: $Date: 2005/10/21 18:34:43 $  
//   by:          $Author: flucke $
//

#include <iostream>

// #include <TROOT.h>
// #include <TFile.h>
// #include <TH1.h>
// #include <TH2.h>
// #include <TF1.h>
#include <TString.h>
// #include <TAxis.h>
// #include <TObjArray.h>

#include "GFAnalysis/GFAxisVariables.h"

using namespace std;

ClassImp(GFAxisVariables)

// GFAxisVariables::GFAxisVariables(Int_t trigger)
// {
//   this->SetTrigger(trigger);
// }


// //____________________________________
// GFAxisVariables::~GFAxisVariables()
// {

// }
 const char* GFAxisVariables::GetAxisLabel(const char* variable)
{
  TString var(variable);
  // D* inclusive
  if(var == "Pt" || var == "pt") return "p_{t}(D*) [GeV]";
  if(var == "Eta" || var == "eta") return "#eta(D*)";
  if(var == "Phi" || var == "phi") return "#phi(D*)";
  if(var == "zDs") return "z(D*)";
  if(var == "WgammaP" || var == "wGammaP") return "W_{#gammap} [GeV]";

  // D*+other jet
  if(var == "xGam") return "x_{#gamma}(D*+jet)";
  //  if(var == "xGamma") return "x_{#gamma}^{obs}";
  if(var == "EtaDs") return "#eta(D*)";
  if(var == "PtDs") return "p_{t}(D*) [GeV]";
  if(var == "EtaJet") return "#eta(jet)";
  if(var == "PtJet") return "p_{t}(jet) [GeV]";
  if(var == "Deta") return "#eta(D*) - #eta(jet)";
  if(var == "Dphi" || var == "DphiNlo") return "#Delta #phi(D*, jet) [#circ]";
  if(var == "PtDsJet") return "p_{t}(D*+jet) [GeV]";
  if(var == "Pt2DsJet") return "p_{t}^{2}(D*+jet) [GeV^{2}]";
  if(var == "MDsJet") return "m(D*+jet) [GeV]";
  if(var == "CosTh") return "cos(#theta*[D*+jet])";

  // D* dijet
  if(var == "PtDJet") return "p_{t}(D*-jet)";
  if(var == "PtOthJet") return "p_{t}(oth. jet)";
  if(var == "EtaDJet") return "#eta(D*-jet)";
  if(var == "EtaOthJet") return "#eta(oth. jet)";
  if(var.Contains("Dijet")){
    if(var == "DphiDijet" || var == "DphiDijetNlo") return "#Delta #phi(jet-jet) [#circ]";
    if(var == "PtDijet") return "p_{t}(jet+jet) [GeV]";
    if(var == "Pt2Dijet") return "p_{t}^{2}(jet+jet) [GeV^{2}]";
    if(var == "DetaDijet") return "#eta(D*-jet) - #eta(oth. jet)";
    if(var == "CosThDijet") return "cos(#theta*[jet+jet])";
    if(var == "xGamDijet") return "x_{#gamma}(jet+jet)";
  }

  // helper distributions
  if(var == "Yjb" || var == "yjb") return "y_{jb}";
  if(var == "Ygen" || var == "ygen") return "y_{gen}";
  if(var == "Ytag" || var == "ytag") return "y_{e-tagger}";
  if(var == "PtK") return "p_{t}(K) [GeV]";
  if(var == "ThetaK") return "#theta(K)";
  if(var == "PhiK") return "#phi(K)";
  if(var == "LengthK") return "r_{end} - r_{start}(K) [cm]";
  if(var == "LHK") return "LH(K)";
  if(var == "PtPi") return "p_{t}(#pi) [GeV]";
  if(var == "ThetaPi") return "#theta(#pi)";
  if(var == "PhiPi") return "#phi(#pi)";
  if(var == "LengthPi") return "r_{end} - r_{start}(#pi) [cm]";
  if(var == "LHPi") return "LH(#pi)";
  if(var == "PtPis") return "p_{t}(#pi_{s}) [GeV]";
  if(var == "ThetaPis") return "#theta(#pi_{s})";
  if(var == "PhiPis") return "#phi(#pi_{s})";
  if(var == "LengthPis") return "r_{end} - r_{start}(#pi_{s}) [cm]";
  if(var == "ptSumEt") return "p_{t}(D*)/S_{Et}";
  if(var == "ptKPi") return "p_{t}(K)+p_{t}(#pi) [GeV]";
//   cerr << "Warning in <GFAxisVariables::GetAxisLabel>: "
//        << variable << " not in list!"
//        << endl;
  return variable;
}

 const char* GFAxisVariables::GetVariable(const char* axisLabel, Bool_t upper)
{
  TString label(axisLabel);
  if(label == "p_{t} [GeV]") return (upper ? "Pt" : "pt");
  if(label == "#eta") return (upper ? "Eta" : "eta");
  if(label == "#phi") return (upper ? "Phi" : "phi");
  if(label == "W_{#gammap} [GeV]") return (upper ? "WgammaP" : "wGammaP");
  if(label == "y_{jb}") return (upper ? "Yjb" : "yjb");
  if(label == "y_{gen}") return (upper ? "Ygen" : "ygen");
  if(label == "y_{e-tagger}") return (upper ? "Ytag" : "ytag");
  cerr << "Warning in <GFAxisVariables::GetVariable>: "
       << axisLabel << " not in list!"
       << endl;
  return axisLabel;
}


ROOT page - Class index - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.