ATLAS Offline Software
Loading...
Searching...
No Matches
IHepMCWeightSvc.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef EVGENPRODTOOLS_IHEPMCWEIGHTSVC_H
6#define EVGENPRODTOOLS_IHEPMCWEIGHTSVC_H
7
8#include "GaudiKernel/IInterface.h"
9#include "GaudiKernel/ThreadLocalContext.h"
10#include <string>
11#include <map>
12
17class IHepMCWeightSvc : virtual public IInterface
18{
19public:
21
22 using WeightMap = std::map<std::string, std::size_t>;
23
24
26 virtual StatusCode setWeightNames (const WeightMap& weightNames,
27 const EventContext& ctx = Gaudi::Hive::currentContext())= 0;
28
30 virtual WeightMap weightNames (const EventContext& ctx = Gaudi::Hive::currentContext()) = 0;
31
33 virtual std::vector<std::string> weightNameVec (const EventContext& ctx = Gaudi::Hive::currentContext()) = 0;
34};
35
36#endif
IService to read/write HepMC's WeightContainer key names from/to IOVMetaDataContainers author: will b...
DeclareInterfaceID(IHepMCWeightSvc, 1, 0)
std::map< std::string, std::size_t > WeightMap
virtual WeightMap weightNames(const EventContext &ctx=Gaudi::Hive::currentContext())=0
Return the current weight names.
virtual std::vector< std::string > weightNameVec(const EventContext &ctx=Gaudi::Hive::currentContext())=0
Return the current weight names.
virtual StatusCode setWeightNames(const WeightMap &weightNames, const EventContext &ctx=Gaudi::Hive::currentContext())=0
If no weight names have been set yet, record them to metadata.