//____________________________________________________________________
//
// Single-top wt-Channel Analysis
// 
//  
// Author: Michelangelo Giorgi <mailto: strider@physik.hu-berlin.de>
// Update: $Id: Atl_WtChannelAnalysis.cxx,v 1.16 2013/08/22 13:41:27 stamm Exp $
// Copyright: 2009 (C) Oliver Maria Kind
//
#ifndef SINGLETOP_Atl_WtChannelAnalysis
#include <Atl_WtChannelAnalysis.h>
#endif
#include <iostream>
#include <AtlPdfReweightingTool.h>

using namespace std;

#ifndef __CINT__
ClassImp(Atl_WtChannelAnalysis);
#endif


//____________________________________________________________________

Atl_WtChannelAnalysis::Atl_WtChannelAnalysis(const char* OutputFile) :
    AtlSelector(OutputFile) {
    //
    // Default constructor
    //
    
    // Init
    fJets        = new TList;
    fLeptons     = new TList;
    fElectrons   = new TList;
    fMuons       = new TList;

    fTopPair_tool  = 0;
    fWtChannel_tool = 0;
    fCutflow_tool  = 0;
    fCutflow_tool_AC  = 0;
    
    SetCutDefaults();
}

//____________________________________________________________________

Atl_WtChannelAnalysis::~Atl_WtChannelAnalysis() {
    //
    // Default destructor
    //
    if ( fLeptons      != 0 ) delete fLeptons;
    if ( fElectrons    != 0 ) delete fElectrons;
    if ( fMuons        != 0 ) delete fMuons;
    if ( fJets         != 0 ) delete fJets;    
}

//____________________________________________________________________

void Atl_WtChannelAnalysis::SetBranchStatus() {
    //
    // Switch on/off branches in order to gain speed
    //

    // Switch on all branches by default
    fTree->SetBranchStatus("*", kFALSE);
    
}

//____________________________________________________________________

void Atl_WtChannelAnalysis::Clear(Option_t *option){
    //
    //  Clears the dynamically allocated objects
    //
    //Info("Atl_WtChannelAnalysis","Calling Clear() !");
    fLeptons->Clear();
    fElectrons->Clear();
    fMuons->Clear();
    fJets->Clear();    
}

//____________________________________________________________________

void Atl_WtChannelAnalysis::SetCutDefaults() {
    //
    // Selection cut defaults
    //
    fPrintEvent = kFALSE;// kTRUE
    fInputMode  = kD3PDSgTop;
    fLeptonMode = kMuonMode;

    // Jets suitable for reconstruction
    fJetsAuthor = AtlJet::kAntiKt4TopoEM;

    // Etmiss
    fMET_Mag_min = 25;

    // Pileup-weight cut
    fPileupWeightMax = 100.;

}

//____________________________________________________________________

void Atl_WtChannelAnalysis::BookHistograms() {
    //
    // Book histograms
    //    
    BookVertexHistograms();

    // Initialize pointers to tools needed in event loop
    fTopPair_tool  =
	(AtlTopPairFinder*)GetTool("AtlTopPairFinder","",kTRUE);
    fWtChannel_tool =
     	(AtlSgTop_WtChannelFinder*)GetTool("AtlSgTop_WtChannelFinder","",kTRUE);
    fCutflow_tool =
	(AtlCutFlowTool*)GetTool("AtlCutFlowTool","AtlCutFlowTool",kTRUE);
    fCutflow_tool_AC =
	(AtlCutFlowTool*)GetTool("AtlCutFlowTool","AtlCutFlowTool_AC",kTRUE);

    //
    // Setup PDF reweighting tool
    //
         AtlPdfReweightingTool *pdf_tool =
	     (AtlPdfReweightingTool*)GetTool("AtlPdfReweightingTool","",kTRUE);

	 // Yield histograms for W+jets reweighting:
	 // Not using W control region
	 pdf_tool->AddObservable("AtlSgTop_WtChannelFinder/EventVariables//AtlSgTop_tChh_count_lep_all_tag");
	 pdf_tool->AddObservable("/AtlSgTop_tChannelFinder/CommonEventSelection/EventVariables/h_count_lep_plus_pretag");
	 pdf_tool->AddObservable("/AtlSgTop_tChannelFinder/CommonEventSelection/EventVariables/h_count_lep_plus_tag");
	 pdf_tool->AddObservable("/AtlSgTop_tChannelFinder/CommonEventSelection/EventVariables/h_count_lep_minus_pretag");
	 pdf_tool->AddObservable("/AtlSgTop_tChannelFinder/CommonEventSelection/EventVariables/h_count_lep_minus_tag");
	 // Using W control region
	 pdf_tool->AddObservable("/AtlSgTop_tChannelFinder/CommonEventSelection/EventVariables/h_count_lep_all_wctrl_pretag");
	 pdf_tool->AddObservable("/AtlSgTop_tChannelFinder/CommonEventSelection/EventVariables/h_count_lep_all_wctrl_tag");
	 pdf_tool->AddObservable("/AtlSgTop_tChannelFinder/CommonEventSelection/EventVariables/h_count_lep_plus_wctrl_pretag");
	 pdf_tool->AddObservable("/AtlSgTop_tChannelFinder/CommonEventSelection/EventVariables/h_count_lep_plus_wctrl_tag");
	 pdf_tool->AddObservable("/AtlSgTop_tChannelFinder/CommonEventSelection/EventVariables/h_count_lep_minus_wctrl_pretag");
	 pdf_tool->AddObservable("/AtlSgTop_tChannelFinder/CommonEventSelection/EventVariables/h_count_lep_minus_wctrl_tag");

	 // BILL signal extraction histograms
	 pdf_tool->AddObservable("/AtlSgTop_WtChannelFinder/TotalYield/h_total_yield_p10WtPt");
}

