quarx
high performance processing frameworks of interconnectable DSP modules
|
base clase - abstracts from value inheritance More...
#include <qx.h>
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 |