CMS 3D CMS Logo

HerwigUIProvider.h
Go to the documentation of this file.
1 
4 #ifndef SRC_HERWIG_UIProvider_H
5 #define SRC_HERWIG_UIProvider_H
6 
7 #include <Herwig/API/HerwigUI.h>
8 #include <iostream>
9 
11 
12 namespace Herwig {
13 
18  class HerwigUIProvider : public HerwigUI {
19  public:
22 
24  ~HerwigUIProvider() override;
25 
27  RunMode::Mode runMode() const override { return runMode_; }
28  void setSeed(long seed) { seed_ = seed; }
29 
31  bool resume() const override { return resume_; }
32 
34  bool tics() const override { return tics_; }
35 
37  std::string tag() const override { return tag_; }
38 
40  std::string inputfile() const override { return inputfile_; }
41 
43  std::string repository() const override { return repository_; }
44 
46  std::string setupfile() const override { return setupfile_; }
47 
48  std::string integrationList() const override { return integrationList_; }
49 
50  const std::vector<std::string>& prependReadDirectories() const override { return prependReadDirectories_; }
51 
52  const std::vector<std::string>& appendReadDirectories() const override { return appendReadDirectories_; }
53 
54  long N() const override { return nEvents_; }
55  int seed() const override { return seed_; }
56  int jobs() const override { return jobs_; }
57  unsigned int jobSize() const override { return jobsize_; }
58  unsigned int maxJobs() const override { return maxjobs_; }
59 
60  void quitWithHelp() const override;
61 
62  void quit() const override;
63 
65  std::ostream& outStream() const override { return std::cout; }
66 
68  std::ostream& errStream() const override { return std::cerr; }
69 
71  std::istream& inStream() const override { return std::cin; }
72 
80 
81  private:
83 
84  bool resume_;
85  bool tics_;
87 
91 
93 
94  std::vector<std::string> prependReadDirectories_;
95  std::vector<std::string> appendReadDirectories_;
96 
97  long nEvents_;
98  int seed_;
99  int jobs_;
100  unsigned int jobsize_;
101  unsigned int maxjobs_;
102  };
103 
104 } // namespace Herwig
105 
106 #endif
std::istream & inStream() const override
Return the standard in stream to be used.
std::ostream & outStream() const override
Return the standard out stream to be used.
std::vector< std::string > appendReadDirectories_
std::string inputfile() const override
Name of the file to be read.
std::ostream & errStream() const override
Return the standard err stream to be used.
void quitWithHelp() const override
unsigned int jobSize() const override
bool tics() const override
Require verbose progress markers.
std::string repository() const override
Repository name to operate on.
HerwigUIProvider(const edm::ParameterSet &pset, std::string inputFileName, RunMode::Mode)
Constructor from the arguments provided by CMSSW.
const std::vector< std::string > & prependReadDirectories() const override
std::string setupfile() const override
Name of the setup file to be read, to modify the repository.
void setRunMode(RunMode::Mode runMode, const edm::ParameterSet &pset, std::string inputFile="")
void quit() const override
RunMode::Mode runMode() const override
Requested Herwig run mode.
int seed() const override
~HerwigUIProvider() override
Destructor to leave a clean ThePEG::Repository behind.
long N() const override
std::string integrationList() const override
std::vector< std::string > prependReadDirectories_
bool resume() const override
Try to resume execution from an earlier interrupted run.
int jobs() const override
const std::vector< std::string > & appendReadDirectories() const override
unsigned int maxJobs() const override
std::string tag() const override
A user-defined tag to append to the run name.