Back to home page

EIC code displayed by LXR

 
 

    


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

0001 #ifndef PHOTONS_Tools_Weight_Base_H
0002 #define PHOTONS_Tools_Weight_Base_H
0003 
0004 #include "PHOTONS++/Main/Dipole_Type.H"
0005 
0006 namespace PHOTONS {
0007   class Weight_Base {
0008     protected:
0009       double            m_weight;
0010       double            m_maxweight;
0011       Dipole_Type::code m_dtype;
0012 
0013       virtual void CalculateWeight() = 0;
0014       virtual void CalculateMax() = 0;
0015 
0016     public:
0017       Weight_Base() : m_weight(1.), m_maxweight(1.),
0018                       m_dtype(Dipole_Type::unknown) {}
0019       virtual ~Weight_Base() {}
0020 
0021       inline double Get()       { return m_weight; }
0022       inline double GetMax()    { return m_maxweight; }
0023   };
0024 
0025 
0026 
0027   /*!
0028     \file Weight_Base.H
0029     \brief contains the class Weight_Base
0030   */
0031 
0032   /*!
0033     \class Weight_Base
0034     \brief provides basic variables and methods for all weight classes
0035   */
0036   ////////////////////////////////////////////////////////////////////////////////////////////////////
0037   // Description of member variables of Weight_Base
0038   ////////////////////////////////////////////////////////////////////////////////////////////////////
0039   /*!
0040     \var double Weight_Base::m_weight
0041     \brief weight of the event given
0042   */
0043 
0044   /*!
0045     \var double Weight_Base::m_maxweight
0046     \brief maximum weight of the configuration given
0047   */
0048 
0049   /*!
0050     \var Dipole_Type::code Weight_Base::m_dtype
0051     \brief Dipole_Type of the configuration
0052   */
0053   ////////////////////////////////////////////////////////////////////////////////////////////////////
0054   // Description of the member methods of Weight_Base
0055   ////////////////////////////////////////////////////////////////////////////////////////////////////
0056   /*!
0057     \fn Weight_Base::Weight_Base
0058     \brief sets all variables to default values
0059   */
0060 
0061   /*!
0062     \fn void Weight_Base::CalculateWeight()
0063     \brief purely virtual in Weight_Base
0064   */
0065 
0066   /*!
0067     \fn void Weight_Base::CalculateMax()
0068     \brief purely virtual in Weight_Base
0069   */
0070 
0071   /*!
0072     \fn double Weight_Base::Get()
0073     \brief returns the weight of the event given
0074   */
0075 
0076   /*!
0077     \fn double Weight_Base::GetMax()
0078     \brief returns the maximum weight of the configuration
0079   */
0080 }
0081 
0082 #endif