libqi-api  release-2.5.3-2016-11-18
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
qi::GenericProperty Class Reference

Type-erased property, simulating a typed property but using AnyValue. More...

#include <property.hpp>

Public Member Functions

 GenericProperty (TypeInterface *type, Getter getter=Getter(), Setter setter=Setter())
 
GenericPropertyoperator= (const AnyValue &v)
 
FutureSync< void > setValue (AutoAnyReference value) override
 
FutureSync< void > set (const AnyValue &v) override
 
qi::Signature signature () const override
 
- Public Member Functions inherited from qi::Property< AnyValue >
 Property (Getter getter=Getter(), Setter setter=Setter(), SignalBase::OnSubscribers onsubscribe=SignalBase::OnSubscribers())
 
 Property (AutoAnyReference defaultValue, Getter getter=Getter(), Setter setter=Setter(), SignalBase::OnSubscribers onsubscribe=SignalBase::OnSubscribers())
 
Property< AnyValue > & operator= (const AnyValue &v)
 
FutureSync< AnyValueget () const override
 
FutureSync< void > set (const AnyValue &v) override
 
SignalBasesignal () override
 
FutureSync< void > setValue (AutoAnyReference value) override
 
FutureSync< AnyValuevalue () const override
 
ScopedLockReadWrite getLockedReadWrite ()
 
ScopedLockReadOnly getLockedReadOnly () const
 
- Public Member Functions inherited from qi::PropertyImpl< AnyValue >
 PropertyImpl (Getter getter=Getter(), Setter setter=Setter(), SignalBase::OnSubscribers onsubscribe=SignalBase::OnSubscribers())
 
 PropertyImpl (AutoAnyReference defaultValue, Getter getter=Getter(), Setter setter=Setter(), SignalBase::OnSubscribers onsubscribe=SignalBase::OnSubscribers())
 
PropertyImpl< AnyValue > & operator= (const AnyValue &v)
 
- Public Member Functions inherited from qi::SignalF< void(const AnyValue &)>
 SignalF (OnSubscribers onSubscribers=OnSubscribers())
 
SignalSubscriberconnect (...)
 
- Public Member Functions inherited from qi::SignalBase
 SignalBase (const Signature &signature, OnSubscribers onSubscribers=OnSubscribers())
 
 SignalBase (OnSubscribers onSubscribers=OnSubscribers())
 
virtual ~SignalBase ()
 
template<typename F >
SignalSubscriberconnect (boost::function< F > func)
 
SignalSubscriberconnect (const SignalSubscriber &s)
 
SignalSubscriberconnect (AnyObject object, const unsigned int slot)
 
SignalSubscriberconnect (AnyObject object, const std::string &slot)
 
bool disconnectAll ()
 
bool asyncDisconnectAll ()
 
bool disconnect (const SignalLink &link)
 
bool asyncDisconnect (const SignalLink &link)
 
virtual void trigger (const GenericFunctionParameters &params, MetaCallType callType=MetaCallType_Auto)
 
void setCallType (MetaCallType callType)
 Set the MetaCallType used by operator()(). More...
 
void operator() (qi::AutoAnyReference p1=qi::AutoAnyReference(), qi::AutoAnyReference p2=qi::AutoAnyReference(), qi::AutoAnyReference p3=qi::AutoAnyReference(), qi::AutoAnyReference p4=qi::AutoAnyReference(), qi::AutoAnyReference p5=qi::AutoAnyReference(), qi::AutoAnyReference p6=qi::AutoAnyReference(), qi::AutoAnyReference p7=qi::AutoAnyReference(), qi::AutoAnyReference p8=qi::AutoAnyReference())
 Trigger the signal with given arguments, and call type set by setCallType() More...
 
std::vector< SignalSubscribersubscribers ()
 
bool hasSubscribers ()
 
void _setSignature (const Signature &s)
 
- Public Member Functions inherited from qi::PropertyBase
virtual ~PropertyBase ()=default
 

Additional Inherited Members

- Public Types inherited from qi::Property< AnyValue >
using ImplType = PropertyImpl< AnyValue >
 
using Getter = typename ImplType::Getter
 
using Setter = typename ImplType::Setter
 
- Public Types inherited from qi::PropertyImpl< AnyValue >
using Setter = boost::function< bool(AnyValue &, const AnyValue &)>
 
using Getter = boost::function< AnyValue(const AnyValue &)>
 
using SignalType = SignalF< void(const AnyValue &)>
 
using PropertyType = AnyValue
 
- Public Types inherited from qi::SignalF< void(const AnyValue &)>
using FunctionType = void(const AnyValue &)
 
- Public Types inherited from qi::SignalBase
using OnSubscribers = boost::function< void(bool)>
 
- Public Attributes inherited from qi::SignalBase
boost::shared_ptr
< SignalBasePrivate
_p
 
- Static Public Attributes inherited from qi::SignalBase
static const SignalLink invalidSignalLink
 
- Protected Types inherited from qi::SignalBase
using Trigger = boost::function< void(const GenericFunctionParameters &params, MetaCallType callType)>
 
- Protected Member Functions inherited from qi::PropertyImpl< AnyValue >
AnyValue getImpl () const
 
void setImpl (const AnyValue &v)
 
- Protected Member Functions inherited from qi::SignalBase
void callSubscribers (const GenericFunctionParameters &params, MetaCallType callType=MetaCallType_Auto)
 
void setTriggerOverride (Trigger trigger)
 
void setOnSubscribers (OnSubscribers onSubscribers)
 
void callOnSubscribe (bool v)
 
void createNewTrackLink (int &id, SignalLink *&trackLink)
 
void disconnectTrackLink (int id)
 
- Protected Attributes inherited from qi::PropertyImpl< AnyValue >
Getter _getter
 
Setter _setter
 
AnyValue _value
 

Detailed Description

Type-erased property, simulating a typed property but using AnyValue.

Definition at line 212 of file property.hpp.

Constructor & Destructor Documentation

qi::GenericProperty::GenericProperty ( TypeInterface type,
Getter  getter = Getter(),
Setter  setter = Setter() 
)
inline

Definition at line 215 of file property.hpp.

Member Function Documentation

GenericProperty& qi::GenericProperty::operator= ( const AnyValue v)
inline

Definition at line 224 of file property.hpp.

FutureSync< void > qi::GenericProperty::set ( const AnyValue v)
inlineoverridevirtual

Implements qi::PropertyImpl< AnyValue >.

Definition at line 15 of file property.hxx.

FutureSync<void> qi::GenericProperty::setValue ( AutoAnyReference  value)
inlineoverridevirtual

Implements qi::PropertyBase.

Definition at line 226 of file property.hpp.

qi::Signature qi::GenericProperty::signature ( ) const
inlineoverridevirtual

Reimplemented from qi::SignalF< void(const AnyValue &)>.

Definition at line 228 of file property.hpp.


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