5#ifndef EVGENPRODTOOLS_IHEPMCWEIGHTSVC_H
6#define EVGENPRODTOOLS_IHEPMCWEIGHTSVC_H
8#include "GaudiKernel/IInterface.h"
9#include "GaudiKernel/ThreadLocalContext.h"
22 using WeightMap = std::map<std::string, std::size_t>;
27 const EventContext& ctx = Gaudi::Hive::currentContext())= 0;
33 virtual std::vector<std::string>
weightNameVec (
const EventContext& ctx = Gaudi::Hive::currentContext()) = 0;
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.