|
|
|||
File indexing completed on 2026-08-06 09:38:22
0001 // -*- C++ -*- 0002 // 0003 // MultipleInteractionHandler.h is a part of ThePEG - Toolkit for HEP Event Generation 0004 // Copyright (C) 1999-2019 Leif Lonnblad 0005 // 0006 // ThePEG is licenced under version 3 of the GPL, see COPYING for details. 0007 // Please respect the MCnet academic guidelines, see GUIDELINES for details. 0008 // 0009 #ifndef ThePEG_MultipleInteractionHandler_H 0010 #define ThePEG_MultipleInteractionHandler_H 0011 // This is the declaration of the MultipleInteractionHandler class. 0012 0013 #include "StepHandler.h" 0014 0015 namespace ThePEG { 0016 0017 /** 0018 * The MultipleInteractionHandler is the base class of all 0019 * handlers implementing models for multiple interactions. It is 0020 * derived from the more general StepHandler class, 0021 * and does not introduce more functioanality as it stands. 0022 * 0023 * @see \ref MultipleInteractionHandlerInterfaces "The interfaces" 0024 * defined for MultipleInteractionHandler. 0025 * @see StepHandler 0026 * @see EventHandler 0027 * @see SubProcessHandler 0028 */ 0029 class MultipleInteractionHandler: public StepHandler { 0030 0031 public: 0032 0033 /** 0034 * Standard Init function used to initialize the interface. 0035 */ 0036 static void Init(); 0037 0038 private: 0039 0040 /** 0041 * Describe an abstract class without persistent data. 0042 */ 0043 static AbstractNoPIOClassDescription<MultipleInteractionHandler> 0044 initMultipleInteractionHandler; 0045 0046 /** 0047 * Private and non-existent assignment operator. 0048 */ 0049 MultipleInteractionHandler & operator=(const MultipleInteractionHandler &) = delete; 0050 0051 }; 0052 0053 /** @cond TRAITSPECIALIZATIONS */ 0054 0055 /** 0056 * This template specialization informs ThePEG about the 0057 * base class of MultipleInteractionHandler. 0058 */ 0059 template <> 0060 struct BaseClassTrait<MultipleInteractionHandler,1>: public ClassTraitsType { 0061 /** Typedef of the base class of MultipleInteractionHandler. */ 0062 typedef StepHandler NthBase; 0063 }; 0064 0065 /** 0066 * This template specialization informs ThePEG about the name of the 0067 * MultipleInteractionHandler class. 0068 */ 0069 template <> 0070 struct ClassTraits<MultipleInteractionHandler>: 0071 public ClassTraitsBase<MultipleInteractionHandler> { 0072 /** Return the class name. */ 0073 static string className() { return "ThePEG::MultipleInteractionHandler"; } 0074 }; 0075 0076 /** @endcond */ 0077 0078 } 0079 0080 #endif /* ThePEG_MultipleInteractionHandler_H */
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|