iv::Attr< T > Class Template Referenceabstract
#include <Attribute.hpp>
Public Member Functions | |
Attr (ClientMarker *, AttributeEventProcessor *, bool allow_ModifyMode) | |
T | Get () const |
void | Modify (ClientMarker *modifier, T const &) |
Public Member Functions inherited from iv::Attribute | |
Attribute (ClientMarker *, AttributeEventProcessor *event_processor, bool allow_ModifyMode) | |
ClientMarker * | owner () const |
std::type_index | Type () |
ValueMode | Mode () const |
std::any | GetAny () |
void | ModifyMode (ClientMarker *modifier, Attribute::ValueMode) |
void | ModifyAny (ClientMarker *modifier, std::any) |
void | Insert_Listener (AttributeListener *) |
void | Remove_Listener (AttributeListener *) |
Protected Member Functions | |
virtual void | GetSourceValue (T &out) const =0 |
virtual void | ModifySource (T const &)=0 |
Protected Member Functions inherited from iv::Attribute | |
void | SetAttributeMode (ValueMode) |
void | SourceValueChanged () |
AttributeEventProcessor * | event_processor () |
void | event_processor (AttributeEventProcessor *) |
void | Notify_Activated () |
void | Notify_Deactivated () |
bool | allow_ModifyMode () |
Additional Inherited Members | |
Public Types inherited from iv::Attribute | |
enum | ValueMode { ValueMode::Disabled, ValueMode::Value, ValueMode::ValueModify } |
Detailed Description
template<class T>
class iv::Attr< T >
Definition at line 142 of file Attribute.hpp.
Constructor & Destructor Documentation
◆ Attr()
template<class T >
iv::Attr< T >::Attr | ( | ClientMarker * | cm, |
AttributeEventProcessor * | processor, | ||
bool | allow_ModifyMode | ||
) |
Definition at line 5 of file Attribute.inl.
Member Function Documentation
◆ Get()
template<class T >
T iv::Attr< T >::Get |
Definition at line 11 of file Attribute.inl.
◆ Modify()
template<class T >
void iv::Attr< T >::Modify | ( | ClientMarker * | modifier, |
T const & | val | ||
) |
Definition at line 19 of file Attribute.inl.
◆ GetSourceValue()
template<class T >
|
protectedpure virtual |
Implemented in iv::SharedAttr_I< T >, and iv::FunctorActivatorAttribute.
◆ ModifySource()
template<class T >
|
protectedpure virtual |
This should call Attr< T >::SourceValueChanged after the value is changed (can be skipped if value is the same or if the changes were not applied for some reason).
Implemented in iv::SharedAttr_I< T >, and iv::FunctorActivatorAttribute.
The documentation for this class was generated from the following files:
- ivorium_core/Attribute/Attribute.hpp
- ivorium_core/Attribute/Attribute.inl