Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-08-06 09:23:57

0001 // -*- C++ -*-
0002 #ifndef Herwig_CrossSectionAnalysis_H
0003 #define Herwig_CrossSectionAnalysis_H
0004 //
0005 // This is the declaration of the CrossSectionAnalysis class.
0006 //
0007 
0008 #include "ThePEG/Handlers/AnalysisHandler.h"
0009 
0010 namespace Herwig {
0011 
0012 using namespace ThePEG;
0013 
0014 /**
0015  * Here is the documentation of the CrossSectionAnalysis class.
0016  *
0017  * @see \ref CrossSectionAnalysisInterfaces "The interfaces"
0018  * defined for CrossSectionAnalysis.
0019  */
0020 class CrossSectionAnalysis: public AnalysisHandler {
0021 
0022 public:
0023 
0024   /**
0025    * The default constructor.
0026    */
0027   CrossSectionAnalysis();
0028 
0029 protected:
0030 
0031   /**
0032    * Finalize this object. Called in the run phase just after a
0033    * run has ended. Used eg. to write out statistics.
0034    */
0035   virtual void dofinish();
0036 
0037 public:
0038 
0039   /** @name Functions used by the persistent I/O system. */
0040   //@{
0041   /**
0042    * Function used to write out object persistently.
0043    * @param os the persistent output stream written to.
0044    */
0045   void persistentOutput(PersistentOStream & os) const;
0046 
0047   /**
0048    * Function used to read in object persistently.
0049    * @param is the persistent input stream read from.
0050    * @param version the version number of the object when written.
0051    */
0052   void persistentInput(PersistentIStream & is, int version);
0053   //@}
0054 
0055   /**
0056    * The standard Init function used to initialize the interfaces.
0057    * Called exactly once for each class by the class description system
0058    * before the main function starts or
0059    * when this class is dynamically loaded.
0060    */
0061   static void Init();
0062 
0063 protected:
0064 
0065   /** @name Clone Methods. */
0066   //@{
0067   /**
0068    * Make a simple clone of this object.
0069    * @return a pointer to the new object.
0070    */
0071   virtual IBPtr clone() const;
0072 
0073   /** Make a clone of this object, possibly modifying the cloned object
0074    * to make it sane.
0075    * @return a pointer to the new object.
0076    */
0077   virtual IBPtr fullclone() const;
0078   //@}
0079 
0080 
0081 // If needed, insert declarations of virtual function defined in the
0082 // InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
0083 
0084 
0085 private:
0086 
0087   /**
0088    * The assignment operator is private and must never be called.
0089    * In fact, it should not even be implemented.
0090    */
0091   CrossSectionAnalysis & operator=(const CrossSectionAnalysis &) = delete;
0092 
0093 };
0094 
0095 }
0096 
0097 #endif /* Herwig_CrossSectionAnalysis_H */