ATLAS Offline Software
Loading...
Searching...
No Matches
IxAODtoHepMCTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5/*
6 * dual-use tool for converting xAOD truth events back to HepMC
7 * Principal Authors (responsible for the core conversion algorithm): Josh McFayden and James Catmore
8 * Tool Author: Jim Lacey (Carleton University)
9 * ... updated tool interface to be dual-use
10 * ... added missing PDF information and requirements to allow running on full sim (remove Geant4 secondaries)
11 * <james.lacey@cern.ch,jlacey@physics.carleton.ca>
12 * <dag.gillberg@cern.ch>
13 */
14
15#ifndef GENINTERFACES_IXAODTOHEPMCTOOL_H
16#define GENINTERFACES_IXAODTOHEPMCTOOL_H 1
17
18#include "AsgTools/IAsgTool.h"
19
20
21// STL includes
22#include <string>
23#include <map>
24
27
28#include "AtlasHepMC/GenEvent.h"
32
33
34class IxAODtoHepMCTool : public virtual asg::IAsgTool {
35 public:
37 virtual ~ IxAODtoHepMCTool () { };
38 public:
39 virtual StatusCode initialize() = 0;
40 virtual StatusCode finalize () = 0;
41 virtual std::vector<HepMC::GenEvent> getHepMCEvents(const xAOD::TruthEventContainer* xTruthEventContainer, const xAOD::EventInfo* eventInfo) const = 0;
42};
43
44#endif //> !GENINTERFACES_IXAODTOHEPMCTOOL_H
#define ASG_TOOL_INTERFACE(CLASSNAME)
virtual std::vector< HepMC::GenEvent > getHepMCEvents(const xAOD::TruthEventContainer *xTruthEventContainer, const xAOD::EventInfo *eventInfo) const =0
virtual StatusCode finalize()=0
virtual StatusCode initialize()=0
Base class for the dual-use tool interface classes.
Definition IAsgTool.h:41
TruthEventContainer_v1 TruthEventContainer
Declare the latest version of the truth event container.
EventInfo_v1 EventInfo
Definition of the latest event info version.