Skip to content

Class Ase::GadgetImpl

ClassList > Ase > GadgetImpl

Base type for classes that have a Property .

  • #include <gadget.hh>

Inherits the following classes: Ase::ObjectImpl, Ase::CustomDataContainer, Ase::Gadget, Ase::Serializable

Inherited by the following classes: Ase::ClapPluginHandle, Ase::ClipImpl, Ase::DeviceImpl, Ase::MonitorImpl, Ase::ServerImpl

Public Types

Type Name
typedef std::function< bool(GadgetImpl *, const Value *, Value *)> MemberAccessF
typedef bool(*)(const SharedBase &) MemberClassT
typedef const StringS &(*)() MemberInfosP

Public Attributes inherited from Ase::Gadget

See Ase::Gadget

Type Name
Member<&Gadget::name_ > name

Public Functions

Type Name
virtual GadgetImpl * _parent () override const
Retrieve parent container.
void _register_parameter (O * obj, M * memb, const Param::ExtraVals & ev) const
virtual void _set_parent (GadgetImpl * parent) override
Assign parent container.
virtual PropertyS access_properties () override
Retrieve handles for all properties.
virtual Value get_data (const String & key) override const
Retrieve session data.
virtual bool set_data (const String & key, const Value & v) override
Assign session data, prefix ephemerals with '_'.
virtual String type_nick () override const

Public Functions inherited from Ase::EmittableImpl

See Ase::EmittableImpl

Type Name
virtual void emit_event (const String & type, const String & detail, const ValueR fields={}) override
virtual void emit_notify (const String & detail) override
Emit notify:detail , multiple notifications maybe coalesced if a CoalesceNotifies instance exists.
virtual ASE_USE_RESULT Connection on_event (const String & eventselector, const EventHandler & eventhandler) override

Public Functions inherited from Ase::Emittable

See Ase::Emittable

Type Name
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)
virtual ASE_USE_RESULT Connection on_event (const String & eventselector, const EventHandler & eventhandler) = 0

Public Functions inherited from Ase::Emittable

See Ase::Emittable

Type Name
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)
virtual ASE_USE_RESULT Connection on_event (const String & eventselector, const EventHandler & eventhandler) = 0

Public Functions inherited from Ase::CustomDataContainer

See Ase::CustomDataContainer

Type Name
bool del_custom_data (CustomDataKey< T > * key)
Delete the current contents of the custom keyed data member, invokes DataKey::destroy.
T get_custom_data (CustomDataKey< T > * key) const
Retrieve contents of the custom keyed data member, returns DataKey::fallback if nothing was set.
bool has_custom_data (CustomDataKey< T > * key) const
Retrieve wether contents of the custom keyed data member exists.
void set_custom_data (CustomDataKey< T > * key, T data)
Assign data to the custom keyed data member, deletes any previously set data.

Public Functions inherited from Ase::Gadget

See Ase::Gadget

Type Name
virtual GadgetImpl * _parent () const = 0
Retrieve parent container.
ProjectImpl * _project () const
Find Project in parent ancestry.
virtual void _set_parent (GadgetImpl * parent) = 0
Assign parent container.
virtual PropertyS access_properties () = 0
Retrieve handles for all properties.
virtual PropertyP access_property (String ident)
Retrieve handle for a Property .
virtual Value get_data (const String & key) const = 0
Retrieve session data.
Value get_value (String ident)
Get native property value.
virtual StringS list_properties ()
List all property identifiers.
virtual bool set_data (const String & key, const Value & v) = 0
Assign session data, prefix ephemerals with '_'.
bool set_value (String ident, const Value & v)
virtual String type_nick () const = 0

Public Functions inherited from Ase::Emittable

See Ase::Emittable

Type Name
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)
virtual ASE_USE_RESULT Connection on_event (const String & eventselector, const EventHandler & eventhandler) = 0

Protected Types

Type Name
enum uint64_t GadgetImpl

Protected Attributes

Type Name
PropertyImplS props_

Protected Functions

Type Name
virtual void create_properties ()
virtual String fallback_name () const
uint64_t gadget_flags () const
uint64_t gadget_flags (uint64_t setbits, uint64_t mask=~uint64_t(0))
virtual bool name_ (const std::string * n, std::string * q) override
virtual void serialize (WritNode & xs) override
Serialize members and childern.
virtual ~GadgetImpl ()

Protected Functions inherited from Ase::ObjectImpl

