1 #ifndef GAUDIKERNEL_PROPERTYMGR_H 2 #define GAUDIKERNEL_PROPERTYMGR_H 170 template <
class TYPE>
186 template <
class TYPE>
202 template <
class TYPE>
218 template <
class TYPE>
232 template <
class TYPE>
246 template <
class TYPE>
260 template <
class TYPE>
275 template <
class TYPE>
292 #endif // GAUDIKERNEL_PROPERTYMGR_H Handle to be used in lieu of naked pointers to services.
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 * declareProperty(const std::string &name, TYPE &value, const std::string &doc="none")
Declare a property (templated)
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.
DataObjectHandleProperty.h GaudiKernel/DataObjectHandleProperty.h.
StatusCode setProperty(const Gaudi::Details::PropertyBase &p) override
set the property form another property
DataObjectHandle.h GaudiKernel/DataObjectHandle.h.
implements & operator=(const implements &)
Assignment operator (do not touch the reference count).
class GAUDI_API[[deprecated("will be removed in v28r1, 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.
Definition of the basic interface.
StatusCode getProperty(Gaudi::Details::PropertyBase *p) const override
get the property
Array of Handles to be used in lieu of vector of naked pointers to tools.
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
void setName(std::string value)
set the new value for the property name
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.
StatusCode queryInterface(const InterfaceID &ti, void **pp) override
Implementation of IInterface::queryInterface.
~PropertyMgr() override=default
virtual destructor
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.