/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Generator/BesEvtGen/BesEvtGen-00-03-58/src/EvtGen/EvtGenBase/EvtParticleDecay.cc

Go to the documentation of this file.
00001 //--------------------------------------------------------------------------
00002 //
00003 // Environment:
00004 //      This software is part of the EvtGen package developed jointly
00005 //      for the BaBar and CLEO collaborations.  If you use all or part
00006 //      of it, please give an appropriate acknowledgement.
00007 //
00008 // Copyright Information: See EvtGen/COPYRIGHT
00009 //      Copyright (C) 1998      Caltech, UCSB
00010 //
00011 // Module: EvtDecayParm.cc
00012 //
00013 // Description: Store decay parameters for one decay.
00014 //
00015 // Modification history:
00016 //
00017 //    RYD     April 5, 1997         Module created
00018 //
00019 //------------------------------------------------------------------------
00020 //
00021 #include "EvtGenBase/EvtPatches.hh"
00022 #include <iostream>
00023 #include <fstream>
00024 #include <stdlib.h>
00025 #include <ctype.h>
00026 #include "EvtGenBase/EvtParticleDecay.hh"
00027 #include "EvtGenBase/EvtParticle.hh"
00028 #include "EvtGenBase/EvtRandom.hh"
00029 #include "EvtGenBase/EvtReport.hh"
00030 #include "EvtGenBase/EvtPDL.hh"
00031 #include "EvtGenBase/EvtId.hh"
00032 #include <string>
00033 #include <vector>
00034 using std::fstream;
00035 void EvtParticleDecay::printSummary(){
00036 
00037   if (_decay!=0) _decay->printSummary();
00038 
00039 }
00040 
00041 void EvtParticleDecay::chargeConj(EvtParticleDecay *decay){
00042 
00043   _brfrsum=decay->_brfrsum;
00044   _massmin=decay->_massmin;
00045 
00046   _decay=decay->_decay->clone();
00047 
00048   int ndaug=decay->_decay->getNDaug();
00049   int narg=decay->_decay->getNArg();
00050   double brfr=decay->_decay->getBranchingFraction();
00051   std::string name;
00052   decay->_decay->getName(name);
00053   EvtId ipar=EvtPDL::chargeConj(decay->_decay->getParentId());
00054   int i;
00055   EvtId* daug=new EvtId[ndaug];
00056   for(i=0;i<ndaug;i++){
00057     daug[i]=EvtPDL::chargeConj(decay->_decay->getDaug(i));
00058   }
00059   //Had to add 1 to make sure the vector is not empty!
00060   std::vector<std::string> args;
00061   for(i=0;i<narg;i++){
00062     args.push_back(decay->_decay->getArgStr(i));
00063   }
00064 
00065   _decay->saveDecayInfo(ipar,ndaug,daug,narg,args,name,brfr);
00066 
00067   if (decay->_decay->getPHOTOS()) _decay->setPHOTOS();
00068 
00069   delete [] daug;
00070 
00071 }
00072 
00073 
00074 
00075 
00076 
00077 
00078 

Generated on Tue Nov 29 23:12:14 2016 for BOSS_7.0.2 by  doxygen 1.4.7