| The Gaudi Framework v32r1 (f65d50dc)

Classes | Namespaces | Typedefs | Functions
Property.h File Reference
`#include <stdexcept>`
`#include <string>`
`#include <string_view>`
`#include <typeinfo>`
`#include "GaudiKernel/IProperty.h"`
`#include "GaudiKernel/Kernel.h"`
`#include "GaudiKernel/PropertyFwd.h"`
`#include "GaudiKernel/SmartIF.h"`
`#include "GaudiKernel/TaggedBool.h"`
`#include "GaudiKernel/ToStream.h"`
`#include <Gaudi/Parsers/CommonParsers.h>`
`#include <Gaudi/Parsers/InputData.h>`
Include dependency graph for Property.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
class | Gaudi::Details::PropertyBase
| PropertyBase base class allowing PropertyBase* collections to be "homogeneous". More...
struct | Gaudi::Details::Property::DefaultStringConverterImpl< TYPE >
struct | Gaudi::Details::Property::DefaultStringConverter< TYPE, Enable >
struct | Gaudi::Details::Property::DefaultStringConverter< TYPE, std::enable_if_t< std::is_default_constructible_v< TYPE > > >
struct | Gaudi::Details::Property::StringConverter< TYPE >
struct | Gaudi::Details::Property::NullVerifier
struct | Gaudi::Details::Property::BoundedVerifier< TYPE >
struct | Gaudi::Details::Property::SwapCall
| helper to disable a while triggering it, to avoid infinite recursion More...
struct | Gaudi::Details::Property::NoHandler
struct | Gaudi::Details::Property::ReadHandler
struct | Gaudi::Details::Property::UpdateHandler
struct | Gaudi::Details::Property::ReadUpdateHandler
class | Gaudi::Property< TYPE, VERIFIER, HANDLERS >
| Implementation of property with value of concrete type. More...
class | PropertyWithHandlers< Handler >
| Helper class to simplify the migration old properties deriving directly from PropertyBase. More...
class | GaudiHandleProperty
class | GaudiHandleArrayProperty

## Namespaces
| Gaudi
| Header file for std:chrono::duration-based Counters.
| Gaudi::Details
| Gaudi::Details::Property
| Gaudi::Utils

