BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
CDPi0.cxx
Go to the documentation of this file.
1// -*- C++ -*-
2//
3// Package: <CleoDChain>
4// Module: CDPi0
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:01:08 EST 2001
13// $Id: CDPi0.cxx,v 1.1.1.1 2009/03/03 06:05:56 maqm Exp $
14//
15// Revision history
16//
17// $Log: CDPi0.cxx,v $
18// Revision 1.1.1.1 2009/03/03 06:05:56 maqm
19// first import of BesDChain
20//
21// Revision 1.7 2006/01/11 20:37:25 cdj
22// work with renaming done in DChain package
23//
24// Revision 1.6 2004/03/05 22:01:44 chengp
25// implemented Monte Carlo matching
26//
27// Revision 1.5 2003/05/15 19:58:09 cdj
28// revamped memory handling so always use a ReferenceHolder to deal with the reference counting
29//
30// Revision 1.4 2001/11/15 14:30:31 ajm36
31// include PhdPi0
32//
33// Revision 1.3 2001/11/06 15:20:46 ajm36
34// override defaultKinematicData for pi0, eta, ks, lambda
35//
36// Revision 1.2 2001/04/25 12:52:13 ajm36
37// plugged memory leak in ctor for pi0's, k shorts, etas
38//
39// Revision 1.1 2001/04/11 13:19:03 urner
40// transition to files with CD prefix. Addition of new files
41//
42// Revision 1.2 2001/03/24 03:07:56 cdj
43// fixed CDPi0 CDKs and CDEta classes so could properly assess info from CDCandidate class
44//
45// Revision 1.1 2001/03/23 23:05:29 urner
46// added pi0 eta and CDKs decay lists
47//
48
49// system include files
50
51// user include files
52#include "BesDChain/CDPi0.h"
53#include "BesDChain/CDPhoton.h"
54#include "BesDChain/util/KinematicData.h"
55#include "EvtRecEvent/EvtRecPi0.h"
56// zoujh: ...
57// #include "AnalEvent/BComposedParticle.h"
58
59//
60// constants, enums and typedefs
61//
62using namespace dchain;
64
65//
66// constructors and destructor
67//
68CDPi0::CDPi0( const EvtRecPi0* aVisible ) : m_pi0( aVisible ) {
69 ReferenceHolder<CDPhoton> tmp = new CDPhoton( aVisible->hiEnGamma() );
70 addChild( *tmp );
71 tmp = new CDPhoton( aVisible->loEnGamma() );
72 addChild( *tmp );
73}
74
75// CDPi0::CDPi0( const CDPi0& rhs )
76// {
77// // do actual copying here; if you implemented
78// // operator= correctly, you may be able to use just say
79// *this = rhs;
80// }
81
83
84//------ buildFromCDPi0 -----
85// return `true' as CDPi0 is made up from VisibleEvidence
86//
87bool CDPi0::builtFromCDPi0() const { return true; }
88
89//------ pi0 -----
90// return NavCDPi0 for this CDPi0
91//
92const EvtRecPi0* CDPi0::navPi0() const { return ( m_pi0 ); }
93
95 return new KinematicData( m_pi0->hiPfit() + m_pi0->loPfit() );
96}
97//
98// assignment operators
99//
100// const CDPi0& CDPi0::operator=( const CDPi0& rhs )
101// {
102// if( this != &rhs ) {
103// // do actual copying here, plus:
104// // "SuperClass"::operator=( rhs );
105// }
106//
107// return *this;
108// }
109
110//
111// member functions
112//
113
114//
115// const member functions
116//
void addChild(const CDCandidate &aAdditionalProduct)
Definition CDDecay.cxx:188
CDPi0(const EvtRecPi0 *aVisible)
Definition CDPi0.cxx:68
virtual DecayChain::KinematicData * defaultKinematicData() const
Definition CDPi0.cxx:94
virtual const EvtRecPi0 * navPi0() const
Definition CDPi0.cxx:92
virtual bool builtFromCDPi0() const
Definition CDPi0.cxx:87
virtual ~CDPi0()
Definition CDPi0.cxx:82
const EvtRecTrack * loEnGamma() const
const EvtRecTrack * hiEnGamma() const