Anklang 0.3.0-460-gc4ef46ba
ASE — Anklang Sound Engine (C++)

« « « Anklang Documentation
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
Ase::Gadget Class Referenceabstract

Base type for classes that have a Property. More...

#include "api.hh"

Inheritance diagram for Ase::Gadget:
[legend]

Public Member Functions

virtual GadgetImpl_parent () const =0
 Retrieve parent container.
 
virtual void _set_parent (GadgetImpl *parent)=0
 Assign parent container.
 
ProjectImpl_project () const
 Find Project in parent ancestry.
 
virtual String get_name () const =0
 
virtual void set_name (const std::string &n)=0
 
virtual String type_nick () const =0
 
virtual StringS list_properties ()
 List all property identifiers.
 
virtual PropertyP access_property (String ident)
 Retrieve handle for a Property.
 
virtual PropertyS access_properties ()=0
 Retrieve handles for all properties.
 
Value get_value (String ident)
 Get native property value.
 
bool set_value (String ident, const Value &v)
 
virtual bool set_data (const String &key, const Value &v)=0
 Assign session data, prefix ephemerals with '_'.
 
virtual Value get_data (const String &key) const =0
 Retrieve session data.
 
- Public Member Functions inherited from Ase::Emittable
virtual void emit_event (const String &type, const String &detail, const ValueR fields={})=0
 
virtual void emit_notify (const String &detail)=0
 
void js_trigger (const String &eventselector, JsTrigger callback)
 
- Public Member Functions inherited from std::enable_shared_from_this< SharedBase >
enable_shared_from_this (T... args)
 
operator= (T... args)
 
shared_from_this (T... args)
 
weak_from_this (T... args)
 
~enable_shared_from_this (T... args)
 

Public Attributes

Member<&Gadget::get_name,&Gadget::set_name > name
 
- Public Attributes inherited from Ase::Emittable
const EventHandlereventhandler
 

Detailed Description

Base type for classes that have a Property.

Definition at line 177 of file api.hh.

Constructor & Destructor Documentation

◆ Gadget()

Ase::Gadget::Gadget ( )
explicitprotected

Definition at line 13 of file gadget.cc.

Member Function Documentation

◆ _parent()

virtual GadgetImpl * Ase::Gadget::_parent ( ) const
pure virtual

Retrieve parent container.

Implemented in Ase::GadgetImpl.

Referenced by _project(), Ase::Device::_track(), and Ase::NativeDeviceImpl::remove_device().

◆ _project()

ProjectImpl * Ase::Gadget::_project ( ) const

Find Project in parent ancestry.

Definition at line 168 of file gadget.cc.

References _parent().

◆ _set_parent()

virtual void Ase::Gadget::_set_parent ( GadgetImpl parent)
pure virtual

◆ access_properties()

virtual PropertyS Ase::Gadget::access_properties ( )
pure virtual

Retrieve handles for all properties.

Implemented in Ase::ClapDeviceImpl, Ase::GadgetImpl, and Ase::NativeDeviceImpl.

◆ access_property()

PropertyP Ase::Gadget::access_property ( String  ident)
virtual

Retrieve handle for a Property.

Definition at line 188 of file gadget.cc.

◆ get_data()

virtual Value Ase::Gadget::get_data ( const String key) const
pure virtual

Retrieve session data.

Implemented in Ase::GadgetImpl, and Ase::ServerImpl.

◆ get_value()

Value Ase::Gadget::get_value ( String  ident)

Get native property value.

Definition at line 197 of file gadget.cc.

◆ list_properties()

StringS Ase::Gadget::list_properties ( )
virtual

List all property identifiers.

Definition at line 177 of file gadget.cc.

References std::vector::push_back(), and std::vector::reserve().

◆ set_data()

virtual bool Ase::Gadget::set_data ( const String key,
const Value v 
)
pure virtual

Assign session data, prefix ephemerals with '_'.

Implemented in Ase::GadgetImpl, and Ase::ServerImpl.

◆ set_value()

bool Ase::Gadget::set_value ( String  ident,
const Value v 
)

Set native property value.

Definition at line 204 of file gadget.cc.

Member Data Documentation

◆ name

Member<&Gadget::get_name,&Gadget::set_name> Ase::Gadget::name

Definition at line 199 of file api.hh.


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