## Typedefs
using | Gaudi::Details::Property::ImmediatelyInvokeHandler = Gaudi::tagged_bool< class ImmediatelyInvokeHandler_tag >
template<class TYPE >
using | SimpleProperty = Gaudi::Property< TYPE >
template<class TYPE >
using | SimplePropertyRef = Gaudi::Property< TYPE & >
typedef Gaudi::Property< bool > | BooleanProperty
typedef Gaudi::Property< char > | CharProperty
typedef Gaudi::Property< signed char > | SignedCharProperty
typedef Gaudi::Property< unsigned char > | UnsignedCharProperty
typedef Gaudi::Property< short > | ShortProperty
typedef Gaudi::Property< unsigned short > | UnsignedShortProperty
typedef Gaudi::Property< int > | IntegerProperty
typedef Gaudi::Property< unsigned int > | UnsignedIntegerProperty
typedef Gaudi::Property< long > | LongProperty
typedef Gaudi::Property< unsigned long > | UnsignedLongProperty
typedef Gaudi::Property< long long > | LongLongProperty
typedef Gaudi::Property< unsigned long long > | UnsignedLongLongProperty
typedef Gaudi::Property< float > | FloatProperty
typedef Gaudi::Property< double > | DoubleProperty
typedef Gaudi::Property< long double > | LongDoubleProperty
typedef Gaudi::Property< std::string > | StringProperty
typedef Gaudi::Property< bool & > | BooleanPropertyRef
typedef Gaudi::Property< char & > | CharPropertyRef
typedef Gaudi::Property< signed char & > | SignedCharPropertyRef
typedef Gaudi::Property< unsigned char & > | UnsignedCharPropertyRef
typedef Gaudi::Property< short & > | ShortPropertyRef
typedef Gaudi::Property< unsigned short & > | UnsignedShortPropertyRef
typedef Gaudi::Property< int & > | IntegerPropertyRef
typedef Gaudi::Property< unsigned int & > | UnsignedIntegerPropertyRef
typedef Gaudi::Property< long & > | LongPropertyRef
typedef Gaudi::Property< unsigned long & > | UnsignedLongPropertyRef
typedef Gaudi::Property< long long & > | LongLongPropertyRef
typedef Gaudi::Property< unsigned long long & > | UnsignedLongLongPropertyRef
typedef Gaudi::Property< float & > | FloatPropertyRef
typedef Gaudi::Property< double & > | DoublePropertyRef
typedef Gaudi::Property< long double & > | LongDoublePropertyRef
typedef Gaudi::Property< std::string & > | StringPropertyRef
typedef Gaudi::Property< std::vector< bool > > | BooleanArrayProperty
typedef Gaudi::Property< std::vector< char > > | CharArrayProperty
typedef Gaudi::Property< std::vector< signed char > > | SignedCharArrayProperty
typedef Gaudi::Property< std::vector< unsigned char > > | UnsignedCharArrayProperty
typedef Gaudi::Property< std::vector< short > > | ShortArrayProperty
typedef Gaudi::Property< std::vector< unsigned short > > | UnsignedShortArrayProperty
typedef Gaudi::Property< std::vector< int > > | IntegerArrayProperty
typedef Gaudi::Property< std::vector< unsigned int > > | UnsignedIntegerArrayProperty
typedef Gaudi::Property< std::vector< long > > | LongArrayProperty
typedef Gaudi::Property< std::vector< unsigned long > > | UnsignedLongArrayProperty
typedef Gaudi::Property< std::vector< long long > > | LongLongArrayProperty
typedef Gaudi::Property< std::vector< unsigned long long > > | UnsignedLongLongArrayProperty
typedef Gaudi::Property< std::vector< float > > | FloatArrayProperty
typedef Gaudi::Property< std::vector< double > > | DoubleArrayProperty
typedef Gaudi::Property< std::vector< long double > > | LongDoubleArrayProperty
typedef Gaudi::Property< std::vector< std::string > > | StringArrayProperty
typedef Gaudi::Property< std::vector< bool > & > | BooleanArrayPropertyRef
typedef Gaudi::Property< std::vector< char > & > | CharArrayPropertyRef
typedef Gaudi::Property< std::vector< signed char > & > | SignedCharArrayPropertyRef
typedef Gaudi::Property< std::vector< unsigned char > & > | UnsignedCharArrayPropertyRef
typedef Gaudi::Property< std::vector< short > & > | ShortArrayPropertyRef
typedef Gaudi::Property< std::vector< unsigned short > & > | UnsignedShortArrayPropertyRef
typedef Gaudi::Property< std::vector< int > & > | IntegerArrayPropertyRef
typedef Gaudi::Property< std::vector< unsigned int > & > | UnsignedIntegerArrayPropertyRef
typedef Gaudi::Property< std::vector< long > & > | LongArrayPropertyRef
typedef Gaudi::Property< std::vector< unsigned long > & > | UnsignedLongArrayPropertyRef
typedef Gaudi::Property< std::vector< long long > & > | LongLongArrayPropertyRef
typedef Gaudi::Property< std::vector< unsigned long long > & > | UnsignedLongLongArrayPropertyRef
typedef Gaudi::Property< std::vector< float > & > | FloatArrayPropertyRef
typedef Gaudi::Property< std::vector< double > & > | DoubleArrayPropertyRef
typedef Gaudi::Property< std::vector< long double > & > | LongDoubleArrayPropertyRef
typedef Gaudi::Property< std::vector< std::string > & > | StringArrayPropertyRef

