Kanzi Framework  3.9.0
Kanzi Engine API
kanzi::BindingSourceRuntime Class Referenceabstract

Binding source runtime interface. More...

#include <kanzi/core.ui/binding/binding_source_runtime.hpp>

Inheritance diagram for kanzi::BindingSourceRuntime:
[legend]

Public Types

typedef BindingProcessorContainer::const_iterator BindingProcessorConstIterator
 Binding processor iterator type. More...
 
typedef vector< BindingProcessorSharedPtrBindingProcessorContainer
 Binding processor container type. More...
 

Public Member Functions

void attachForRead ()
 Attaches the binding source runtime for reading. More...
 
void attachForWrite ()
 Attaches the binding source runtime for writing. More...
 
BindingProcessorConstIterator beginProcessors () const
 Gets an iterator to the beginning of binding processors. More...
 
void copyBindingProcessors (const AbstractBinding &binding)
 Copies forward direction processors from a binding. More...
 
void detach ()
 Detaches the binding source runtime. More...
 
BindingProcessorConstIterator endProcessors () const
 Gets an iterator to the end of binding processors. More...
 
BindingLookupContextgetLookupContext () const
 Accesses source lookup context. More...
 
bool isConnected ()
 Indicates whether this source is connected. More...
 
bool read (Variant &value)
 Reads a value from binding source. More...
 
void setBindingRuntime (AbstractBindingRuntime &bindingRuntime)
 Sets the binding runtime. More...
 
bool write (const Variant &value)
 Writes a value to binding source. More...
 
virtual ~BindingSourceRuntime ()
 Destructor. More...
 

Protected Member Functions

virtual void attachForReadOverride ()=0
 Implementation-dependent attach for read. More...
 
virtual void attachForWriteOverride ()=0
 Implementation-dependent attach for write. More...
 
 BindingSourceRuntime (BindingLookupContextPtr lookupContext)
 Constructor. More...
 
virtual void detachOverride ()=0
 Implementation-dependent detach. More...
 
virtual bool isConnectedOverride ()=0
 Implementation-dependent connected check. More...
 
virtual bool readOverride (Variant &value)=0
 Implementation-dependent read. More...
 
virtual bool writeOverride (const Variant &value)
 Implementation-dependent write. More...
 

Protected Attributes

AbstractBindingRuntimem_bindingRuntime
 Abstract binding runtime for this source. More...
 
BindingLookupContextPtr m_lookupContext
 Binding lookup context for wherever this binding source runtime is attached to. More...
 
BindingProcessorContainer m_processors
 Binding processors (for the source, forward direction). More...
 

Detailed Description

Binding source runtime interface.

Inherited by specialized binding source runtimes.

See also
BindingSource
Since
Kanzi 3.7.0

Member Typedef Documentation

◆ BindingProcessorContainer

◆ BindingProcessorConstIterator

typedef BindingProcessorContainer::const_iterator kanzi::BindingSourceRuntime::BindingProcessorConstIterator

Binding processor iterator type.

Constructor & Destructor Documentation

◆ ~BindingSourceRuntime()

virtual kanzi::BindingSourceRuntime::~BindingSourceRuntime ( )
inlinevirtual

Destructor.

◆ BindingSourceRuntime()

kanzi::BindingSourceRuntime::BindingSourceRuntime ( BindingLookupContextPtr  lookupContext)
inlineexplicitprotected

Constructor.

Parameters
lookupContextLookup context for this binding source runtime.

Member Function Documentation

◆ attachForRead()

void kanzi::BindingSourceRuntime::attachForRead ( )

Attaches the binding source runtime for reading.

After attaching the binding source runtime for reading, the binding source triggers calls to AbstractBindingRuntime::notifySourceChanged(). Calling this function on binding sources is optional. Most bindings need source write notifications, and the binding runtime calls this function. You must call attachForWrite() before calling this function.

◆ attachForWrite()

void kanzi::BindingSourceRuntime::attachForWrite ( )

Attaches the binding source runtime for writing.

After this function is called and the target is connected, you can call the write() function to write the values to the source. You must call this function before calling attachForRead().

◆ detach()

void kanzi::BindingSourceRuntime::detach ( )

Detaches the binding source runtime.

◆ read()

bool kanzi::BindingSourceRuntime::read ( Variant value)

Reads a value from binding source.

Parameters
valueOutput parameter for value read.
Returns
Write success status.

◆ write()

bool kanzi::BindingSourceRuntime::write ( const Variant value)

Writes a value to binding source.

Parameters
valueValue to write.
Returns
Write success status.

◆ isConnected()

bool kanzi::BindingSourceRuntime::isConnected ( )

Indicates whether this source is connected.

Returns
If the source is connected, true, otherwise false.

◆ copyBindingProcessors()

void kanzi::BindingSourceRuntime::copyBindingProcessors ( const AbstractBinding binding)

Copies forward direction processors from a binding.

The processors are cloned inside the source runtime.

Parameters
bindingThe binding from which to copy the processors.

◆ beginProcessors()

BindingProcessorConstIterator kanzi::BindingSourceRuntime::beginProcessors ( ) const
inline

Gets an iterator to the beginning of binding processors.

Returns
Iterator to beginning of processor array.

◆ endProcessors()

BindingProcessorConstIterator kanzi::BindingSourceRuntime::endProcessors ( ) const
inline

Gets an iterator to the end of binding processors.

Returns
Iterator to end of processor array.

◆ getLookupContext()

BindingLookupContext& kanzi::BindingSourceRuntime::getLookupContext ( ) const
inline

Accesses source lookup context.

◆ setBindingRuntime()

void kanzi::BindingSourceRuntime::setBindingRuntime ( AbstractBindingRuntime bindingRuntime)
inline

Sets the binding runtime.

This function is called during construction, after setting the source runtime to the binding runtime.

Parameters
bindingRuntimeBinding runtime to set.

◆ attachForReadOverride()

◆ attachForWriteOverride()

◆ detachOverride()

◆ readOverride()

◆ writeOverride()

◆ isConnectedOverride()

Member Data Documentation

◆ m_processors

BindingProcessorContainer kanzi::BindingSourceRuntime::m_processors
protected

Binding processors (for the source, forward direction).

◆ m_bindingRuntime

AbstractBindingRuntime* kanzi::BindingSourceRuntime::m_bindingRuntime
protected

Abstract binding runtime for this source.

◆ m_lookupContext

BindingLookupContextPtr kanzi::BindingSourceRuntime::m_lookupContext
protected

Binding lookup context for wherever this binding source runtime is attached to.


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