17int main(
int argc,
char* argv[]) {
21 auto gopts = std::make_shared<GOptions>(argc, argv, option_definitions);
24 auto runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default);
25 runManager->SetUserInitialization(
new QBBC);
28 if (source_events.size() != 11) {
29 std::cerr <<
"Expected 11 gparticlefile events, got " << source_events.size() <<
'\n';
36 for (
size_t event_index = 0; event_index < source_events.size(); event_index++) {
37 G4Event
event(
static_cast<G4int
>(event_index));
40 const auto expected_vertices =
static_cast<G4int
>(inline_particles.size() + source_events[event_index].size());
41 if (
event.GetNumberOfPrimaryVertex() != expected_vertices) {
42 std::cerr <<
"Event " << event_index <<
" expected " << expected_vertices
43 <<
" primary vertices, got " <<
event.GetNumberOfPrimaryVertex() <<
'\n';
vector< GparticlePtr > getGParticlesFromOption(const std::shared_ptr< GOptions > &gopts, std::shared_ptr< GLogger > &logger)
GParticleEvents getGParticleEventsFromSources(const std::shared_ptr< GOptions > &gopts, std::shared_ptr< GLogger > &logger, bool propagated_only=true)