## Functions
std::ostream & | Gaudi::Details::operator<< (std::ostream &stream, const PropertyBase &prop)
template<class T , class TP , class V , class H >
bool | Gaudi::operator== (const T &v, const Property< TP, V, H > &p)
| delegate (value == property) to property operator== More...
template<class T , class TP , class V , class H >
bool | Gaudi::operator!= (const T &v, const Property< TP, V, H > &p)
| delegate (value != property) to property operator!= More...
template<class T , class TP , class V , class H >
decltype(auto) | Gaudi::operator+ (const T &v, const Property< TP, V, H > &p)
| implemantation of (value + property) More...
GAUDI_API bool | Gaudi::Utils::hasProperty (const IProperty *p, const std::string &name)
| simple function which check the existence of the property with the given name. More...
GAUDI_API bool | Gaudi::Utils::hasProperty (const IInterface *p, const std::string &name)
| simple function which check the existence of the property with the given name. More...
GAUDI_API Gaudi::Details::PropertyBase * | Gaudi::Utils::getProperty (const IProperty *p, const std::string &name)
| simple function which gets the property with given name from the component More...
GAUDI_API Gaudi::Details::PropertyBase * | Gaudi::Utils::getProperty (const IInterface *p, const std::string &name)
| simple function which gets the property with given name from the component More...
GAUDI_API bool | Gaudi::Utils::hasProperty (const std::vector< const Gaudi::Details::PropertyBase * > *p, const std::string &name)
| check the property by name from the list of the properties More...
GAUDI_API const Gaudi::Details::PropertyBase * | Gaudi::Utils::getProperty (const std::vector< const Gaudi::Details::PropertyBase * > *p, const std::string &name)
| get the property by name from the list of the properties More...
template<class TYPE >
StatusCode | Gaudi::Utils::setProperty (IProperty *component, const std::string &name, const TYPE &value, const std::string &doc)
| simple function to set the property of the given object from the value More...
template<class TYPE >
StatusCode | Gaudi::Utils::setProperty (IProperty *component, const std::string &name, const TYPE &value)
| simple function to set the property of the given object from the value More...
GAUDI_API StatusCode | Gaudi::Utils::setProperty (IProperty *component, const std::string &name, const std::string &value, const std::string &doc="")
| the full specialization of the previous method setProperty( IProperty, std::string, const TYPE&) for standard strings More...
GAUDI_API StatusCode | Gaudi::Utils::setProperty (IProperty *component, const std::string &name, const char *value, const std::string &doc="")
| the full specialization of the method setProperty( IProperty, std::string, const TYPE&) for C-strings More...
template<unsigned N>
StatusCode | Gaudi::Utils::setProperty (IProperty *component, const std::string &name, const char(&value)[N], const std::string &doc="")
| the full specialization of the method setProperty( IProperty, std::string, const TYPE&) for C-arrays More...
GAUDI_API StatusCode | Gaudi::Utils::setProperty (IProperty *component, const std::string &name, const Gaudi::Details::PropertyBase *property, const std::string &doc="")
| simple function to set the property of the given object from another property More...
GAUDI_API StatusCode | Gaudi::Utils::setProperty (IProperty *component, const std::string &name, const Gaudi::Details::PropertyBase &property, const std::string &doc="")
| simple function to set the property of the given object from another property More...
template<class TYPE >
StatusCode | Gaudi::Utils::setProperty (IProperty *component, const std::string &name, const Gaudi::Property< TYPE > &value, const std::string &doc="")
| simple function to set the property of the given object from another property More...
template<class TYPE >
StatusCode | Gaudi::Utils::setProperty (IInterface *component, const std::string &name, const TYPE &value, const std::string &doc="")
| simple function to set the property of the given object from the value More...
GAUDI_API StatusCode | Gaudi::Utils::setProperty (IInterface *component, const std::string &name, const std::string &value, const std::string &doc="")
| the full specialization of the method setProperty( IInterface , std::string, const TYPE&) for standard strings More...
GAUDI_API StatusCode | Gaudi::Utils::setProperty (IInterface *component, const std::string &name, const char *value, const std::string &doc="")
| the full specialization of the method setProperty( IInterface , std::string, const TYPE&) for C-strings More...
template<unsigned N>
StatusCode | Gaudi::Utils::setProperty (IInterface *component, const std::string &name, const char(&value)[N], const std::string &doc="")
| the full specialization of the method setProperty( IInterface, std::string, const TYPE&) for C-arrays More...
GAUDI_API StatusCode | Gaudi::Utils::setProperty (IInterface *component, const std::string &name, const Gaudi::Details::PropertyBase *property, const std::string &doc="")
| simple function to set the property of the given object from another property More...
GAUDI_API StatusCode | Gaudi::Utils::setProperty (IInterface *component, const std::string &name, const Gaudi::Details::PropertyBase &property, const std::string &doc="")
| simple function to set the property of the given object from another property More...
template<class TYPE >
StatusCode | Gaudi::Utils::setProperty (IInterface *component, const std::string &name, const Gaudi::Property< TYPE > &value, const std::string &doc="")
| simple function to set the property of the given object from another property More...

