BOSS
8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
CDLambda.cxx
Go to the documentation of this file.
1
// -*- C++ -*-
2
//
3
// Package: <CleoDChain>
4
// Module: CDLambda
5
//
6
// Description: <one line class summary>
7
//
8
// Implementation:
9
// <Notes on implementation>
10
//
11
// Author: David Urner
12
// Created: Thu Mar 22 16:23:36 EST 2001
13
// $Id: CDLambda.cxx,v 1.2 2009/07/15 10:56:41 zoujh Exp $
14
//
15
// Revision history
16
//
17
// $Log: CDLambda.cxx,v $
18
// Revision 1.2 2009/07/15 10:56:41 zoujh
19
// *** empty log message ***
20
//
21
// Revision 1.1 2009/06/22 14:55:48 zoujh
22
// See ChangeLog
23
//
24
// Revision 1.1.1.1 2009/03/03 06:05:56 maqm
25
// first import of BesDChain
26
//
27
// Revision 1.4 2006/01/11 20:37:25 cdj
28
// work with renaming done in DChain package
29
//
30
// Revision 1.3 2003/05/15 19:58:09 cdj
31
// revamped memory handling so always use a ReferenceHolder to deal with the reference counting
32
//
33
// Revision 1.2 2001/11/06 15:20:46 ajm36
34
// override defaultKinematicData for pi0, eta, ks, lambda
35
//
36
// Revision 1.1 2001/09/11 15:08:27 ajm36
37
// add files for lambdas
38
//
39
// Revision 1.2 2001/04/25 12:52:12 ajm36
40
// plugged memory leak in ctor for pi0's, k shorts, etas
41
//
42
// Revision 1.1 2001/04/11 13:19:02 urner
43
// transition to files with CD prefix. Addition of new files
44
//
45
// Revision 1.2 2001/03/24 03:07:56 cdj
46
// fixed CDPi0 CDLambda and CDEta classes so could properly assess info from CDCandidate class
47
//
48
// Revision 1.1 2001/03/23 23:05:28 urner
49
// added pi0 eta and CDLambda decay lists
50
//
51
52
// user include files
53
#include "BesDChain/CDLambda.h"
54
#include "BesDChain/CDChargedPion.h"
55
#include "BesDChain/CDProton.h"
56
#include "BesDChain/util/KinematicData.h"
57
#include "EvtRecEvent/EvtRecVeeVertex.h"
58
59
//
60
// constants, enums and typedefs
61
//
62
using namespace
dchain
;
63
64
//
65
// static data member definitions
66
//
67
68
//
69
// constructors and destructor
70
//
71
CDLambda::CDLambda
(
const
EvtRecVeeVertex
* aVisible )
72
:
// CDDecay(*(new CDChargedPion(aVisible.piPlus()))),
73
m_lambda( aVisible ) {
74
EvtRecVeeVertex
* lambda =
const_cast<
EvtRecVeeVertex
*
>
( aVisible );
75
76
int
index[2] = { 0, 1 };
77
if
( aVisible->
vertexId
() < 0 )
78
{
79
index[0] = 1;
80
index[1] = 0;
81
}
82
83
ReferenceHolder<CDProton>
tmp =
new
CDProton
( lambda->
daughter
( index[0] ) );
84
addChild
( *tmp );
85
ReferenceHolder<CDChargedPion>
tmp2 =
new
CDChargedPion
( lambda->
daughter
( index[1] ) );
86
addChild
( *tmp2 );
87
}
88
89
// CDLambda::CDLambda( const CDLambda& rhs )
90
// {
91
// // do actual copying here; if you implemented
92
// // operator= correctly, you may be able to use just say
93
// *this = rhs;
94
// }
95
96
CDLambda::~CDLambda
() {}
97
98
//------ buildFromCDLambda -----
99
// return `true' as CDLambda is made up from VisibleEvidence
100
//
101
bool
CDLambda::builtFromCDLambda
()
const
{
return
true
; }
102
103
//------ CDLambda -----
104
// return NavLambda for this CDLambda
105
//
106
const
EvtRecVeeVertex
*
CDLambda::navLambda
()
const
{
return
m_lambda; }
107
108
KinematicData
*
CDLambda::defaultKinematicData
()
const
{
109
KinematicData
*
data
=
new
KinematicData
();
110
111
const
HepVector& w_lambda = m_lambda->w();
112
113
data
->setP4( HepLorentzVector( w_lambda[0], w_lambda[1], w_lambda[2], w_lambda[3] ) );
114
115
return
data
;
116
}
data
TTree * data
Definition
DataBase/tau_mode.c:5
CDChargedPion
CDChargedVisible< DBCandidate::kChargedPion > CDChargedPion
Definition
Event/BesDChain/include/BesDChain/CDChargedPion.h:42
CDProton
CDChargedVisible< DBCandidate::kProton > CDProton
Definition
Event/BesDChain/include/BesDChain/CDProton.h:42
CDDecay::addChild
void addChild(const CDCandidate &aAdditionalProduct)
Definition
CDDecay.cxx:188
CDLambda::~CDLambda
virtual ~CDLambda()
Definition
CDLambda.cxx:96
CDLambda::CDLambda
CDLambda(const EvtRecVeeVertex *aVisible)
Definition
CDLambda.cxx:71
CDLambda::builtFromCDLambda
virtual bool builtFromCDLambda() const
Definition
CDLambda.cxx:101
CDLambda::defaultKinematicData
virtual DecayChain::KinematicData * defaultKinematicData() const
Definition
CDLambda.cxx:108
CDLambda::navLambda
virtual const EvtRecVeeVertex * navLambda() const
Definition
CDLambda.cxx:106
EvtRecVeeVertex
Definition
Event/EvtRecEvent/include/EvtRecEvent/EvtRecVeeVertex.h:24
EvtRecVeeVertex::daughter
SmartRef< EvtRecTrack > & daughter(int i)
Definition
Event/EvtRecEvent/include/EvtRecEvent/EvtRecVeeVertex.h:87
EvtRecVeeVertex::vertexId
int vertexId() const
Definition
Event/EvtRecEvent/include/EvtRecEvent/EvtRecVeeVertex.h:35
KinematicData
Definition
Event/BesDChain/include/BesDChain/util/KinematicData.h:10
dchain::ReferenceHolder
Definition
Event/DecayChain/include/DecayChain/Element/ReferenceHolder.h:50
dchain
Definition
Event/DecayChain/include/DecayChain/Element/children.h:16
8.0.0
BOSS_Source
Event
BesDChain
src
CDLambda.cxx
Generated by
1.16.1