cepgen is hosted by Hepforge, IPPP Durham
CepGen 1.2.5
Central exclusive processes event generator
Loading...
Searching...
No Matches
HepMC3EventInterface.h
Go to the documentation of this file.
1/*
2 * CepGen: a central exclusive processes event generator
3 * Copyright (C) 2022-2024 Laurent Forthomme
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#ifndef CepGenAddOns_HepMC3Wrapper_HepMC3EventInterface_h
20#define CepGenAddOns_HepMC3Wrapper_HepMC3EventInterface_h
21
22#include <HepMC3/GenEvent.h>
23
24#include <memory>
25#include <unordered_map>
26
27namespace cepgen {
28 class Event;
29}
30
31namespace HepMC3 {
35 class CepGenEvent : public GenEvent {
36 public:
40 operator cepgen::Event() const;
42 void dump() const;
43
45 void merge(cepgen::Event&) const;
46
47 private:
48 std::unordered_map<unsigned short, std::shared_ptr<GenParticle> > assoc_map_;
49 };
50} // namespace HepMC3
51#endif
Interfacing between CepGen and HepMC event definitions.
void merge(cepgen::Event &) const
Merge this event with another CepGen event record.
void dump() const
Write the event content in the standard stream.
Container for the information on the in- and outgoing particles' kinematics.
Definition Event.h:28
Common namespace for this Monte Carlo generator.