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: EvtGen/EvtStringParticle.hh 00012 // 00013 // Description: EvtStringParticle particle is a class to keep the 00014 // collection of partons that are generated by jetset. 00015 // This is supposedly the _only_ use of this particle. 00016 // 00017 // Modification history: 00018 // 00019 // RYD Febuary 27, 1998 Module created 00020 // 00021 //------------------------------------------------------------------------ 00022 00023 #ifndef EVTSTRINGPARTICLE_HH 00024 #define EVTSTRINGPARTICLE_HH 00025 00026 #include "EvtGenBase/EvtParticle.hh" 00027 #include "EvtGenBase/EvtId.hh" 00028 00029 class EvtStringParticle:public EvtParticle { 00030 00031 public: 00032 00033 EvtStringParticle(); 00034 virtual ~EvtStringParticle(); 00035 void init(EvtId id, const EvtVector4R& p4); 00036 void initPartons(int npartons,EvtVector4R* p4partons,EvtId* idpartons); 00037 int getNPartons(); 00038 EvtId getIdParton(int i); 00039 EvtVector4R getP4Parton(int i); 00040 EvtSpinDensity rotateToHelicityBasis() const; 00041 EvtSpinDensity rotateToHelicityBasis(double alpha, 00042 double beta, 00043 double gamma) const; 00044 00045 private: 00046 00047 int _npartons; 00048 00049 EvtVector4R* _p4partons; 00050 EvtId* _idpartons; 00051 00052 EvtStringParticle& operator=(const EvtStringParticle& d); 00053 00054 }; 00055 #endif 00056