60 Bool_t
Init()
override;
72 std::vector<std::shared_ptr<o2::eventgen::Generator>> gens;
73 const std::vector<std::string> generatorNames = {
"extkinO2",
"evtpool",
"boxgen",
"external",
"hepmc",
"pythia8",
"pythia8pp",
"pythia8hi",
"pythia8hf",
"pythia8powheg"};
74 std::vector<std::string> mInputGens;
75 std::vector<std::string> mGens;
76 std::vector<std::string> mConfigs;
77 std::vector<std::string> mConfsPythia8;
79 std::vector<bool> mGenIsInitialized;
82 std::vector<std::unique_ptr<o2::eventgen::BoxGenConfig>> mBoxGenConfigs;
83 std::vector<std::unique_ptr<o2::eventgen::Pythia8GenConfig>> mPythia8GenConfigs;
84 std::vector<std::unique_ptr<o2::eventgen::O2KineGenConfig>> mO2KineGenConfigs;
85 std::vector<o2::eventgen::EventPoolGenConfig> mEventPoolConfigs;
86 std::vector<std::unique_ptr<o2::eventgen::ExternalGenConfig>> mExternalGenConfigs;
87 std::vector<std::unique_ptr<o2::eventgen::FileOrCmdGenConfig>> mFileOrCmdGenConfigs;
88 std::vector<std::unique_ptr<o2::eventgen::HepMCGenConfig>> mHepMCGenConfigs;
90 bool mRandomize =
false;
91 std::vector<int> mFractions;
92 std::vector<float> mRngFractions;
94 int mCurrentFraction = 0;
96 int mEventCounter = 0;
97 int mTasksStarted = 0;
100 bool mCocktailMode =
false;
101 std::vector<std::vector<int>> mGroups;
104 std::vector<ETriggerMode_t> mTriggerModes;
105 std::vector<std::vector<std::string>> mTriggerMacros;
106 std::vector<std::vector<std::string>> mTriggerFuncs;
109 std::thread mTBBTaskPoolRunner;
110 tbb::concurrent_bounded_queue<int> mInputTaskQueue;
111 std::vector<tbb::concurrent_bounded_queue<int>> mResultQueue;
112 tbb::task_arena mTaskArena;
113 std::atomic<bool> mStopFlag;
114 bool mIsInitialized =
false;
126 GenMode mGenerationMode = GenMode::kSeq;