//____________________________________________________________________

Bool_t Atl_WtChannelAnalysis::ProcessPreCut() {
    //
    // Event pre-selection
    //
    FillVertexHistograms();

//     // Pileup-weight cut *** (REMOVE for mc11b!!!) ***
//     if ( fEvent->GetEventHeader()->GetPileupWeight() >= fPileupWeightMax )
// 	return kFALSE;

    fCutflow_tool->Fill("No Cuts (D3PD)", GetPreTagEvtWeight());
    fCutflow_tool_AC->Fill("No Cuts (D3PD)", GetPreTagEvtWeight());
    
    // Additional cuts for QCD case:
    
    // =========
    // 1: Etmiss
    // =========
    fMET = fEvent->GetEnergySum()->GetRefFinalEM_etightpp_MissingEt();
    Float_t MET_Mag = fMET.Mod();
    
    if ( MET_Mag <= fMET_Mag_min ) return kFALSE;
    
    return kTRUE;
}

//____________________________________________________________________

Bool_t Atl_WtChannelAnalysis::ProcessCut() {
    //
    // Event selection
    //

    //
    // Make sure top pair finder histograms are filled
    //
    // (not ensured since all events with success of top pair finder
    // will per construction of ttbar veto return kFALSE for this
    // Process()-method such that top pair finder's FillHistograms
    // will NEVER be called by the selector)
    fTopPair_tool->FillHistograms();
    
//     cout << " fPassedSelection : "
// 	 << ((fPassedSelection)  ? "kTRUE" : "kFALSE" ) << endl;
    return fPassedSelection;
}

//____________________________________________________________________


void Atl_WtChannelAnalysis::FillHistograms() {
    //
    // Fill histograms
    //
    // This method will be called only for events surviving the
    // ProcessCut() routine
    //

}

//____________________________________________________________________

void Atl_WtChannelAnalysis::InitEvent() {
    //
    // Prepare event analysis
    //

    //---------
    // Leptons
    //---------

    // 
    // Find Signal Electrons
    //
    AtlElectron* el = 0;
    TClonesArray* electrons = fEvent->GetElectrons();
    
    for ( Int_t i = 0; i < fEvent->GetN_Electrons(); ++i ){
	el = (AtlElectron*)electrons->At(i);
	fElectrons->Add(el);        
    }

    fElectrons->Sort(kSortDescending);


    // 
    // Find Signal Muons
    //
    AtlMuon *muon = 0;
    TClonesArray* muons = fEvent->GetMuons();

    for ( Int_t i = 0; i < fEvent->GetN_Muons(); i++ ) {
	muon = (AtlMuon*)muons->At(i);
	fMuons->Add(muon);
    } 

    fMuons->Sort(kSortDescending);

    
    //
    // Build inclusive lepton list
    //
    if ( fLeptonMode & kElectronMode ) { 
	fLeptons->AddAll(fElectrons);
    }
    if ( fLeptonMode & kMuonMode ) { 
	fLeptons->AddAll(fMuons);
    }

    fLeptons->Sort(kSortDescending);


    // ======
    // Etmiss
    // ======
    fMET = fEvent->GetEnergySum()->GetRefFinalEM_etightpp_MissingEt();
    //    fMET = fEvent->GetEnergySum()->GetRefFinalEM_etight_MissingEt();


    //------
    // Jets
    //------
    

    //
    // Get all jets:
    //
    AtlJet *jet = 0;
    TClonesArray *jets = fEvent->GetJets(fJetsAuthor);

    for ( Int_t i = 0; i < fEvent->GetN_Jets(fJetsAuthor); ++i ) {
  	jet = (AtlJet*)jets->At(i);
	fJets->Add(jet);
    }
    
    fJets->Sort(kSortDescending);    


    
    // ============================
    // Send Objects to finder tools
    // ============================
    
//     // TopPairFinder
     fTopPair_tool->SetEtmiss(fMET);
     fTopPair_tool->SetLeptons(fLeptons);
     fTopPair_tool->SetJets(fJets);

    // Wt-channel Finder
    fWtChannel_tool->SetEtmiss(fMET);
    fWtChannel_tool->SetLeptons(fLeptons);
    fWtChannel_tool->SetJets(fJets);
    //fWtChannel_tool->SetHasLArError(fHasLArError);
    
    
}

