EpIC 1.1.0
Monte Carlo generator for exclusive processes
Loading...
Searching...
No Matches
ModuleObjectFactory.h
1/*
2 * TestModuleObjectFactory.h
3 *
4 * Created on: Feb 7, 2021
5 * Author: Pawel Sznajder (NCBJ)
6 */
7
8#ifndef TESTMODULEOBJECTFACTORY_H_
9#define TESTMODULEOBJECTFACTORY_H_
10
11#include <memory>
12#include <string>
13
14namespace EPIC {
15class DVCSKinematicModule;
16class DVMPKinematicModule;
17class TCSKinematicModule;
18class GAM2KinematicModule;
19class DDVCSKinematicModule;
20class EventGeneratorModule;
21class DVCSRCModule;
22class DVMPRCModule;
23class TCSRCModule;
24class GAM2RCModule;
25class DDVCSRCModule;
26class RandomNumberModule;
27class EpicModuleObject;
28class WriterModule;
29} /* namespace EPIC */
30
31namespace EPIC {
32
42
43public:
48
52 std::shared_ptr<EventGeneratorModule>
53 newEventGeneratorModule(unsigned int classId);
54
58 std::shared_ptr<EventGeneratorModule>
59 newEventGeneratorModule(const std::string &className);
60
64 std::shared_ptr<DVCSKinematicModule>
65 newDVCSKinematicModule(unsigned int classId);
66
70 std::shared_ptr<DVCSKinematicModule>
71 newDVCSKinematicModule(const std::string &className);
72
76 std::shared_ptr<DVMPKinematicModule>
77 newDVMPKinematicModule(unsigned int classId);
78
82 std::shared_ptr<DVMPKinematicModule>
83 newDVMPKinematicModule(const std::string &className);
84
88 std::shared_ptr<TCSKinematicModule>
89 newTCSKinematicModule(unsigned int classId);
90
94 std::shared_ptr<TCSKinematicModule>
95 newTCSKinematicModule(const std::string &className);
96
100 std::shared_ptr<GAM2KinematicModule>
101 newGAM2KinematicModule(unsigned int classId);
102
106 std::shared_ptr<GAM2KinematicModule>
107 newGAM2KinematicModule(const std::string &className);
108
112 std::shared_ptr<DDVCSKinematicModule>
113 newDDVCSKinematicModule(unsigned int classId);
114
118 std::shared_ptr<DDVCSKinematicModule>
119 newDDVCSKinematicModule(const std::string &className);
120
124 std::shared_ptr<DVCSRCModule>
125 newDVCSRCModule(unsigned int classId);
126
130 std::shared_ptr<DVCSRCModule>
131 newDVCSRCModule(const std::string &className);
132
136 std::shared_ptr<DVMPRCModule>
137 newDVMPRCModule(unsigned int classId);
138
142 std::shared_ptr<DVMPRCModule>
143 newDVMPRCModule(const std::string &className);
144
148 std::shared_ptr<TCSRCModule>
149 newTCSRCModule(unsigned int classId);
150
154 std::shared_ptr<TCSRCModule>
155 newTCSRCModule(const std::string &className);
156
160 std::shared_ptr<GAM2RCModule>
161 newGAM2RCModule(unsigned int classId);
162
166 std::shared_ptr<GAM2RCModule>
167 newGAM2RCModule(const std::string &className);
168
172 std::shared_ptr<DDVCSRCModule>
173 newDDVCSRCModule(unsigned int classId);
174
178 std::shared_ptr<DDVCSRCModule>
179 newDDVCSRCModule(const std::string &className);
180
184 std::shared_ptr<WriterModule> newWriterModule(unsigned int classId);
185
189 std::shared_ptr<WriterModule> newWriterModule(const std::string &className);
190
194 std::shared_ptr<RandomNumberModule>
195 newRandomNumberModule(unsigned int classId);
196
200 std::shared_ptr<RandomNumberModule>
201 newRandomNumberModule(const std::string &className);
202
206 std::shared_ptr<EpicModuleObject> newTestModuleObject(unsigned int classId);
207
211 std::shared_ptr<EpicModuleObject>
212 newTestModuleObject(const std::string &className);
213
214private:
215 friend class Epic;
216
221};
222
223} /* namespace EPIC */
224
225#endif /* TESTMODULEOBJECTFACTORY_H_ */
The main class of generator.
Definition: Epic.h:31
Definition: ModuleObjectFactory.h:41
std::shared_ptr< DDVCSKinematicModule > newDDVCSKinematicModule(unsigned int classId)
std::shared_ptr< TCSKinematicModule > newTCSKinematicModule(const std::string &className)
std::shared_ptr< TCSKinematicModule > newTCSKinematicModule(unsigned int classId)
std::shared_ptr< DVMPKinematicModule > newDVMPKinematicModule(const std::string &className)
std::shared_ptr< DVMPRCModule > newDVMPRCModule(unsigned int classId)
std::shared_ptr< GAM2RCModule > newGAM2RCModule(unsigned int classId)
std::shared_ptr< RandomNumberModule > newRandomNumberModule(unsigned int classId)
std::shared_ptr< DDVCSRCModule > newDDVCSRCModule(unsigned int classId)
std::shared_ptr< DDVCSKinematicModule > newDDVCSKinematicModule(const std::string &className)
std::shared_ptr< DVCSKinematicModule > newDVCSKinematicModule(const std::string &className)
std::shared_ptr< WriterModule > newWriterModule(unsigned int classId)
std::shared_ptr< DVCSKinematicModule > newDVCSKinematicModule(unsigned int classId)
std::shared_ptr< GAM2KinematicModule > newGAM2KinematicModule(unsigned int classId)
std::shared_ptr< DDVCSRCModule > newDDVCSRCModule(const std::string &className)
std::shared_ptr< GAM2KinematicModule > newGAM2KinematicModule(const std::string &className)
std::shared_ptr< EpicModuleObject > newTestModuleObject(const std::string &className)
std::shared_ptr< EventGeneratorModule > newEventGeneratorModule(unsigned int classId)
std::shared_ptr< DVMPKinematicModule > newDVMPKinematicModule(unsigned int classId)
std::shared_ptr< WriterModule > newWriterModule(const std::string &className)
std::shared_ptr< RandomNumberModule > newRandomNumberModule(const std::string &className)
std::shared_ptr< DVCSRCModule > newDVCSRCModule(unsigned int classId)
std::shared_ptr< EventGeneratorModule > newEventGeneratorModule(const std::string &className)
std::shared_ptr< DVMPRCModule > newDVMPRCModule(const std::string &className)
std::shared_ptr< TCSRCModule > newTCSRCModule(const std::string &className)
std::shared_ptr< GAM2RCModule > newGAM2RCModule(const std::string &className)
std::shared_ptr< DVCSRCModule > newDVCSRCModule(const std::string &className)
std::shared_ptr< TCSRCModule > newTCSRCModule(unsigned int classId)
std::shared_ptr< EpicModuleObject > newTestModuleObject(unsigned int classId)