Go to the documentation of this file.
11 #ifndef GAUDIKERNEL_PROPERTYMGR_H
12 #define GAUDIKERNEL_PROPERTYMGR_H
55 template <
class TYPE,
typename = std::enable_if_t<!std::is_base_of_v<GaudiHandleBase, TYPE> &&
56 !std::is_base_of_v<GaudiHandleArrayBase, TYPE> &&
57 !std::is_base_of_v<Gaudi::DataHandle, TYPE>>>
158 template <
class TYPE,
typename>
173 template <
class TYPE>
188 template <
class TYPE>
204 #endif // GAUDIKERNEL_PROPERTYMGR_H
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
StatusCode queryInterface(const InterfaceID &ti, void **pp) override
Implementation of IInterface::queryInterface.
bool PyHelper() setProperty(IInterface *p, char *name, char *value)
IInterface * m_pOuter
Interface hub reference (ApplicationMgr)
PropertyMgr(const PropertyMgr &)=delete
Gaudi::Details::PropertyBase * declareProperty(const std::string &name, TYPE &value, const std::string &doc="none")
Declare a property (templated)
Helper class to implement the IProperty interface.
std::pair< std::string, std::pair< IProperty *, std::string > > RemProperty
PropertyMgr & operator=(const PropertyMgr &)=delete
std::vector< RemProperty > RemoteProperties
void setDocumentation(std::string value)
set the documentation string
void assertUniqueName(const std::string &name) const
Throw an exception if the name is already present in the list of properties (see GAUDI-1023).
std::vector< std::unique_ptr< Gaudi::Details::PropertyBase > > m_todelete
Properties to be deleted.
Base class of array's of various gaudihandles.
std::vector< Gaudi::Details::PropertyBase * > Properties
Base class used to implement the interfaces.
T emplace_back(T... args)
RemoteProperties m_remoteProperties
Collection of all declared remote properties.
Properties m_properties
Collection of all declared properties.
void setName(std::string value)
set the new value for the property name
const char *PyHelper() getProperty(IInterface *p, char *name)
Implementation of property with value of concrete type.
GAUDI_API bool hasProperty(const IProperty *p, std::string_view name)
simple function which check the existence of the property with the given name.