See Ase::ObjectImpl

Type Name
virtual ~ObjectImpl () = 0

Protected Functions inherited from Ase::EmittableImpl

See Ase::EmittableImpl

Type Name
virtual ~EmittableImpl ()

Protected Functions inherited from Ase::VirtualBase

See Ase::VirtualBase

Type Name
virtual ~VirtualBase () noexcept = 0

Protected Functions inherited from Ase::Object

See Ase::Object

Type Name
virtual ~Object () = 0

Protected Functions inherited from Ase::VirtualBase

See Ase::VirtualBase

Type Name
virtual ~VirtualBase () noexcept = 0

Protected Functions inherited from Ase::CustomDataContainer

See Ase::CustomDataContainer

Type Name
void custom_data_destroy ()
~CustomDataContainer ()

Protected Functions inherited from Ase::Gadget

See Ase::Gadget

Type Name
Gadget ()
virtual bool name_ (const std::string * n, std::string * q) = 0

Protected Functions inherited from Ase::Object

See Ase::Object

Type Name
virtual ~Object () = 0

Protected Functions inherited from Ase::VirtualBase

See Ase::VirtualBase

Type Name
virtual ~VirtualBase () noexcept = 0

Protected Functions inherited from Ase::Serializable

See Ase::Serializable

Type Name
virtual void serialize (WritNode & xs) = 0
Serialize members and childern.

Protected Functions inherited from Ase::VirtualBase

See Ase::VirtualBase

Type Name
virtual ~VirtualBase () noexcept = 0

Protected Static Functions

Type Name
String canonify_key (const String & input)

Public Types Documentation

typedef MemberAccessF

using Ase::GadgetImpl::MemberAccessF =  std::function<bool(GadgetImpl*,const Value*,Value*)>;

typedef MemberClassT

using Ase::GadgetImpl::MemberClassT =  bool (*) (const SharedBase&);

typedef MemberInfosP

using Ase::GadgetImpl::MemberInfosP =  const StringS& (*) ();

Public Functions Documentation

function _parent

inline virtual GadgetImpl * Ase::GadgetImpl::_parent () override const

Implements Ase::Gadget::_parent


function _register_parameter

template<class O, class M>
void Ase::GadgetImpl::_register_parameter (
    O * obj,
    M * memb,
    const Param::ExtraVals & ev
) const

function _set_parent

virtual void Ase::GadgetImpl::_set_parent (
    GadgetImpl * parent
) override

Implements Ase::Gadget::_set_parent


function access_properties

virtual PropertyS Ase::GadgetImpl::access_properties () override

Implements Ase::Gadget::access_properties


function get_data

virtual Value Ase::GadgetImpl::get_data (
    const String & key
) override const

Implements Ase::Gadget::get_data


function set_data

virtual bool Ase::GadgetImpl::set_data (
    const String & key,
    const Value & v
) override

Implements Ase::Gadget::set_data


function type_nick

virtual String Ase::GadgetImpl::type_nick () override const

Implements Ase::Gadget::type_nick


Protected Types Documentation

enum GadgetImpl

enum Ase::GadgetImpl::GadgetImpl {
    GADGET_DESTROYED = 0x1,
    DEVICE_ACTIVE = 0x2,
    MASTER_TRACK = 0x4
};

Protected Attributes Documentation

variable props_

PropertyImplS Ase::GadgetImpl::props_;

Protected Functions Documentation

function create_properties

virtual void Ase::GadgetImpl::create_properties () 

function fallback_name

virtual String Ase::GadgetImpl::fallback_name () const

function gadget_flags [1/2]

inline uint64_t Ase::GadgetImpl::gadget_flags () const

function gadget_flags [2/2]

uint64_t Ase::GadgetImpl::gadget_flags (
    uint64_t setbits,
    uint64_t mask=~uint64_t(0)
) 

function name_

virtual bool Ase::GadgetImpl::name_ (
    const std::string * n,
    std::string * q
) override

Implements Ase::Gadget::name_


function serialize

virtual void Ase::GadgetImpl::serialize (
    WritNode & xs
) override

Implements Ase::Serializable::serialize


function ~GadgetImpl

virtual Ase::GadgetImpl::~GadgetImpl () 

Protected Static Functions Documentation

function canonify_key

static String Ase::GadgetImpl::canonify_key (
    const String & input
) 


The documentation for this class was generated from the following file /__w/anklang/anklang/ase/gadget.hh