CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions
edm::DummyProvenanceReader Class Reference
Inheritance diagram for edm::DummyProvenanceReader:
edm::ProvenanceReaderBase

Public Member Functions

 DummyProvenanceReader ()
 
 ~DummyProvenanceReader () override
 
- Public Member Functions inherited from edm::ProvenanceReaderBase
 ProvenanceReaderBase ()
 
virtual ~ProvenanceReaderBase ()
 

Private Member Functions

std::set< ProductProvenancereadProvenance (unsigned int) const override
 
void readProvenanceAsync (WaitingTaskHolder task, ModuleCallingContext const *moduleCallingContext, unsigned int transitionIndex, std::atomic< const std::set< ProductProvenance > *> &writeTo) const noexcept override
 

Detailed Description

Definition at line 2487 of file RootFile.cc.

Constructor & Destructor Documentation

◆ DummyProvenanceReader()

edm::DummyProvenanceReader::DummyProvenanceReader ( )

Definition at line 2500 of file RootFile.cc.

◆ ~DummyProvenanceReader()

edm::DummyProvenanceReader::~DummyProvenanceReader ( )
inlineoverride

Definition at line 2490 of file RootFile.cc.

2490 {}

Member Function Documentation

◆ readProvenance()

std::set< ProductProvenance > edm::DummyProvenanceReader::readProvenance ( unsigned int  ) const
overrideprivatevirtual

Implements edm::ProvenanceReaderBase.

Definition at line 2502 of file RootFile.cc.

2502  {
2503  // Not providing parentage!!!
2504  return std::set<ProductProvenance>{};
2505  }

◆ readProvenanceAsync()

void edm::DummyProvenanceReader::readProvenanceAsync ( WaitingTaskHolder  task,
ModuleCallingContext const *  moduleCallingContext,
unsigned int  transitionIndex,
std::atomic< const std::set< ProductProvenance > *> &  writeTo 
) const
overrideprivatevirtualnoexcept

Implements edm::ProvenanceReaderBase.

Definition at line 2506 of file RootFile.cc.

2510  {
2511  if (nullptr == writeTo.load()) {
2512  auto emptyProv = std::make_unique<const std::set<ProductProvenance>>();
2513  const std::set<ProductProvenance>* expected = nullptr;
2514  if (writeTo.compare_exchange_strong(expected, emptyProv.get())) {
2515  emptyProv.release();
2516  }
2517  }
2518  }