ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
#include <acts/blob/master/Examples/Framework/include/ACTFW/Framework/WhiteBoard.hpp>
Classes | |
struct | HolderT |
struct | IHolder |
Public Member Functions | |
WhiteBoard (std::unique_ptr< const Acts::Logger > logger=Acts::getDefaultLogger("WhiteBoard", Acts::Logging::INFO)) | |
WhiteBoard (const WhiteBoard &other)=delete | |
WhiteBoard & | operator= (const WhiteBoard &)=delete |
template<typename T > | |
void | add (const std::string &name, T &&object) |
template<typename T > | |
const T & | get (const std::string &name) const |
Private Member Functions | |
const Acts::Logger & | logger () const |
Private Attributes | |
std::unique_ptr< const Acts::Logger > | m_logger |
std::unordered_map < std::string, std::unique_ptr < IHolder > > | m_store |
A container to store arbitrary objects with ownership transfer.
This is an append-only container that takes ownership of the objects added to it. Once an object has been added, it can only be read but not be modified. Trying to replace an existing object is considered an error. Its lifetime is bound to the liftime of the white board.
Definition at line 28 of file WhiteBoard.hpp.
View newest version in sPHENIX GitHub at line 28 of file WhiteBoard.hpp
|
inline |
Definition at line 77 of file WhiteBoard.hpp.
View newest version in sPHENIX GitHub at line 77 of file WhiteBoard.hpp
|
delete |
Store an object on the white board and transfer ownership.
name | Non-empty identifier to store it under |
object | Movable reference to the transferable object |
std::invalid_argument | on empty or duplicate name |
Definition at line 81 of file WhiteBoard.hpp.
View newest version in sPHENIX GitHub at line 81 of file WhiteBoard.hpp
References ACTS_VERBOSE, and G4Analysis::make_unique().
Referenced by FW::FlattenEvent::execute(), FW::HelloWhiteBoardAlgorithm::execute(), FW::TruthTrackFinder::execute(), FW::HelloRandomAlgorithm::execute(), FW::TrackSelector::execute(), FW::HitSmearing::execute(), FW::DigitizationAlgorithm::execute(), FW::ParticleSmearing::execute(), FW::ParticleSelector::execute(), FW::FittingAlgorithm::execute(), FW::GeantinoRecording::execute(), FW::TruthVerticesToTracksAlgorithm::execute(), FW::MaterialMapping::execute(), FW::HelloService::prepare(), FW::CsvParticleReader::read(), FW::RootVertexAndTracksReader::read(), FW::CsvPlanarClusterReader::read(), FW::RootMaterialTrackReader::read(), and FW::EventGenerator::read().
|
inline |
Get access to a stored object.
[in] | name | Identifier for the object |
std::out_of_range | if no object is stored under the requested name |
Definition at line 93 of file WhiteBoard.hpp.
View newest version in sPHENIX GitHub at line 93 of file WhiteBoard.hpp
References ACTS_VERBOSE, it, T, and FW::WhiteBoard::IHolder::type().
Referenced by FW::HelloLoggerAlgorithm::execute(), FW::PrintParticles::execute(), FW::FlattenEvent::execute(), FW::HelloWhiteBoardAlgorithm::execute(), FW::TruthTrackFinder::execute(), FW::PrintHits::execute(), FWE::VertexFindingAlgorithm::execute(), FW::TrackSelector::execute(), FWE::VertexFitAlgorithm::execute(), FW::HitSmearing::execute(), FW::DigitizationAlgorithm::execute(), FW::ParticleSmearing::execute(), FW::ParticleSelector::execute(), FW::FittingAlgorithm::execute(), FW::TruthVerticesToTracksAlgorithm::execute(), FW::MaterialMapping::execute(), FW::WriterT< write_data_t >::write(), FW::TrackFinderPerformanceWriter::writeT(), FW::TrackFitterPerformanceWriter::writeT(), FW::CsvPlanarClusterWriter::writeT(), FW::RootPlanarClusterWriter::writeT(), and FW::RootTrajectoryWriter::writeT().
|
inlineprivate |
Definition at line 72 of file WhiteBoard.hpp.
View newest version in sPHENIX GitHub at line 72 of file WhiteBoard.hpp
References m_logger.
|
delete |
|
private |
Definition at line 69 of file WhiteBoard.hpp.
View newest version in sPHENIX GitHub at line 69 of file WhiteBoard.hpp
Referenced by logger().
|
private |
Definition at line 70 of file WhiteBoard.hpp.
View newest version in sPHENIX GitHub at line 70 of file WhiteBoard.hpp