|
|
|||
File indexing completed on 2026-08-06 09:23:58
0001 // -*- C++ -*- 0002 // 0003 // HerwigAPI.h is a part of Herwig - A multi-purpose Monte Carlo event generator 0004 // Copyright (C) 2002-2019 The Herwig Collaboration, 2015 Marco A. Harrendorf 0005 // 0006 // Herwig 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 SRC_HERWIG_H 0010 #define SRC_HERWIG_H 0011 0012 #include "ThePEG/Repository/EventGenerator.fh" 0013 0014 namespace Herwig { 0015 0016 class HerwigUI; 0017 0018 /** 0019 * A very high-level API for interacting with Herwig's different run modes. 0020 * 0021 * It's not very convenient (yet), since you'll have to provide your own 0022 * HerwigUI-derived object with some fairly obscure settings. 0023 * 0024 * Much more fine-grained control is available through ThePEG::Repository. 0025 */ 0026 namespace API { 0027 0028 /** 0029 * Herwig read mode. Prepares a generator .run file. If an input file is not 0030 * supplied through HerwigUI::inputfile() repository commands will be read 0031 * from HerwigUI::inStream() instead. 0032 */ 0033 void read(const HerwigUI &); 0034 0035 /** 0036 * Herwig build mode. Prepares a generator .run file and integration jobs, 0037 * if desired. If an input file is not supplied through 0038 * HerwigUI::inputfile() repository commands will be read from 0039 * HerwigUI::inStream() instead. 0040 */ 0041 void build(const HerwigUI &); 0042 0043 /** 0044 * Herwig integrate mode 0045 */ 0046 void integrate(const HerwigUI &); 0047 0048 /** 0049 * Herwig mergegrids mode 0050 */ 0051 void mergegrids(const HerwigUI &); 0052 0053 /** 0054 * Prepare Herwig run mode; prepare the event generator and return a pointer 0055 * to it; it can then be used to generate single events. 0056 */ 0057 ThePEG::EGPtr prepareRun(const HerwigUI &); 0058 0059 /** 0060 * Herwig run mode; prepare the event generator and run a given number of 0061 * events 0062 */ 0063 void run(const HerwigUI &); 0064 0065 /** 0066 * Herwig init mode. Creates a new default repository. 0067 * 0068 * Usually, the default repo created during the Herwig installation 0069 * is fine and external users will not need this mode. 0070 */ 0071 void init(const HerwigUI &); 0072 0073 } 0074 0075 } 0076 0077 #endif
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|