Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-04-19 09:10:09

0001 #ifndef PHASIC_Channels_ISR_Channels_H
0002 #define PHASIC_Channels_ISR_Channels_H
0003 
0004 #include "PDF/Main/ISR_Handler.H"
0005 #include "PHASIC++/Channels/Multi_Channel.H"
0006 #include "YFS/Main/YFS_Handler.H"
0007 
0008 namespace PHASIC {
0009   class Phase_Space_Handler;
0010   class ISR_Channels: public Multi_Channel {
0011   private:
0012     Phase_Space_Handler * p_psh;
0013     std::string           m_keyid;
0014     PDF::ISR_Handler    * p_isrhandler;
0015     YFS::YFS_Handler    * p_yfshandler;
0016     PDF::isrmode::code    m_isrmode;
0017     PDF::isrtype::code    m_isrtype[2];
0018     channelinfos          m_isrparams;
0019     std::set<double>      m_yexponents, m_spexponents;
0020 
0021     bool MakeChannels();
0022     void CheckForStructuresFromME();
0023     bool CreateChannels();
0024     void AddSimplePole(const size_t & chno,const size_t & mode);
0025     void AddResonance(const size_t & chno,const size_t & mode);
0026     void AddThreshold(const size_t & chno,const size_t & mode);
0027     void AddLeadingLog(const size_t & chno,const size_t & mode);    
0028   public:
0029     ISR_Channels(Phase_Space_Handler *const psh,const std::string &name);
0030     inline ~ISR_Channels() {}
0031     inline bool Initialize()          { return MakeChannels(); }
0032     inline channelinfos &Parameters() { return m_isrparams;  } 
0033   };// end of class ISR_Channels
0034 
0035 }//end of namespace PHASIC
0036 
0037 #endif