## Typedef Documentation

## ◆ BooleanArrayProperty

typedef Gaudi::Property<std::vector<bool> > BooleanArrayProperty

Definition at line 766 of file Property.h.

## ◆ BooleanArrayPropertyRef

typedef Gaudi::Property<std::vector<bool>&> BooleanArrayPropertyRef

Definition at line 785 of file Property.h.

## ◆ BooleanProperty

typedef Gaudi::Property<bool> BooleanProperty

Definition at line 728 of file Property.h.

## ◆ BooleanPropertyRef

typedef Gaudi::Property<bool&> BooleanPropertyRef

Definition at line 747 of file Property.h.

## ◆ CharArrayProperty

typedef Gaudi::Property<std::vector<char> > CharArrayProperty

Definition at line 767 of file Property.h.

## ◆ CharArrayPropertyRef

typedef Gaudi::Property<std::vector<char>&> CharArrayPropertyRef

Definition at line 786 of file Property.h.

## ◆ CharProperty

typedef Gaudi::Property<char> CharProperty

Definition at line 729 of file Property.h.

## ◆ CharPropertyRef

typedef Gaudi::Property<char&> CharPropertyRef

Definition at line 748 of file Property.h.

## ◆ DoubleArrayProperty

typedef Gaudi::Property<std::vector<double> > DoubleArrayProperty

Definition at line 779 of file Property.h.

## ◆ DoubleArrayPropertyRef

typedef Gaudi::Property<std::vector<double>&> DoubleArrayPropertyRef

Definition at line 798 of file Property.h.

## ◆ DoubleProperty

typedef Gaudi::Property<double> DoubleProperty

Definition at line 741 of file Property.h.

## ◆ DoublePropertyRef

typedef Gaudi::Property<double&> DoublePropertyRef

Definition at line 760 of file Property.h.

## ◆ FloatArrayProperty

typedef Gaudi::Property<std::vector<float> > FloatArrayProperty

Definition at line 778 of file Property.h.

## ◆ FloatArrayPropertyRef

typedef Gaudi::Property<std::vector<float>&> FloatArrayPropertyRef

Definition at line 797 of file Property.h.

## ◆ FloatProperty

typedef Gaudi::Property<float> FloatProperty

Definition at line 740 of file Property.h.

## ◆ FloatPropertyRef

typedef Gaudi::Property<float&> FloatPropertyRef

Definition at line 759 of file Property.h.

## ◆ IntegerArrayProperty

typedef Gaudi::Property<std::vector<int> > IntegerArrayProperty

Definition at line 772 of file Property.h.

## ◆ IntegerArrayPropertyRef

typedef Gaudi::Property<std::vector<int>&> IntegerArrayPropertyRef

Definition at line 791 of file Property.h.

## ◆ IntegerProperty

typedef Gaudi::Property<int> IntegerProperty

