Inviwo  0.9.10.1
Inviwo documentation
inviwo::TemplateProperty< T > Class Template Referenceabstract

#include <templateproperty.h>

+ Inheritance diagram for inviwo::TemplateProperty< T >:

Public Types

using value_type = T
 

Public Member Functions

 TemplateProperty (const std::string &identifier, const std::string &displayName, const T &value=T(), InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default)
 
TemplateProperty< T > & operator= (const T &value)
 
virtual TemplateProperty< T > * clone () const override=0
 
virtual operator T & ()
 
virtual operator const T & () const
 
virtual T & get ()
 
virtual const T & get () const
 
const T & operator * () const
 
T & operator * ()
 
const T * operator-> () const
 
T * operator-> ()
 
virtual void set (const T &value)
 
void set (const TemplateProperty< T > *srcProperty)
 
virtual void set (const Property *srcProperty) override
 
virtual TemplateProperty & setCurrentStateAsDefault () override
 
virtual TemplateProperty & resetToDefaultState () override
 
virtual void serialize (Serializer &s) const override
 
virtual void deserialize (Deserializer &d) override
 
- Public Member Functions inherited from inviwo::Property
virtual std::string getClassIdentifier () const =0
 
 Property (const std::string &identifier="", const std::string &displayName="", InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default)
 
virtual ~Property ()
 Removes itself from its PropertyOwner.
 
virtual Property & setIdentifier (const std::string &identifier)
 
virtual std::string getIdentifier () const
 
virtual std::vector< std::string > getPath () const
 
virtual Property & setDisplayName (const std::string &displayName)
 A property's name displayed to the user.
 
virtual std::string getDisplayName () const
 
virtual std::string getClassIdentifierForWidget () const
 Returns which property's widget should be used when the WidgetFactory tries to create a widget. Defaults to getClassIdentifier(), should only be overridden if a subclass want to reuse another property's widget.
 
virtual Property & setSemantics (const PropertySemantics &semantics)
 
virtual PropertySemantics getSemantics () const
 
virtual Property & setReadOnly (bool value)
 Enable or disable editing of property.
 
virtual bool getReadOnly () const
 
virtual Property & setInvalidationLevel (InvalidationLevel invalidationLevel)
 
virtual InvalidationLevel getInvalidationLevel () const
 
virtual void setOwner (PropertyOwner *owner)
 
PropertyOwner * getOwner ()
 
const PropertyOwner * getOwner () const
 
void registerWidget (PropertyWidget *propertyWidget)
 
void deregisterWidget (PropertyWidget *propertyWidget)
 
const std::vector< PropertyWidget * > & getWidgets () const
 
void setInitiatingWidget (PropertyWidget *propertyWidget)
 
void clearInitiatingWidget ()
 
bool hasWidgets () const
 
virtual Property & propertyModified ()
 
virtual void setValid ()
 
virtual Property & setModified ()
 
virtual bool isModified () const
 
std::shared_ptr< std::function< void()> > onChangeScoped (std::function< void()> callback)
 
const BaseCallBack * onChange (std::function< void()> callback)
 
void removeOnChange (const BaseCallBack *callback)
 
template<typename T >
const BaseCallBack * onChange (T *object, void(T::*method)())
 
template<typename T >
void removeOnChange (T *object)
 
virtual Property & setUsageMode (UsageMode usageMode)
 
virtual UsageMode getUsageMode () const
 
virtual void setSerializationMode (PropertySerializationMode mode)
 
virtual PropertySerializationMode getSerializationMode () const
 
virtual Property & setVisible (bool val)
 
virtual bool getVisible () const
 
template<typename P , typename DecisionFunc >
Property & visibilityDependsOn (P &prop, DecisionFunc callback)
 
template<typename P , typename DecisionFunc >
Property & readonlyDependsOn (P &prop, DecisionFunc callback)
 
virtual Document getDescription () const
 
template<typename P >
Property & autoLinkToProperty (const std::string &propertyPath)
 
const std::vector< std::pair< std::string, std::string > > & getAutoLinkToProperty () const
 
- Public Member Functions inherited from inviwo::Observable< PropertyObserver >
 Observable (const Observable< PropertyObserver > &other)
 
 Observable (Observable< PropertyObserver > &&other)
 
Observable< PropertyObserver > & operator= (const Observable< PropertyObserver > &other)
 
Observable< PropertyObserver > & operator= (Observable< PropertyObserver > &&other)
 
void addObserver (PropertyObserver *observer)
 
void removeObserver (PropertyObserver *observer)
 
virtual void startBlockingNotifications () override final
 
virtual void stopBlockingNotifications () override final
 
- Public Member Functions inherited from inviwo::MetaDataOwner
 MetaDataOwner (const MetaDataOwner &rhs)=default
 
MetaDataOwner & operator= (const MetaDataOwner &rhs)=default
 
void copyMetaDataFrom (const MetaDataOwner &src)
 
void copyMetaDataTo (MetaDataOwner &dst)
 
template<typename T >
T * createMetaData (const std::string &key)
 
template<typename T , typename U >
void setMetaData (const std::string &key, U value)
 
template<typename T >
bool unsetMetaData (const std::string &key)
 unset, i.e. remove the metadata entry matching the given key and type More...
 
template<typename T , typename U >
U getMetaData (const std::string &key, U val) const
 
template<typename T >
T * getMetaData (const std::string &key)
 
template<typename T >
const T * getMetaData (const std::string &key) const
 
MetaDataMap * getMetaDataMap ()
 
const MetaDataMap * getMetaDataMap () const
 
template<typename T >
bool hasMetaData (const std::string &key) const
 

Protected Member Functions

 TemplateProperty (const TemplateProperty &rhs)=default
 
- Protected Member Functions inherited from inviwo::Property
 Property (const Property &rhs)
 
Property & operator= (const Property &that)=delete
 
void updateWidgets ()
 
void notifyAboutChange ()
 
- Protected Member Functions inherited from inviwo::PropertyObservable
void notifyObserversOnSetIdentifier (Property *property, const std::string &identifier)
 
void notifyObserversOnSetDisplayName (Property *property, const std::string &displayName)
 
void notifyObserversOnSetSemantics (Property *property, const PropertySemantics &semantics)
 
void notifyObserversOnSetReadOnly (Property *property, bool readonly)
 
void notifyObserversOnSetVisible (Property *property, bool visible)
 
void notifyObserversOnSetUsageMode (Property *property, UsageMode usageMode)
 
- Protected Member Functions inherited from inviwo::Observable< PropertyObserver >
void forEachObserver (C callback)
 
- Protected Member Functions inherited from inviwo::ObservableInterface
void addObservationHelper (Observer *observer)
 
void removeObservationHelper (Observer *observer)
 

Protected Attributes

ValueWrapper< T > value_
 
- Protected Attributes inherited from inviwo::Property
CallBackList onChangeCallback_
 
PropertySerializationMode serializationMode_
 
- Protected Attributes inherited from inviwo::MetaDataOwner
MetaDataMap metaData_
 

Additional Inherited Members

- Static Public Member Functions inherited from inviwo::Property
template<typename T , typename U >
static void setStateAsDefault (T &property, const U &state)
 

Detailed Description

template<typename T>
class inviwo::TemplateProperty< T >

A property holding single value type. The type needs to support copy construction and assignment.

Member Function Documentation

◆ clone()

◆ resetToDefaultState()

◆ set()

◆ setCurrentStateAsDefault()

template<typename T >
TemplateProperty< T > & inviwo::TemplateProperty< T >::setCurrentStateAsDefault ( )
overridevirtual

The documentation for this class was generated from the following file: