/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/BesDChain/BesDChain-00-00-14/src/CDKs.cxx

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Package:     <CleoDChain>
00004 // Module:      CDKs
00005 // 
00006 // Description: <one line class summary>
00007 //
00008 // Implementation:
00009 //     <Notes on implementation>
00010 //
00011 // Author:      David Urner
00012 // Created:     Thu Mar 22 16:23:36 EST 2001
00013 // $Id: CDKs.cxx,v 1.2 2009/06/22 14:55:48 zoujh Exp $
00014 //
00015 // Revision history
00016 //
00017 // $Log: CDKs.cxx,v $
00018 // Revision 1.2  2009/06/22 14:55:48  zoujh
00019 // See ChangeLog
00020 //
00021 // Revision 1.1.1.1  2009/03/03 06:05:56  maqm
00022 // first import of BesDChain
00023 //
00024 // Revision 1.6  2006/01/11 20:37:25  cdj
00025 // work with renaming done in DChain package
00026 //
00027 // Revision 1.5  2004/03/05 22:01:44  chengp
00028 // implemented Monte Carlo matching
00029 //
00030 // Revision 1.4  2003/05/15 19:58:09  cdj
00031 // revamped memory handling so always use a ReferenceHolder to deal with the reference counting
00032 //
00033 // Revision 1.3  2001/11/06 15:20:46  ajm36
00034 // override defaultKinematicData for pi0, eta, ks, lambda
00035 //
00036 // Revision 1.2  2001/04/25 12:52:12  ajm36
00037 // plugged memory leak in ctor for pi0's, k shorts, etas
00038 //
00039 // Revision 1.1  2001/04/11 13:19:02  urner
00040 // transition to files with CD prefix. Addition of new files
00041 //
00042 // Revision 1.2  2001/03/24 03:07:56  cdj
00043 // fixed CDPi0 CDKs and CDEta classes so could properly assess info from CDCandidate class
00044 //
00045 // Revision 1.1  2001/03/23 23:05:28  urner
00046 // added pi0 eta and CDKs decay lists
00047 //
00048 
00049 // system include files
00050 
00051 // user include files
00052 #include "EvtRecEvent/EvtRecVeeVertex.h"
00053 #include "BesDChain/util/KinematicData.h"
00054 #include "BesDChain/CDChargedPion.h"
00055 #include "BesDChain/CDKs.h"
00056 //zoujh: ...
00057 //#include  "AnalEvent/BComposedParticle.h"
00058 
00059 //
00060 // constants, enums and typedefs
00061 //
00062 using namespace dchain;
00063 using DecayChain::KinematicData;
00064 
00065 //
00066 // static data member definitions
00067 //
00068 
00069 //
00070 // constructors and destructor
00071 //
00072 CDKs::CDKs(const EvtRecVeeVertex* aVisible) :
00073   m_ks(aVisible)
00074 {
00075    EvtRecVeeVertex* ks = const_cast<EvtRecVeeVertex*>(aVisible);
00076    ReferenceHolder<CDChargedPion> tmp = new CDChargedPion(ks->daughter(0));
00077    addChild(*tmp);
00078    tmp = new CDChargedPion(ks->daughter(1));
00079    addChild(*tmp);
00080 }
00081 
00082 
00083 CDKs::~CDKs()
00084 {
00085 }
00086 
00087 
00088 //------ buildFromCDKs -----
00089 // return `true' as CDKs is made up from VisibleEvidence
00090 //
00091 bool CDKs::builtFromCDKs() const
00092 {
00093    return true;
00094 }
00095 
00096 
00097 //------ CDKs -----
00098 // return NavKs for this CDKs
00099 //
00100 const EvtRecVeeVertex* CDKs::navKshort() const
00101 {
00102    return m_ks ;
00103 }
00104 
00105 KinematicData* CDKs::defaultKinematicData() const
00106 {
00107    KinematicData* data = new KinematicData();
00108 
00109    double mass = m_ks->mass();
00110    const HepVector& w_ks = m_ks->w();
00111 
00112    double e = sqrt(mass*mass + w_ks[0]*w_ks[0] + w_ks[1]*w_ks[1] + w_ks[2]*w_ks[2]);
00113 
00114    data->setP4( HepLorentzVector(w_ks[0], w_ks[1], w_ks[2], e) );
00115 
00116    return data;
00117 }
00118 

Generated on Tue Nov 29 22:58:19 2016 for BOSS_7.0.2 by  doxygen 1.4.7