//____________________________________________________________________
//
// D0 -> Kaon Pion
// 
//  
// Author: Thomas Kintscher <mailto: kintscher@physik.hu-berlin.de>
// Update: $Id: AtlD0DecayKPi.cxx,v 1.1 2011/01/16 18:23:47 schade Exp $
// Copyright: 2010 (C) Thomas Kintscher
//
#ifndef ATLAS_AtlD0DecayKPi
#include <AtlD0DecayKPi.h>
#endif
#include <iostream>

using namespace std;

#ifndef __CINT__
ClassImp(AtlD0DecayKPi);
#endif

//____________________________________________________________________

AtlD0DecayKPi::AtlD0DecayKPi() {
    //
    // Default constructor
    //

}

//____________________________________________________________________

AtlD0DecayKPi::AtlD0DecayKPi(Int_t Id, Float_t Px, Float_t Py, Float_t Pz,
				     Float_t E, AtlIDTrack *Kaon, AtlIDTrack *Pion, 
				     HepVertex *Vtx, HepVertex *PrimaryVtx,
				     HepParticle ReFitDaughter1, HepParticle ReFitDaughter2) :
    Hep2BodyDecay(Id, Px, Py, Pz, E, Kaon, Pion, Vtx, PrimaryVtx, ReFitDaughter1, ReFitDaughter2) {
    //
    // Normal constructor
    //
    fPdgCode = 3122;
}

//____________________________________________________________________


AtlD0DecayKPi::~AtlD0DecayKPi(){
    //
    // Default destructor
    //

}


//____________________________________________________________________

void AtlD0DecayKPi::Clear(Option_t *option) {
    //
    // Clear this object
    //
    HepDecayParticle::Clear(option);
}

//____________________________________________________________________

void AtlD0DecayKPi::Print(Option_t *option) {
    //
    // Print K0s decay information
    //
    // Options available:
    //    "VTX" - Print information about vtx and outgoing tracks
    //
    TString opt = option;
    opt.ToLower();

    // Print header
    if ( !opt.Contains("nohead") ) PrintHeader();

    // Print
    cout.setf(ios::showpoint | ios::fixed, ios::floatfield);
    cout.precision(3);
    cout.width(4);  cout << fId;
    cout.width(8);  cout << GetDecayLength();
    cout.width(8);  cout << GetLifeTime();
    cout.width(10); cout << Pmag();
    cout.width(12); cout << M("rec");
    cout.width(12); cout << Theta()*180/TMath::Pi();
    cout.width(11); cout << Phi()*180/TMath::Pi();
    cout.width(8);  cout << Eta();
    cout.width(5);  cout << GetVtx()->GetId();
    cout.width(5);  cout << GetKaon()->GetId();
    cout.width(5);  cout << GetPion()->GetId();
    cout << endl;

    // Print footer
    if ( !opt.Contains("nohead") ) PrintFooter();

    // Print vertex info
    if ( opt.Contains("vtx") || opt.Contains("all") ) {
	cout << endl << "D0 Decay vertex:" << endl;
	GetVtx()->Print("daughters");
    }
}

//____________________________________________________________________

void AtlD0DecayKPi::PrintHeader() {
    //
    // Print information header
    //
    cout << "----------------------------------------------------------------------------------------"
	 << endl
	 << " Id   d (cm)  t (ps)   P (GeV)  Mrec (GeV) Theta (deg)  Phi (deg)     Eta  Vtx  Pi+  Pi-"
	 << endl
	 << "----------------------------------------------------------------------------------------"
	 << endl;
}

//____________________________________________________________________

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