00001 //-------------------------------------------------------------------------- 00002 // 00003 // Environment: 00004 // This software is part of models developed at BES collaboration 00005 // based on the EvtGen framework. If you use all or part 00006 // of it, please give an appropriate acknowledgement. 00007 // 00008 // Copyright Information: See EvtGen/BesCopyright 00009 // Copyright (A) 2006 Ping Rong-Gang @IHEP 00010 // 00011 // Module: EvtDIY.cc 00012 // 00013 // Description: Model provided by user, see the mannual 00014 // 00015 // Modification history: 00016 // 00017 // Ping R.-G. December, 2006 Module created 00018 // 00019 //------------------------------------------------------------------------ 00020 00021 #ifndef EVTDIY_HH 00022 #define EVTDIY_HH 00023 00024 #include "EvtGenBase/EvtDecayIncoherent.hh" 00025 #include "EvtGenBase/EvtVector4R.hh" 00026 00027 class EvtParticle; 00028 00029 class EvtDIY:public EvtDecayIncoherent { 00030 00031 public: 00032 00033 EvtDIY() {} 00034 virtual ~EvtDIY(); 00035 00036 void getName(std::string& name); 00037 00038 EvtDecayBase* clone(); 00039 00040 void initProbMax(); 00041 00042 void init(); 00043 00044 void decay(EvtParticle *p); 00045 00046 double AmplitudeSquare(); 00047 00048 EvtVector4R GetDaugMomLab(int i){return _p4Lab[i];} 00049 EvtVector4R GetDaugMomCM(int i){return _p4CM[i];} 00050 EvtVector4R GetDaugMomHel(int i){return _p4Hel[i];} 00051 00052 00053 int GetNdaug(){return _nd;} 00054 00055 private: 00056 00057 EvtVector4R _p4Lab[10],_p4CM[10],_p4Hel[10]; 00058 int _nd; 00059 00060 }; 00061 00062 00063 #endif 00064