1 #ifndef GAUDIALG_FIXTESPATH_H 2 #define GAUDIALG_FIXTESPATH_H 24 template <
typename U = BASE,
typename = std::enable_if_t<std::is_base_of_v<Gaudi::Algorithm, BASE>, U>>
29 template <
typename U = BASE,
typename = std::enable_if_t<std::is_base_of_v<AlgTool, BASE>, U>>
33 if (
const IProperty* ancestorProp = dynamic_cast<const IProperty*>( ancestor );
34 ancestorProp && ancestorProp->
hasProperty(
"RootInTES" ) ) {
35 this->
setProperty( ancestorProp->getProperty(
"RootInTES" ) ).ignore();
45 rootInTES(), dataMgrSvc->rootName(), BASE::msgLevel(
MSG::DEBUG ) ? &this->debug() : nullptr );
65 if ( !rit.empty() && rit.back() !=
'/' ) rit +=
'/';
67 "note: overridden by parent settings"};
Definition of the MsgStream class used to transmit messages.
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Implementation of property with value of concrete type.
FixTESPath(const std::string &type, const std::string &name, const IInterface *ancestor)
Tool constructor - SFINAE-ed to insure this constructor is only defined if BASE derives from AlgTool.
Gaudi::Property< std::string > m_rootInTES
This class is used for returning status codes from appropriate routines.
Definition of the basic interface.
virtual bool hasProperty(const std::string &name) const =0
Return true if we have a property with the given name.
bool PyHelper() setProperty(IInterface *p, char *name, char *value)
std::string fullTESLocation(std::string_view location, std::string_view rit)
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
FixTESPath(const std::string &name, ISvcLocator *pSvcLocator)
Algorithm constructor - the SFINAE constraint below ensures that this is constructor is only defined ...
const std::string & rootInTES() const
Returns the "rootInTES" string.
std::string fullTESLocation(std::string_view location, bool useRootInTES) const
Returns the full correct event location given the rootInTes settings.
StatusCode initialize() override
std::unique_ptr< IDataHandleVisitor > fixDataHandlePath(std::string_view rit, std::string rootName, MsgStream *dbg)
The IProperty is the basic interface for all components which have properties that can be set or get.