//____________________________________________________________________

void Atl_WtChannelAnalysis::BookVertexHistograms() {
    //
    // Book histograms of primary vertex x,y,z-components
    //
    gDirectory->mkdir("vertices");
    gDirectory->cd("vertices");

    fHist_PV_X = new TH1F("h_PV_x", "X - Component of Primary Vertex",
			  200, -0.2, 0.2);
    fHist_PV_X->SetXTitle("X_{PV}");
    fHist_PV_X->SetYTitle("Number of Entries");
    
    fHist_PV_Y = new TH1F("h_PV_y", "Y - Component of Primary Vertex",
			  200, -0.01, 0.19);
    fHist_PV_Y->SetXTitle("Y_{PV}");
    fHist_PV_Y->SetYTitle("Number of Entries");

    fHist_PV_Z = new TH1F("h_PV_z", "Z - Component of Primary Vertex",
			  200, -40., 40.);
    fHist_PV_Z->SetXTitle("Z_{PV}");
    fHist_PV_Z->SetYTitle("Number of Entries");
    
         
    
    fHist_PV_XY = new TH2F("h_PV_xy", "(X,Y) - Components of Primary Vertex",
			   200, -0.02, 0.02, 200, 0.04, 0.15);
    fHist_PV_XY->SetXTitle("X_{PV}");
    fHist_PV_XY->SetYTitle("Y_{PV}");
    fHist_PV_XY->SetZTitle("Number of Entries");
    
    //
    // Book pileup histograms
    //
    gDirectory->mkdir("pileup");
    gDirectory->cd("pileup");

    fHist_AverageIntPerXing = new TH1F("h_average_int_per_xing", "Average Interactions per Bunch-Crossing",
			  40, 0., 40.);
    fHist_AverageIntPerXing->SetXTitle("#bar{N}_{ints per xing}");
    fHist_AverageIntPerXing->SetYTitle("Number of Entries");

    fHist_NPrimaryVertices = new TH1F("h_n_vxp", "Number of Primary Vertices in Event",
			  40, 0., 40.);
    fHist_NPrimaryVertices->SetXTitle("N_{prim. vertices}");
    fHist_NPrimaryVertices->SetYTitle("Number of Entries");
    
    gDirectory->cd("..");

}

//____________________________________________________________________

void Atl_WtChannelAnalysis::FillVertexHistograms() {
    //
    // Fill histograms for vertex informations
    //
    fHist_AverageIntPerXing->Fill(fEvent->GetEventHeader()->GetAverageIntPerXing(),fEvent->GetPreTagEvtWeight());
    fHist_NPrimaryVertices->Fill(fEvent->GetN_PrimaryVertices(),fEvent->GetPreTagEvtWeight());

//    HepVertex *pv = fEvent->GetPrimaryVtx();
//     if ( pv != 0 ) {
// 	fHist_PV_X->Fill(pv->X(), GetPreTagEvtWeight());
// 	fHist_PV_Y->Fill(pv->Y(), GetPreTagEvtWeight());
// 	fHist_PV_Z->Fill(pv->Z(), GetPreTagEvtWeight());
// 	fHist_PV_XY->Fill(pv->X(),pv->Y(), GetPreTagEvtWeight());
//     }
}

//____________________________________________________________________

void Atl_WtChannelAnalysis::Print() const {
    //
    // Print user analysis configuration
    //
    cout
	<< endl
	<< "========================================================"  << endl
	<< "  Atlas Single-Top Wt-Channel Analysis Selector          " << endl
	<< "========================================================"  << endl
	<< "  Chosen sample type is fInputMode =  "<< fInputMode       << endl  
	<< "--------------------------------------------------------"  << endl
	<< "  Chosen lepton mode is fLeptonMode = ";
    switch ( fLeptonMode ) {
	case kElectronMode:
	    cout << "kElectronMode" << endl;
	    break;
	case kMuonMode:
	    cout << "kMuonMode" << endl;
	    break;
	case kLeptonAll:
	    cout << "kLeptonAll" << endl;
	    break;
	default:
	    Error("Print", "Which Lepton Mode?");
    }
    cout
	<< "  Maximum pile-up weight fPileupWeightMax = " << fPileupWeightMax << endl
	<< "--------------------------------------------------------" << endl
	<< "  Specifications of physics objects:                    " << endl
	<< "--------------------------------------------------------" << endl
	<< "  fJetsAuthor                             = " << AtlJet::NameOfType(fJetsAuthor) << endl
	<< "  fMET_Mag_min                            = " << fMET_Mag_min << endl
	<< "========================================================" << endl
	<< endl;

}

