artdaq_core  v3_06_01
artdaq::FragmentNameHelper Class Referenceabstract
Inheritance diagram for artdaq::FragmentNameHelper:
artdaq::ArtdaqFragmentNameHelper

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 is 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.
 

Detailed Description

Definition at line 31 of file FragmentNameHelper.hh.

Constructor & Destructor Documentation

artdaq::FragmentNameHelper::FragmentNameHelper ( std::string  unidentified_instance_name,
std::vector< std::pair< artdaq::Fragment::type_t, std::string >>  extraTypes 
)
inline

FragmentNameHelper constructor.

Parameters
psParameterSet used to configure FragmentNameHelper

FragmentNameHelper accepts the following Parameters: "unidentified_instance_name" (Default: "unidentified"): Name to use for any Fragments which are not successfully translated by the FragmentNameHelper "fragment_type_map" (Default: []): A list of Fragment type_t to string pairs for additional types to register with the FragmentNameHelper

Definition at line 47 of file FragmentNameHelper.hh.

Member Function Documentation

std::string artdaq::FragmentNameHelper::GetUnidentifiedInstanceName ( ) const
inline

Get the configured unidentified_instance_name.

Returns
The configured unidentified_instance_name

Definition at line 81 of file FragmentNameHelper.hh.


The documentation for this class was generated from the following file: