1 #include "HepPDT/HeavyIonUnknownID.hh" 3 #include "tbb/concurrent_vector.h" 7 class CachingHeavyIonUnknownID :
public HepPDT::ProcessUnknownID {
11 std::unique_ptr<HepPDT::ParticleData>
p{wrapped_.processUnknownID(
id, table)};
19 HepPDT::HeavyIonUnknownID wrapped_;
20 tbb::concurrent_vector<std::unique_ptr<HepPDT::ParticleData>> particles_;
28 findingRecord<PDTRecord>();
35 auto pdt = std::make_unique<PDT>(
"PDG table",
new CachingHeavyIonUnknownID);
41 HepPDT::TableBuilder builder(*pdt);
42 if (!addParticleTable(pdtFile, builder)) {
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
HepPDT::ParticleDataTable ParticleDataTable
static const IOVSyncValue & endOfTime()
edm::FileInPath pdtFileName
std::pair< Time_t, Time_t > ValidityInterval
HepPDTESSource(const edm::ParameterSet &)
constructor from parameter set
~HepPDTESSource() override
destructor
std::unique_ptr< PDT > ReturnType
define the return type
static const IOVSyncValue & beginOfTime()
void setIntervalFor(const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &) override
set validity interval
HepPDT::ParticleData ParticleData
ReturnType produce(const PDTRecord &)
return the particle table
std::string fullPath() const