1 #ifndef GAUDIKERNEL_PROPERTYMGR_H 2 #define GAUDIKERNEL_PROPERTYMGR_H 46 template <class TYPE, typename = std::enable_if_t<!std::is_base_of<GaudiHandleBase, TYPE>::value &&
149 template <
class TYPE,
typename>
165 template <
class TYPE>
181 template <
class TYPE>
198 #endif // GAUDIKERNEL_PROPERTYMGR_H std::vector< RemProperty > RemoteProperties
Base class used to implement the interfaces.
void setDocumentation(std::string value)
set the documentation string
Implementation of property with value of concrete type.
std::pair< std::string, std::pair< IProperty *, std::string > > RemProperty
Gaudi::Details::PropertyBase * property(const std::string &name) const
Gaudi::Details::PropertyBase * declareRemoteProperty(const std::string &name, IProperty *rsvc, const std::string &rname="")
Declare a remote property.
std::vector< Gaudi::Details::PropertyBase * > Properties
void assertUniqueName(const std::string &name) const
Throw an exception if the name is already present in the list of properties (see GAUDI-1023).
Property manager helper class.
StatusCode setProperty(const Gaudi::Details::PropertyBase &p) override
set the property form another property
implements & operator=(const implements &)
Assignment operator (do not touch the reference count).
class GAUDI_API[[deprecated("will be removed in v29r0, consider using PropertyHolder instead")]] PropertyMgr
bool hasProperty(const std::string &name) const override
Return true if we have a property with the given name.
This class is used for returning status codes from appropriate routines.
Gaudi::Details::PropertyBase * declareProperty(const std::string &name, TYPE &value, const std::string &doc="none")
Declare a property (templated)
Definition of the basic interface.
StatusCode getProperty(Gaudi::Details::PropertyBase *p) const override
get the property
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
void setName(std::string value)
set the new value for the property name
Base class of array's of various gaudihandles.
DataObjectHandleBase GaudiKernel/DataObjectHandleBase.h.
Properties m_properties
Collection of all declared properties.
Helper class to implement the IProperty interface.
std::vector< std::unique_ptr< Gaudi::Details::PropertyBase > > m_todelete
Properties to be deleted.
Base class to handles to be used in lieu of naked pointers to various Gaudi components.
StatusCode queryInterface(const InterfaceID &ti, void **pp) override
Implementation of IInterface::queryInterface.
The IProperty is the basic interface for all components which have properties that can be set or get...
const std::vector< Gaudi::Details::PropertyBase * > & getProperties() const override
get all properties
IInterface * m_pOuter
Interface hub reference (ApplicationMgr)
RemoteProperties m_remoteProperties
Collection of all declared remote properties.