Caffa  1.1.0
C++ Application Framework for Embedded Systems with introspection
Public Member Functions | Protected Member Functions | Friends | List of all members
caffa::FieldHandle Class Referenceabstract

Base class for all fields, making it possible to handle them generically. More...

#include <cafFieldHandle.h>

Inheritance diagram for caffa::FieldHandle:
Inheritance graph
[legend]

Public Member Functions

std::string keyword () const
 
ObjectHandleownerObject ()
 
const ObjectHandleownerObject () const
 
virtual std::string dataType () const =0
 
void addCapability (std::unique_ptr< FieldCapability > capability)
 
template<typename CapabilityType >
CapabilityType * capability ()
 
template<typename CapabilityType >
const CapabilityType * capability () const
 
virtual void accept (Inspector *visitor) const =0
 
virtual void accept (Editor *visitor)=0
 
virtual bool isReadable () const =0
 
virtual bool isWritable () const =0
 
bool isDeprecated () const
 
void markDeprecated ()
 
void setDocumentation (const std::string &documentation)
 
const std::string & documentation () const
 

Protected Member Functions

bool isInitialized () const
 
std::list< FieldCapability * > capabilities ()
 

Friends

class ObjectHandle
 

Detailed Description

Base class for all fields, making it possible to handle them generically.

Member Function Documentation

◆ accept() [1/2]

virtual void caffa::FieldHandle::accept ( Inspector visitor) const
pure virtual

Accept the visit by an inspecting visitor

Parameters
visitor

Implemented in caffa::ChildFieldBaseHandle, and caffa::DataField.

◆ accept() [2/2]

virtual void caffa::FieldHandle::accept ( Editor visitor)
pure virtual

Accept the visit by an editing visitor

Parameters
visitor

Implemented in caffa::ChildFieldBaseHandle, and caffa::DataField.

◆ isReadable()

virtual bool caffa::FieldHandle::isReadable ( ) const
pure virtual

◆ isWritable()

virtual bool caffa::FieldHandle::isWritable ( ) const
pure virtual

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