//____________________________________________________________________

void Atl_WtChannelAnalysis::Terminate() {
    //
    // Calls Terminate() of Selector
    //    
    AtlSelector::Terminate();
}

//____________________________________________________________________
 Atl_WtChannelAnalysis.cxx:1
 Atl_WtChannelAnalysis.cxx:2
 Atl_WtChannelAnalysis.cxx:3
 Atl_WtChannelAnalysis.cxx:4
 Atl_WtChannelAnalysis.cxx:5
 Atl_WtChannelAnalysis.cxx:6
 Atl_WtChannelAnalysis.cxx:7
 Atl_WtChannelAnalysis.cxx:8
 Atl_WtChannelAnalysis.cxx:9
 Atl_WtChannelAnalysis.cxx:10
 Atl_WtChannelAnalysis.cxx:11
 Atl_WtChannelAnalysis.cxx:12
 Atl_WtChannelAnalysis.cxx:13
 Atl_WtChannelAnalysis.cxx:14
 Atl_WtChannelAnalysis.cxx:15
 Atl_WtChannelAnalysis.cxx:16
 Atl_WtChannelAnalysis.cxx:17
 Atl_WtChannelAnalysis.cxx:18
 Atl_WtChannelAnalysis.cxx:19
 Atl_WtChannelAnalysis.cxx:20
 Atl_WtChannelAnalysis.cxx:21
 Atl_WtChannelAnalysis.cxx:22
 Atl_WtChannelAnalysis.cxx:23
 Atl_WtChannelAnalysis.cxx:24
 Atl_WtChannelAnalysis.cxx:25
 Atl_WtChannelAnalysis.cxx:26
 Atl_WtChannelAnalysis.cxx:27
 Atl_WtChannelAnalysis.cxx:28
 Atl_WtChannelAnalysis.cxx:29
 Atl_WtChannelAnalysis.cxx:30
 Atl_WtChannelAnalysis.cxx:31
 Atl_WtChannelAnalysis.cxx:32
 Atl_WtChannelAnalysis.cxx:33
 Atl_WtChannelAnalysis.cxx:34
 Atl_WtChannelAnalysis.cxx:35
 Atl_WtChannelAnalysis.cxx:36
 Atl_WtChannelAnalysis.cxx:37
 Atl_WtChannelAnalysis.cxx:38
 Atl_WtChannelAnalysis.cxx:39
 Atl_WtChannelAnalysis.cxx:40
 Atl_WtChannelAnalysis.cxx:41
 Atl_WtChannelAnalysis.cxx:42
 Atl_WtChannelAnalysis.cxx:43
 Atl_WtChannelAnalysis.cxx:44
 Atl_WtChannelAnalysis.cxx:45
 Atl_WtChannelAnalysis.cxx:46
 Atl_WtChannelAnalysis.cxx:47
 Atl_WtChannelAnalysis.cxx:48
 Atl_WtChannelAnalysis.cxx:49
 Atl_WtChannelAnalysis.cxx:50
 Atl_WtChannelAnalysis.cxx:51
 Atl_WtChannelAnalysis.cxx:52
 Atl_WtChannelAnalysis.cxx:53
 Atl_WtChannelAnalysis.cxx:54
 Atl_WtChannelAnalysis.cxx:55
 Atl_WtChannelAnalysis.cxx:56
 Atl_WtChannelAnalysis.cxx:57
 Atl_WtChannelAnalysis.cxx:58
 Atl_WtChannelAnalysis.cxx:59
 Atl_WtChannelAnalysis.cxx:60
 Atl_WtChannelAnalysis.cxx:61
 Atl_WtChannelAnalysis.cxx:62
 Atl_WtChannelAnalysis.cxx:63
 Atl_WtChannelAnalysis.cxx:64
 Atl_WtChannelAnalysis.cxx:65
 Atl_WtChannelAnalysis.cxx:66
 Atl_WtChannelAnalysis.cxx:67
 Atl_WtChannelAnalysis.cxx:68
 Atl_WtChannelAnalysis.cxx:69
 Atl_WtChannelAnalysis.cxx:70
 Atl_WtChannelAnalysis.cxx:71
 Atl_WtChannelAnalysis.cxx:72
 Atl_WtChannelAnalysis.cxx:73
 Atl_WtChannelAnalysis.cxx:74
 Atl_WtChannelAnalysis.cxx:75
 Atl_WtChannelAnalysis.cxx:76
 Atl_WtChannelAnalysis.cxx:77
 Atl_WtChannelAnalysis.cxx:78
 Atl_WtChannelAnalysis.cxx:79
 Atl_WtChannelAnalysis.cxx:80
 Atl_WtChannelAnalysis.cxx:81
 Atl_WtChannelAnalysis.cxx:82
 Atl_WtChannelAnalysis.cxx:83
 Atl_WtChannelAnalysis.cxx:84
 Atl_WtChannelAnalysis.cxx:85
 Atl_WtChannelAnalysis.cxx:86
 Atl_WtChannelAnalysis.cxx:87
 Atl_WtChannelAnalysis.cxx:88
 Atl_WtChannelAnalysis.cxx:89
 Atl_WtChannelAnalysis.cxx:90
 Atl_WtChannelAnalysis.cxx:91
 Atl_WtChannelAnalysis.cxx:92
 Atl_WtChannelAnalysis.cxx:93
 Atl_WtChannelAnalysis.cxx:94
 Atl_WtChannelAnalysis.cxx:95
 Atl_WtChannelAnalysis.cxx:96
 Atl_WtChannelAnalysis.cxx:97
 Atl_WtChannelAnalysis.cxx:98
 Atl_WtChannelAnalysis.cxx:99
 Atl_WtChannelAnalysis.cxx:100
 Atl_WtChannelAnalysis.cxx:101
 Atl_WtChannelAnalysis.cxx:102
 Atl_WtChannelAnalysis.cxx:103
 Atl_WtChannelAnalysis.cxx:104
 Atl_WtChannelAnalysis.cxx:105
 Atl_WtChannelAnalysis.cxx:106
 Atl_WtChannelAnalysis.cxx:107
 Atl_WtChannelAnalysis.cxx:108
 Atl_WtChannelAnalysis.cxx:109
 Atl_WtChannelAnalysis.cxx:110
 Atl_WtChannelAnalysis.cxx:111
 Atl_WtChannelAnalysis.cxx:112
 Atl_WtChannelAnalysis.cxx:113
 Atl_WtChannelAnalysis.cxx:114
 Atl_WtChannelAnalysis.cxx:115
 Atl_WtChannelAnalysis.cxx:116
 Atl_WtChannelAnalysis.cxx:117
 Atl_WtChannelAnalysis.cxx:118
 Atl_WtChannelAnalysis.cxx:119
 Atl_WtChannelAnalysis.cxx:120
 Atl_WtChannelAnalysis.cxx:121
 Atl_WtChannelAnalysis.cxx:122
 Atl_WtChannelAnalysis.cxx:123
 Atl_WtChannelAnalysis.cxx:124
 Atl_WtChannelAnalysis.cxx:125
 Atl_WtChannelAnalysis.cxx:126
 Atl_WtChannelAnalysis.cxx:127
 Atl_WtChannelAnalysis.cxx:128
 Atl_WtChannelAnalysis.cxx:129
 Atl_WtChannelAnalysis.cxx:130
 Atl_WtChannelAnalysis.cxx:131
 Atl_WtChannelAnalysis.cxx:132
 Atl_WtChannelAnalysis.cxx:133
 Atl_WtChannelAnalysis.cxx:134
 Atl_WtChannelAnalysis.cxx:135
 Atl_WtChannelAnalysis.cxx:136
 Atl_WtChannelAnalysis.cxx:137
 Atl_WtChannelAnalysis.cxx:138
 Atl_WtChannelAnalysis.cxx:139
 Atl_WtChannelAnalysis.cxx:140
 Atl_WtChannelAnalysis.cxx:141
 Atl_WtChannelAnalysis.cxx:142
 Atl_WtChannelAnalysis.cxx:143
 Atl_WtChannelAnalysis.cxx:144
 Atl_WtChannelAnalysis.cxx:145
 Atl_WtChannelAnalysis.cxx:146
 Atl_WtChannelAnalysis.cxx:147
 Atl_WtChannelAnalysis.cxx:148
 Atl_WtChannelAnalysis.cxx:149
 Atl_WtChannelAnalysis.cxx:150
 Atl_WtChannelAnalysis.cxx:151
 Atl_WtChannelAnalysis.cxx:152
 Atl_WtChannelAnalysis.cxx:153
 Atl_WtChannelAnalysis.cxx:154
 Atl_WtChannelAnalysis.cxx:155
 Atl_WtChannelAnalysis.cxx:156
 Atl_WtChannelAnalysis.cxx:157
 Atl_WtChannelAnalysis.cxx:158
 Atl_WtChannelAnalysis.cxx:159
 Atl_WtChannelAnalysis.cxx:160
 Atl_WtChannelAnalysis.cxx:161
 Atl_WtChannelAnalysis.cxx:162
 Atl_WtChannelAnalysis.cxx:163
 Atl_WtChannelAnalysis.cxx:164
 Atl_WtChannelAnalysis.cxx:165
 Atl_WtChannelAnalysis.cxx:166
 Atl_WtChannelAnalysis.cxx:167
 Atl_WtChannelAnalysis.cxx:168
 Atl_WtChannelAnalysis.cxx:169
 Atl_WtChannelAnalysis.cxx:170
 Atl_WtChannelAnalysis.cxx:171
 Atl_WtChannelAnalysis.cxx:172
 Atl_WtChannelAnalysis.cxx:173
 Atl_WtChannelAnalysis.cxx:174
 Atl_WtChannelAnalysis.cxx:175
 Atl_WtChannelAnalysis.cxx:176
 Atl_WtChannelAnalysis.cxx:177
 Atl_WtChannelAnalysis.cxx:178
 Atl_WtChannelAnalysis.cxx:179
 Atl_WtChannelAnalysis.cxx:180
 Atl_WtChannelAnalysis.cxx:181
 Atl_WtChannelAnalysis.cxx:182
 Atl_WtChannelAnalysis.cxx:183
 Atl_WtChannelAnalysis.cxx:184
 Atl_WtChannelAnalysis.cxx:185
 Atl_WtChannelAnalysis.cxx:186
 Atl_WtChannelAnalysis.cxx:187
 Atl_WtChannelAnalysis.cxx:188
 Atl_WtChannelAnalysis.cxx:189
 Atl_WtChannelAnalysis.cxx:190
 Atl_WtChannelAnalysis.cxx:191
 Atl_WtChannelAnalysis.cxx:192
 Atl_WtChannelAnalysis.cxx:193
 Atl_WtChannelAnalysis.cxx:194
 Atl_WtChannelAnalysis.cxx:195
 Atl_WtChannelAnalysis.cxx:196
 Atl_WtChannelAnalysis.cxx:197
 Atl_WtChannelAnalysis.cxx:198
 Atl_WtChannelAnalysis.cxx:199
 Atl_WtChannelAnalysis.cxx:200
 Atl_WtChannelAnalysis.cxx:201
 Atl_WtChannelAnalysis.cxx:202
 Atl_WtChannelAnalysis.cxx:203
 Atl_WtChannelAnalysis.cxx:204
 Atl_WtChannelAnalysis.cxx:205
 Atl_WtChannelAnalysis.cxx:206
 Atl_WtChannelAnalysis.cxx:207
 Atl_WtChannelAnalysis.cxx:208
 Atl_WtChannelAnalysis.cxx:209
 Atl_WtChannelAnalysis.cxx:210
 Atl_WtChannelAnalysis.cxx:211
 Atl_WtChannelAnalysis.cxx:212
 Atl_WtChannelAnalysis.cxx:213
 Atl_WtChannelAnalysis.cxx:214
 Atl_WtChannelAnalysis.cxx:215
 Atl_WtChannelAnalysis.cxx:216
 Atl_WtChannelAnalysis.cxx:217
 Atl_WtChannelAnalysis.cxx:218
 Atl_WtChannelAnalysis.cxx:219
 Atl_WtChannelAnalysis.cxx:220
 Atl_WtChannelAnalysis.cxx:221
 Atl_WtChannelAnalysis.cxx:222
 Atl_WtChannelAnalysis.cxx:223
 Atl_WtChannelAnalysis.cxx:224
 Atl_WtChannelAnalysis.cxx:225
 Atl_WtChannelAnalysis.cxx:226
 Atl_WtChannelAnalysis.cxx:227
 Atl_WtChannelAnalysis.cxx:228
 Atl_WtChannelAnalysis.cxx:229
 Atl_WtChannelAnalysis.cxx:230
 Atl_WtChannelAnalysis.cxx:231
 Atl_WtChannelAnalysis.cxx:232
 Atl_WtChannelAnalysis.cxx:233
 Atl_WtChannelAnalysis.cxx:234
 Atl_WtChannelAnalysis.cxx:235
 Atl_WtChannelAnalysis.cxx:236
 Atl_WtChannelAnalysis.cxx:237
 Atl_WtChannelAnalysis.cxx:238
 Atl_WtChannelAnalysis.cxx:239
 Atl_WtChannelAnalysis.cxx:240
 Atl_WtChannelAnalysis.cxx:241
 Atl_WtChannelAnalysis.cxx:242
 Atl_WtChannelAnalysis.cxx:243
 Atl_WtChannelAnalysis.cxx:244
 Atl_WtChannelAnalysis.cxx:245
 Atl_WtChannelAnalysis.cxx:246
 Atl_WtChannelAnalysis.cxx:247
 Atl_WtChannelAnalysis.cxx:248
 Atl_WtChannelAnalysis.cxx:249
 Atl_WtChannelAnalysis.cxx:250
 Atl_WtChannelAnalysis.cxx:251
 Atl_WtChannelAnalysis.cxx:252
 Atl_WtChannelAnalysis.cxx:253
 Atl_WtChannelAnalysis.cxx:254
 Atl_WtChannelAnalysis.cxx:255
 Atl_WtChannelAnalysis.cxx:256
 Atl_WtChannelAnalysis.cxx:257
 Atl_WtChannelAnalysis.cxx:258
 Atl_WtChannelAnalysis.cxx:259
 Atl_WtChannelAnalysis.cxx:260
 Atl_WtChannelAnalysis.cxx:261
 Atl_WtChannelAnalysis.cxx:262
 Atl_WtChannelAnalysis.cxx:263
 Atl_WtChannelAnalysis.cxx:264
 Atl_WtChannelAnalysis.cxx:265
 Atl_WtChannelAnalysis.cxx:266
 Atl_WtChannelAnalysis.cxx:267
 Atl_WtChannelAnalysis.cxx:268
 Atl_WtChannelAnalysis.cxx:269
 Atl_WtChannelAnalysis.cxx:270
 Atl_WtChannelAnalysis.cxx:271
 Atl_WtChannelAnalysis.cxx:272
 Atl_WtChannelAnalysis.cxx:273
 Atl_WtChannelAnalysis.cxx:274
 Atl_WtChannelAnalysis.cxx:275
 Atl_WtChannelAnalysis.cxx:276
 Atl_WtChannelAnalysis.cxx:277
 Atl_WtChannelAnalysis.cxx:278
 Atl_WtChannelAnalysis.cxx:279
 Atl_WtChannelAnalysis.cxx:280
 Atl_WtChannelAnalysis.cxx:281
 Atl_WtChannelAnalysis.cxx:282
 Atl_WtChannelAnalysis.cxx:283
 Atl_WtChannelAnalysis.cxx:284
 Atl_WtChannelAnalysis.cxx:285
 Atl_WtChannelAnalysis.cxx:286
 Atl_WtChannelAnalysis.cxx:287
 Atl_WtChannelAnalysis.cxx:288
 Atl_WtChannelAnalysis.cxx:289
 Atl_WtChannelAnalysis.cxx:290
 Atl_WtChannelAnalysis.cxx:291
 Atl_WtChannelAnalysis.cxx:292
 Atl_WtChannelAnalysis.cxx:293
 Atl_WtChannelAnalysis.cxx:294
 Atl_WtChannelAnalysis.cxx:295
 Atl_WtChannelAnalysis.cxx:296
 Atl_WtChannelAnalysis.cxx:297
 Atl_WtChannelAnalysis.cxx:298
 Atl_WtChannelAnalysis.cxx:299
 Atl_WtChannelAnalysis.cxx:300
 Atl_WtChannelAnalysis.cxx:301
 Atl_WtChannelAnalysis.cxx:302
 Atl_WtChannelAnalysis.cxx:303
 Atl_WtChannelAnalysis.cxx:304
 Atl_WtChannelAnalysis.cxx:305
 Atl_WtChannelAnalysis.cxx:306
 Atl_WtChannelAnalysis.cxx:307
 Atl_WtChannelAnalysis.cxx:308
 Atl_WtChannelAnalysis.cxx:309
 Atl_WtChannelAnalysis.cxx:310
 Atl_WtChannelAnalysis.cxx:311
 Atl_WtChannelAnalysis.cxx:312
 Atl_WtChannelAnalysis.cxx:313
 Atl_WtChannelAnalysis.cxx:314
 Atl_WtChannelAnalysis.cxx:315
 Atl_WtChannelAnalysis.cxx:316
 Atl_WtChannelAnalysis.cxx:317
 Atl_WtChannelAnalysis.cxx:318
 Atl_WtChannelAnalysis.cxx:319
 Atl_WtChannelAnalysis.cxx:320
 Atl_WtChannelAnalysis.cxx:321
 Atl_WtChannelAnalysis.cxx:322
 Atl_WtChannelAnalysis.cxx:323
 Atl_WtChannelAnalysis.cxx:324
 Atl_WtChannelAnalysis.cxx:325
 Atl_WtChannelAnalysis.cxx:326
 Atl_WtChannelAnalysis.cxx:327
 Atl_WtChannelAnalysis.cxx:328
 Atl_WtChannelAnalysis.cxx:329
 Atl_WtChannelAnalysis.cxx:330
 Atl_WtChannelAnalysis.cxx:331
 Atl_WtChannelAnalysis.cxx:332
 Atl_WtChannelAnalysis.cxx:333
 Atl_WtChannelAnalysis.cxx:334
 Atl_WtChannelAnalysis.cxx:335
 Atl_WtChannelAnalysis.cxx:336
 Atl_WtChannelAnalysis.cxx:337
 Atl_WtChannelAnalysis.cxx:338
 Atl_WtChannelAnalysis.cxx:339
 Atl_WtChannelAnalysis.cxx:340
 Atl_WtChannelAnalysis.cxx:341
 Atl_WtChannelAnalysis.cxx:342
 Atl_WtChannelAnalysis.cxx:343
 Atl_WtChannelAnalysis.cxx:344
 Atl_WtChannelAnalysis.cxx:345
 Atl_WtChannelAnalysis.cxx:346
 Atl_WtChannelAnalysis.cxx:347
 Atl_WtChannelAnalysis.cxx:348
 Atl_WtChannelAnalysis.cxx:349
 Atl_WtChannelAnalysis.cxx:350
 Atl_WtChannelAnalysis.cxx:351
 Atl_WtChannelAnalysis.cxx:352
 Atl_WtChannelAnalysis.cxx:353
 Atl_WtChannelAnalysis.cxx:354
 Atl_WtChannelAnalysis.cxx:355
 Atl_WtChannelAnalysis.cxx:356
 Atl_WtChannelAnalysis.cxx:357
 Atl_WtChannelAnalysis.cxx:358
 Atl_WtChannelAnalysis.cxx:359
 Atl_WtChannelAnalysis.cxx:360
 Atl_WtChannelAnalysis.cxx:361
 Atl_WtChannelAnalysis.cxx:362
 Atl_WtChannelAnalysis.cxx:363
 Atl_WtChannelAnalysis.cxx:364
 Atl_WtChannelAnalysis.cxx:365
 Atl_WtChannelAnalysis.cxx:366
 Atl_WtChannelAnalysis.cxx:367
 Atl_WtChannelAnalysis.cxx:368
 Atl_WtChannelAnalysis.cxx:369
 Atl_WtChannelAnalysis.cxx:370
 Atl_WtChannelAnalysis.cxx:371
 Atl_WtChannelAnalysis.cxx:372
 Atl_WtChannelAnalysis.cxx:373
 Atl_WtChannelAnalysis.cxx:374
 Atl_WtChannelAnalysis.cxx:375
 Atl_WtChannelAnalysis.cxx:376
 Atl_WtChannelAnalysis.cxx:377
 Atl_WtChannelAnalysis.cxx:378
 Atl_WtChannelAnalysis.cxx:379
 Atl_WtChannelAnalysis.cxx:380
 Atl_WtChannelAnalysis.cxx:381
 Atl_WtChannelAnalysis.cxx:382
 Atl_WtChannelAnalysis.cxx:383
 Atl_WtChannelAnalysis.cxx:384
 Atl_WtChannelAnalysis.cxx:385
 Atl_WtChannelAnalysis.cxx:386
 Atl_WtChannelAnalysis.cxx:387
 Atl_WtChannelAnalysis.cxx:388
 Atl_WtChannelAnalysis.cxx:389
 Atl_WtChannelAnalysis.cxx:390
 Atl_WtChannelAnalysis.cxx:391
 Atl_WtChannelAnalysis.cxx:392
 Atl_WtChannelAnalysis.cxx:393
 Atl_WtChannelAnalysis.cxx:394
 Atl_WtChannelAnalysis.cxx:395
 Atl_WtChannelAnalysis.cxx:396
 Atl_WtChannelAnalysis.cxx:397
 Atl_WtChannelAnalysis.cxx:398
 Atl_WtChannelAnalysis.cxx:399
 Atl_WtChannelAnalysis.cxx:400
 Atl_WtChannelAnalysis.cxx:401
 Atl_WtChannelAnalysis.cxx:402
 Atl_WtChannelAnalysis.cxx:403
 Atl_WtChannelAnalysis.cxx:404
 Atl_WtChannelAnalysis.cxx:405
 Atl_WtChannelAnalysis.cxx:406
 Atl_WtChannelAnalysis.cxx:407
 Atl_WtChannelAnalysis.cxx:408
 Atl_WtChannelAnalysis.cxx:409
 Atl_WtChannelAnalysis.cxx:410
 Atl_WtChannelAnalysis.cxx:411
 Atl_WtChannelAnalysis.cxx:412
 Atl_WtChannelAnalysis.cxx:413
 Atl_WtChannelAnalysis.cxx:414
 Atl_WtChannelAnalysis.cxx:415
 Atl_WtChannelAnalysis.cxx:416
 Atl_WtChannelAnalysis.cxx:417
 Atl_WtChannelAnalysis.cxx:418
 Atl_WtChannelAnalysis.cxx:419
 Atl_WtChannelAnalysis.cxx:420
 Atl_WtChannelAnalysis.cxx:421
 Atl_WtChannelAnalysis.cxx:422
 Atl_WtChannelAnalysis.cxx:423