Definition at line 734 of file Property.h.

## ◆ IntegerPropertyRef

typedef Gaudi::Property<int&> IntegerPropertyRef

Definition at line 753 of file Property.h.

## ◆ LongArrayProperty

typedef Gaudi::Property<std::vector<long> > LongArrayProperty

Definition at line 774 of file Property.h.

## ◆ LongArrayPropertyRef

typedef Gaudi::Property<std::vector<long>&> LongArrayPropertyRef

Definition at line 793 of file Property.h.

## ◆ LongDoubleArrayProperty

typedef Gaudi::Property<std::vector<long double> > LongDoubleArrayProperty

Definition at line 780 of file Property.h.

## ◆ LongDoubleArrayPropertyRef

typedef Gaudi::Property<std::vector<long double>&> LongDoubleArrayPropertyRef

Definition at line 799 of file Property.h.

## ◆ LongDoubleProperty

typedef Gaudi::Property<long double> LongDoubleProperty

Definition at line 742 of file Property.h.

## ◆ LongDoublePropertyRef

typedef Gaudi::Property<long double&> LongDoublePropertyRef

Definition at line 761 of file Property.h.

## ◆ LongLongArrayProperty

typedef Gaudi::Property<std::vector<long long> > LongLongArrayProperty

Definition at line 776 of file Property.h.

## ◆ LongLongArrayPropertyRef

typedef Gaudi::Property<std::vector<long long>&> LongLongArrayPropertyRef

Definition at line 795 of file Property.h.

## ◆ LongLongProperty

typedef Gaudi::Property<long long> LongLongProperty

Definition at line 738 of file Property.h.

## ◆ LongLongPropertyRef

typedef Gaudi::Property<long long&> LongLongPropertyRef

Definition at line 757 of file Property.h.

## ◆ LongProperty

typedef Gaudi::Property<long> LongProperty

Definition at line 736 of file Property.h.

## ◆ LongPropertyRef

typedef Gaudi::Property<long&> LongPropertyRef

Definition at line 755 of file Property.h.

## ◆ ShortArrayProperty

typedef Gaudi::Property<std::vector<short> > ShortArrayProperty

Definition at line 770 of file Property.h.

## ◆ ShortArrayPropertyRef

typedef Gaudi::Property<std::vector<short>&> ShortArrayPropertyRef

Definition at line 789 of file Property.h.

## ◆ ShortProperty

typedef Gaudi::Property<short> ShortProperty

Definition at line 732 of file Property.h.

## ◆ ShortPropertyRef

typedef Gaudi::Property<short&> ShortPropertyRef

Definition at line 751 of file Property.h.

## ◆ SignedCharArrayProperty

typedef Gaudi::Property<std::vector<signed char> > SignedCharArrayProperty

Definition at line 768 of file Property.h.

## ◆ SignedCharArrayPropertyRef

typedef Gaudi::Property<std::vector<signed char>&> SignedCharArrayPropertyRef

Definition at line 787 of file Property.h.

## ◆ SignedCharProperty

typedef Gaudi::Property<signed char> SignedCharProperty

Definition at line 730 of file Property.h.

## ◆ SignedCharPropertyRef

typedef Gaudi::Property<signed char&> SignedCharPropertyRef

Definition at line 749 of file Property.h.

## ◆ SimpleProperty

template<class TYPE >

using SimpleProperty = Gaudi::Property<TYPE>

Definition at line 722 of file Property.h.

## ◆ SimplePropertyRef

template<class TYPE >

using SimplePropertyRef = Gaudi::Property<TYPE&>

Definition at line 725 of file Property.h.

## ◆ StringArrayProperty

typedef Gaudi::Property<std::vector<std::string> > StringArrayProperty

Definition at line 782 of file Property.h.

## ◆ StringArrayPropertyRef

typedef Gaudi::Property<std::vector<std::string>&> StringArrayPropertyRef

