|
quarx
high performance processing frameworks of interconnectable DSP modules
|
base clase - abstracts from value inheritance More...
#include <qx.h>
Inheritance diagram for qx::node:
Collaboration diagram for qx::node:Public Types | |
| typedef std::deque< std::shared_ptr< node > > | container |
| typedef promoted< std::string > | promoted |
Public Member Functions | |
| void | clear () noexcept |
| virtual std::shared_ptr< node > | clone (node *parent) const =0 |
| virtual const char * | id () const noexcept |
| void | ignore (promoted *value) noexcept |
| virtual bool | inherits (const char *type) const noexcept |
| node (const std::string &key, node *parent=nullptr, const decltype(attributes)&attributes={}) | |
| void | obey (const std::initializer_list< promoted * > &values, bool initial_update=true) noexcept |
| void | obey (promoted *value, bool initial_update=true) noexcept |
| template<typename node_t , typename petty_t = node_t, typename = enable_if_base_of <node, node_t>> | |
| operator const node_t & () const | |
| template<typename value_t , typename = enable_if_value<value_t>> | |
| operator const value_t & () const | |
| template<typename node_t , typename petty_t = node_t, typename = enable_if_base_of <node, node_t>> | |
| operator node_t & () | |
| node derivate linkage explicit assignment (i.e. node= &out) More... | |
| template<typename value_t , typename = enable_if_value<value_t>> | |
| operator value_t & () | |
| template<typename value_t , typename = enable_if_value<value_t>> | |
| std::decay_t< value_t > & | operator* () |
| template<typename value_t , typename = enable_if_value<value_t>> | |
| const std::decay_t< value_t > & | operator* () const |
| template<typename value_t , typename = enable_if_value<value_t>> | |
| void | operator= (const value_t &value) |
| anticipated value assignment with throwing casts More... | |
| template<typename value_t , typename = enable_if_value<value_t>> | |
| bool | operator== (const std::decay_t< value_t > &value) const |
| virtual node & | operator[] (const std::string &key) const =0 |
| virtual node & | operator[] (size_t pos) const =0 |
| void | remove () |
| virtual void | remove (const promoted &) noexcept |
| indicate promoted end-of-lifetime More... | |
| virtual node & | resize (size_t) |
| void | trigger () noexcept |
| virtual | ~node ()=default |
Static Public Member Functions | |
| static bool | static_inherits (const char *type) noexcept |
Public Attributes | |
| attributes | attributes |
| promoted | key |
| name of node More... | |
| node * | parent = nullptr |
| promoted | path |
| entire path of node in process network More... | |
| std::set< promoted * > | values |
Static Public Attributes | |
| static constexpr auto | type = "node" |
| generic node type ID More... | |
Protected Types | |
| template<typename base_t , typename derrived_t > | |
| using | enable_if_base_of = std::enable_if_t< std::is_base_of_v< std::decay_t< base_t >, std::decay_t< derrived_t > >> |
| template<typename value_t > | |
| using | enable_if_value = std::enable_if_t< std::is_same_v< std::decay_t< value_t >, int32_t >||std::is_same_v< std::decay_t< value_t >, double >||std::is_same_v< std::decay_t< value_t >, node * > > |
base clase - abstracts from value inheritance
| typedef std::deque<std::shared_ptr<node> > qx::node::container |
|
protected |
|
protected |
|
inherited |
| qx::node::node | ( | const std::string & | key, |
| node * | parent = nullptr, |
||
| const decltype(attributes)& | attributes = {} |
||
| ) |
|
virtualdefault |
|
inlinenoexceptinherited |
|
inlinevirtualnoexcept |
|
inlinenoexceptinherited |
|
inlinevirtualnoexcept |
|
inlinenoexceptinherited |
|
inlinenoexceptinherited |
|
inline |
|
inline |
|
inline |
node derivate linkage explicit assignment (i.e. node= &out)
|
inline |
|
inline |
|
inline |
|
inline |
anticipated value assignment with throwing casts
|
inline |
|
pure virtual |
Implemented in qx::quarx< value_t >, qx::quarx< node * >, and qx::quarx< node::container >.
|
pure virtual |
Implemented in qx::quarx< value_t >, qx::quarx< node * >, and qx::quarx< node::container >.
| void qx::node::remove | ( | ) |
|
inlinevirtualnoexceptinherited |
indicate promoted end-of-lifetime
|
inlinevirtual |
Reimplemented in qx::monitor, qx::mix, qx::mix::bus, qx::generator, qx::generator::voice, qx::delay, qx::delay::in, qx::container, and qx::container.
|
inlinestaticnoexcept |
|
inlinenoexceptinherited |
| attributes qx::node::attributes |
| promoted qx::node::key |
name of node
| node* qx::node::parent = nullptr |
| promoted qx::node::path |
entire path of node in process network
|
staticconstexpr |
generic node type ID
|
inherited |
| (c) copyright 2009 dynamic acoustics e.U. | generated on Fri Dec 17 2021 |