ADTF
property< T >

Property property implementation template. More...

Inheritance diagram for property< T >:
[legend]

Public Member Functions

 property ()
 CTOR.
 
 ~property ()=default
 DTOR.
 
 property (const property &oProperty)
 Copy CTOR.
 
 property (property &&oProperty)
 implementation of the move CTOR (but it is not moving yet)
 
propertyoperator= (const property &oValue)
 copy assignment
 
propertyoperator= (property &&oProperty)
 move assignment (its not moving yet)
 
 property (const adtf_util::cString &strName, const T &oValue)
 CTOR with name an value. More...
 
 property (std_string_helper, std::string_view strName)
 CTOR with name an value. More...
 
 property (const T &oValue)
 CTOR with value. More...
 
const propertyoperator= (const T &oValue)
 value assignment More...
 
bool operator== (const property &oProperty) const
 compare operator More...
 
bool operator== (const T &oValue) const
 compare operator More...
 
GetValueT () const
 Get the containing value. More...
 
tResult Set (const property &oProperty)
 Sets the property value and name as COPY of oProperty. More...
 
virtual const IPropertyValueGetValue () const
 
virtual IPropertyValueGetValue ()
 
virtual tResult SetValue (const IPropertyValue &oValue)
 
tResult Set (const IProperty &oProp)
 
- Public Member Functions inherited from cPropertyBase
tResult GetName (IString &&strName) const override
 
bool HasProperties () const override
 
bool HasAttachedProperties () const override
 
tResult SetProperties (const IProperties &oProperties) override
 will copy given properties
 
tResult AttachProperties (const ucom::ant::iobject_ptr< IProperties > &pAttachedProperties) override
 will set given properties to be attached
 
tResult GetAttachedProperties (IProperty &oProperty) const override
 
tResult DetachProperties () override
 
tResult GetProperties (ucom::ant::iobject_ptr< IProperties > &pSubProperties) override
 get subproperties for writing access
 
tResult GetProperties (ucom::ant::iobject_ptr< const IProperties > &pSubProperties) const override
 get subproperties for readonly access
 
tResult SetName (const IString &strName)
 

Private Attributes

property_value< T > m_oValue
 value type container
 

Additional Inherited Members

- Protected Attributes inherited from cPropertyBase
util::cString m_strName
 
ucom::object_ptr< IPropertiesm_poSubProperties = nullptr
 
ucom::object_ptr< IPropertiesm_poAttachedProperties = nullptr
 

Detailed Description

template<typename T>
class adtf::base::ant::property< T >

Property property implementation template.

Use this template to create an instance of an property with for the given value type T.

Template Parameters
TRaw Value type for the property.

Definition at line 211 of file property.h.

Constructor & Destructor Documentation

◆ property() [1/3]

property ( const adtf_util::cString &  strName,
const T &  oValue 
)
inline

CTOR with name an value.

Parameters
strName[in] Name of the property
oValue[in] Value of the property

Definition at line 264 of file property.h.

References property< T >::m_oValue.

◆ property() [2/3]

property ( std_string_helper  ,
std::string_view  strName 
)
inline

CTOR with name an value.

Parameters
strName[in] Name of the property
oValue[in] Value of the property

Definition at line 275 of file property.h.

◆ property() [3/3]

property ( const T &  oValue)
inline

CTOR with value.

Parameters
oValue[in] Value of the property

Definition at line 284 of file property.h.

References property< T >::m_oValue.

Member Function Documentation

◆ GetValueT()

T GetValueT ( ) const
inline

Get the containing value.

Returns
The Value content of as T

Definition at line 324 of file property.h.

References property< T >::m_oValue.

Referenced by property< T >::operator==().

◆ operator=()

const property& operator= ( const T &  oValue)
inline

value assignment

Parameters
oValue[in] Value of the property

Definition at line 292 of file property.h.

References property< T >::m_oValue.

◆ operator==() [1/2]

bool operator== ( const property< T > &  oProperty) const
inline

compare operator

Parameters
oProperty[in] property to compare to
Return values
trueThe value (only the value!) is equal.
falseThe value (only the value!) is not equal.

Definition at line 304 of file property.h.

References property< T >::GetValueT(), and property< T >::m_oValue.

◆ operator==() [2/2]

bool operator== ( const T &  oValue) const
inline

compare operator

Parameters
oValue[in] value to compare to
Return values
trueThe value (only the value!) is equal.
falseThe value (only the value!) is not equal.

Definition at line 315 of file property.h.

References property< T >::m_oValue.

◆ Set()

tResult Set ( const property< T > &  oProperty)
inline

Sets the property value and name as COPY of oProperty.

Also every Subproperty is copied. If the oProperty has attached properties they will be referenced.

Returns
Standard Result Code

Definition at line 336 of file property.h.

References object_ptr< T >::Get(), cPropertyBase::GetProperties(), property< T >::m_oValue, and RETURN_NOERROR.

Referenced by property< T >::property(), and property< T >::operator=().