Definition at line 801 of file Property.h.

## ◆ StringProperty

typedef Gaudi::Property<std::string> StringProperty

Definition at line 744 of file Property.h.

## ◆ StringPropertyRef

typedef Gaudi::Property<std::string&> StringPropertyRef

Definition at line 763 of file Property.h.

## ◆ UnsignedCharArrayProperty

typedef Gaudi::Property<std::vector<unsigned char> > UnsignedCharArrayProperty

Definition at line 769 of file Property.h.

## ◆ UnsignedCharArrayPropertyRef

typedef Gaudi::Property<std::vector<unsigned char>&> UnsignedCharArrayPropertyRef

Definition at line 788 of file Property.h.

## ◆ UnsignedCharProperty

typedef Gaudi::Property<unsigned char> UnsignedCharProperty

Definition at line 731 of file Property.h.

## ◆ UnsignedCharPropertyRef

typedef Gaudi::Property<unsigned char&> UnsignedCharPropertyRef

Definition at line 750 of file Property.h.

## ◆ UnsignedIntegerArrayProperty

typedef Gaudi::Property<std::vector<unsigned int> > UnsignedIntegerArrayProperty

Definition at line 773 of file Property.h.

## ◆ UnsignedIntegerArrayPropertyRef

typedef Gaudi::Property<std::vector<unsigned int>&> UnsignedIntegerArrayPropertyRef

Definition at line 792 of file Property.h.

## ◆ UnsignedIntegerProperty

typedef Gaudi::Property<unsigned int> UnsignedIntegerProperty

Definition at line 735 of file Property.h.

## ◆ UnsignedIntegerPropertyRef

typedef Gaudi::Property<unsigned int&> UnsignedIntegerPropertyRef

Definition at line 754 of file Property.h.

## ◆ UnsignedLongArrayProperty

typedef Gaudi::Property<std::vector<unsigned long> > UnsignedLongArrayProperty

Definition at line 775 of file Property.h.

## ◆ UnsignedLongArrayPropertyRef

typedef Gaudi::Property<std::vector<unsigned long>&> UnsignedLongArrayPropertyRef

Definition at line 794 of file Property.h.

## ◆ UnsignedLongLongArrayProperty

typedef Gaudi::Property<std::vector<unsigned long long> > UnsignedLongLongArrayProperty

Definition at line 777 of file Property.h.

## ◆ UnsignedLongLongArrayPropertyRef

typedef Gaudi::Property<std::vector<unsigned long long>&> UnsignedLongLongArrayPropertyRef

Definition at line 796 of file Property.h.

## ◆ UnsignedLongLongProperty

typedef Gaudi::Property<unsigned long long> UnsignedLongLongProperty

Definition at line 739 of file Property.h.

## ◆ UnsignedLongLongPropertyRef

typedef Gaudi::Property<unsigned long long&> UnsignedLongLongPropertyRef

Definition at line 758 of file Property.h.

## ◆ UnsignedLongProperty

typedef Gaudi::Property<unsigned long> UnsignedLongProperty

Definition at line 737 of file Property.h.

## ◆ UnsignedLongPropertyRef

typedef Gaudi::Property<unsigned long&> UnsignedLongPropertyRef

Definition at line 756 of file Property.h.

## ◆ UnsignedShortArrayProperty

typedef Gaudi::Property<std::vector<unsigned short> > UnsignedShortArrayProperty

Definition at line 771 of file Property.h.

## ◆ UnsignedShortArrayPropertyRef

typedef Gaudi::Property<std::vector<unsigned short>&> UnsignedShortArrayPropertyRef

Definition at line 790 of file Property.h.

## ◆ UnsignedShortProperty

typedef Gaudi::Property<unsigned short> UnsignedShortProperty

Definition at line 733 of file Property.h.

## ◆ UnsignedShortPropertyRef

typedef Gaudi::Property<unsigned short&> UnsignedShortPropertyRef

Definition at line 752 of file Property.h.