artdaq_core
v3_06_11
|
The FragmentNameHelper translates between Fragments and their instance names (usually by type, but any/all RawFragmentHeader fields, or even Overlays, may be used) More...
#include <artdaq-core/Data/FragmentNameHelper.hh>
Public Member Functions | |
virtual | ~FragmentNameHelper ()=default |
Default virtual destructor. | |
FragmentNameHelper (std::string unidentified_instance_name, std::vector< std::pair< artdaq::Fragment::type_t, std::string >> extraTypes) | |
FragmentNameHelper Constructor. More... | |
void | SetBasicTypes (std::map< artdaq::Fragment::type_t, std::string > const &type_map) |
Sets the basic types to be translated. (Should not include "container" types.) | |
void | AddExtraType (artdaq::Fragment::type_t type_id, std::string const &type_name) |
Adds an additional type to be translated. | |
std::string | GetUnidentifiedInstanceName () const |
Get the configured unidentified_instance_name. More... | |
virtual std::string | GetInstanceNameForType (artdaq::Fragment::type_t type_id) const =0 |
Returns the basic translation for the specified type. Must be implemented by derived classes. | |
virtual std::set< std::string > | GetAllProductInstanceNames () const =0 |
Returns the full set of product instance names which may be present in the data, based on the types that have been specified in the SetBasicTypes() and AddExtraType() methods. This does include "container" types, if the container type mapping is part of the basic types. Must be implemented by derived classes. | |
virtual std::pair< bool, std::string > | GetInstanceNameForFragment (artdaq::Fragment const &fragment) const =0 |
Returns the product instance name for the specified fragment, based on the types that have been specified in the SetBasicTypes() and AddExtraType() methods. This does include the use of "container" types, if the container type mapping is part of the basic types. If no mapping is found, the specified unidentified_instance_name should be returned. Must be implemented by derived classes. | |
Protected Attributes | |
std::map < artdaq::Fragment::type_t, std::string > | type_map_ |
Map relating Fragment Type to strings. | |
std::string | unidentified_instance_name_ |
The name to use for unknown Fragment types. | |
The FragmentNameHelper translates between Fragments and their instance names (usually by type, but any/all RawFragmentHeader fields, or even Overlays, may be used)
Definition at line 34 of file FragmentNameHelper.hh.
|
inline |
FragmentNameHelper Constructor.
unidentified_instance_name | Name to use for unidentified Fragments |
extraTypes | Additional types to register |
Definition at line 47 of file FragmentNameHelper.hh.
|
inline |
Get the configured unidentified_instance_name.
Definition at line 81 of file FragmentNameHelper.hh.