quarx
high performance processing frameworks of interconnectable DSP modules
qx::generator::voice::phase Class Referenceabstract

#include <qx_module.h>

+ Inheritance diagram for qx::generator::voice::phase:
+ Collaboration diagram for qx::generator::voice::phase:

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< nodeclone (node *parent) const =0
 
void erase (node *)
 
virtual const char * id () const noexcept
 
void ignore (promoted *value) noexcept
 
virtual bool inherits (const char *type) const noexcept
 
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
 
 operator const value_t & () const noexcept
 
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 & ()
 
 operator value_t & () noexcept
 
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
 
const value_t & operator* () const noexcept
 
value_t & operator* () noexcept
 
void operator+= (const value_t &value) noexcept
 
const value_t & operator-> () const noexcept
 
value_t & operator-> () noexcept
 
nodeoperator<< (const node &node)
 
template<typename value_t , typename = enable_if_value<value_t>>
bool operator== (const std::decay_t< value_t > &value) const
 
bool operator== (const value_t &value) const noexcept
 
nodeoperator[] (const std::string &path) const override
 
nodeoperator[] (size_t pos) const override
 
 phase ()
 
 qx_factory (quarx< node::container >) quarx(const quarx &copy
 
 qx_factory_id (container) virtual size_t size() const noexcept
 
 qx_factory_id (generator::voice::phase) static const expr auto type_static
 
void remove ()
 
virtual void remove (const promoted &) noexcept
 indicate promoted end-of-lifetime More...
 
void remove_all_listener () noexcept
 
template<typename child_t >
noderesize (size_t resize)
 
noderesize (size_t resize) override
 
void trigger () noexcept
 
std::string unique (const std::string &key) const noexcept
 
else value::operator= (copy)
 

Static Public Member Functions

static bool static_inherits (const char *type) noexcept
 

Public Attributes

node copy attributes
 
dynamic dynamic
 
promoted key
 name of node More...
 
std::set< listen< value_t > * > listeners
 
nodeparent
 
node parent
 
promoted path
 entire path of node in process network More...
 
std::set< promoted * > values
 

Static Public Attributes

static const char * type
 quarx node type ID More...
 
static constexpr auto type_static_trigger_static = "generator::voice=static::trigger=static"
 
static constexpr auto type_static_voice_static = "generator::voice=static::phase=static"
 
static constexpr auto type_static_voice_static_trigger_static = "generator::voice=static::phase=static::trigger=static"
 
static constexpr auto type_trigger_static = "generator::voice::trigger=static"
 
static constexpr auto type_voice_static = "generator::voice=static::phase"
 
static constexpr auto type_voice_static_trigger_static = "generator::voice=static::phase::trigger=static"
 

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 * > >
 
typedef qx::promoted< node::containervalue
 value of this node More...
 

Member Typedef Documentation

◆ container

typedef std::deque<std::shared_ptr<node> > qx::node::container
inherited

◆ enable_if_base_of

template<typename base_t , typename derrived_t >
using qx::node::enable_if_base_of = std::enable_if_t<std::is_base_of_v <std::decay_t<base_t>, std::decay_t<derrived_t> >>
protectedinherited

◆ enable_if_value

template<typename value_t >
using qx::node::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*> >
protectedinherited

◆ promoted

typedef promoted<std::string > qx::listen< std::string >::promoted
inherited

◆ value

typedef qx::promoted<node::container > qx::quarx< node::container >::value
protectedinherited

value of this node

Constructor & Destructor Documentation

◆ phase()

qx::generator::voice::phase::phase ( )
inline

Member Function Documentation

◆ clear()

void qx::listen< std::string >::clear ( )
inlinenoexceptinherited

◆ clone()

virtual std::shared_ptr<node> qx::node::clone ( node parent) const
pure virtualinherited

◆ erase()

void qx::container::erase ( node )
inherited

◆ id()

virtual const char* qx::node::id ( ) const
inlinevirtualnoexceptinherited

◆ ignore()

void qx::listen< std::string >::ignore ( promoted value)
inlinenoexceptinherited

◆ inherits()

virtual bool qx::node::inherits ( const char *  type) const
inlinevirtualnoexceptinherited

◆ obey() [1/2]

void qx::listen< std::string >::obey ( const std::initializer_list< promoted * > &  values,
bool  initial_update = true 
)
inlinenoexceptinherited

◆ obey() [2/2]

void qx::listen< std::string >::obey ( promoted value,
bool  initial_update = true 
)
inlinenoexceptinherited

◆ operator const node_t &()

template<typename node_t , typename petty_t = node_t, typename = enable_if_base_of <node, node_t>>
qx::node::operator const node_t & ( ) const
inlineinherited

◆ operator const value_t &() [1/2]

template<typename value_t , typename = enable_if_value<value_t>>
qx::node::operator const value_t & ( ) const
inlineinherited

◆ operator const value_t &() [2/2]

template<class value_t >
qx::promoted< value_t >::operator const value_t & ( ) const
inlinenoexceptinherited

◆ operator node_t &()

template<typename node_t , typename petty_t = node_t, typename = enable_if_base_of <node, node_t>>
qx::node::operator node_t & ( )
inlineinherited

node derivate linkage explicit assignment (i.e. node= &out)

◆ operator value_t &() [1/2]

template<typename value_t , typename = enable_if_value<value_t>>
qx::node::operator value_t & ( )
inlineinherited

◆ operator value_t &() [2/2]

template<class value_t >
qx::promoted< value_t >::operator value_t & ( )
inlinenoexceptinherited

◆ operator*() [1/4]

template<typename value_t , typename = enable_if_value<value_t>>
std::decay_t<value_t>& qx::node::operator* ( )
inlineinherited

◆ operator*() [2/4]

template<typename value_t , typename = enable_if_value<value_t>>
const std::decay_t<value_t>& qx::node::operator* ( ) const
inlineinherited

◆ operator*() [3/4]

template<class value_t >
const value_t& qx::promoted< value_t >::operator* ( ) const
inlinenoexceptinherited

◆ operator*() [4/4]

template<class value_t >
value_t& qx::promoted< value_t >::operator* ( )
inlinenoexceptinherited

◆ operator+=()

template<class value_t >
void qx::promoted< value_t >::operator+= ( const value_t &  value)
inlinenoexceptinherited

◆ operator->() [1/2]

template<class value_t >
const value_t& qx::promoted< value_t >::operator-> ( ) const
inlinenoexceptinherited

◆ operator->() [2/2]

template<class value_t >
value_t& qx::promoted< value_t >::operator-> ( )
inlinenoexceptinherited

◆ operator<<()

node& qx::quarx< node::container >::operator<< ( const node node)
inlineinherited

◆ operator==() [1/2]

template<typename value_t , typename = enable_if_value<value_t>>
bool qx::node::operator== ( const std::decay_t< value_t > &  value) const
inlineinherited

◆ operator==() [2/2]

template<class value_t >
bool qx::promoted< value_t >::operator== ( const value_t &  value) const
inlinenoexceptinherited

◆ operator[]() [1/2]

node& qx::quarx< node::container >::operator[] ( const std::string &  path) const
inlineoverridevirtualinherited

Implements qx::node.

◆ operator[]() [2/2]

node& qx::quarx< node::container >::operator[] ( size_t  pos) const
inlineoverridevirtualinherited

Implements qx::node.

◆ qx_factory()

qx::quarx< node::container >::qx_factory ( quarx< value_t >  ) const &
inherited

◆ qx_factory_id() [1/2]

qx::container::qx_factory_id ( container  ) const
inlinenoexceptinherited

◆ qx_factory_id() [2/2]

qx::generator::voice::phase::qx_factory_id ( generator::voice::phase  ) const

◆ remove() [1/2]

void qx::node::remove ( )
inherited

◆ remove() [2/2]

virtual void qx::listen< std::string >::remove ( const promoted )
inlinevirtualnoexceptinherited

indicate promoted end-of-lifetime

◆ remove_all_listener()

template<class value_t >
void qx::promoted< value_t >::remove_all_listener ( )
inlinenoexceptinherited
+ Here is the caller graph for this function:

◆ resize() [1/2]

template<typename child_t >
node& qx::container::resize ( size_t  resize)
inlinevirtualinherited

◆ resize() [2/2]

node& qx::container::resize ( size_t  resize)
overridevirtualinherited

◆ static_inherits()

static bool qx::node::static_inherits ( const char *  type)
inlinestaticnoexceptinherited

◆ trigger()

void qx::listen< std::string >::trigger ( )
inlinenoexceptinherited

◆ unique()

std::string qx::quarx< node::container >::unique ( const std::string &  key) const
inlinenoexceptinherited

◆ value::operator=()

else qx::quarx< node::container >::value::operator= ( copy  )
inherited

Member Data Documentation

◆ attributes

◆ dynamic

Initial value:
{*this,{
{{type}, {}},
{{type_static}, {{generator::mod::vector, generator::mod::amount}}},
{{type_voice_static}, {{mod::vector, mod::amount}}},
{{type_static_voice_static}, {{generator::mod::vector, generator::mod::amount}, {mod::vector, mod::amount}}},
{{type_static_trigger_static}, {{generator::mod::vector, generator::mod::amount}, {generator::trigger}}},
{{type_static_voice_static_trigger_static}, {{generator::mod::vector, generator::mod::amount}, {mod::vector, mod::amount}, {generator::trigger}}},
}}
static constexpr auto type_voice_static
Definition: qx_module.h:309
static constexpr auto type_trigger_static
Definition: qx_module.h:311
static constexpr auto type_static_voice_static
Definition: qx_module.h:310
static constexpr auto type_static_voice_static_trigger_static
Definition: qx_module.h:314
static constexpr auto type_static_trigger_static
Definition: qx_module.h:312
static constexpr auto type_voice_static_trigger_static
Definition: qx_module.h:313
static constexpr auto trigger
Definition: qx_module.h:269
static constexpr auto amount
Definition: qx.h:627
static const char * type
quarx node type ID
Definition: qx.h:273

◆ key

promoted qx::node::key
inherited

name of node

◆ listeners

template<class value_t >
std::set<listen <value_t>*> qx::promoted< value_t >::listeners
inherited

◆ parent [1/2]

node* qx::quarx< node::container >::parent
inherited

◆ parent [2/2]

node qx::quarx< node::container >::parent
inherited

◆ path

promoted qx::node::path
inherited

entire path of node in process network

◆ type

const char* qx::quarx< node::container >::type
staticinherited

quarx node type ID

◆ type_static_trigger_static

constexpr auto qx::generator::voice::phase::type_static_trigger_static = "generator::voice=static::trigger=static"
staticconstexpr

◆ type_static_voice_static

constexpr auto qx::generator::voice::phase::type_static_voice_static = "generator::voice=static::phase=static"
staticconstexpr

◆ type_static_voice_static_trigger_static

constexpr auto qx::generator::voice::phase::type_static_voice_static_trigger_static = "generator::voice=static::phase=static::trigger=static"
staticconstexpr

◆ type_trigger_static

constexpr auto qx::generator::voice::phase::type_trigger_static = "generator::voice::trigger=static"
staticconstexpr

◆ type_voice_static

constexpr auto qx::generator::voice::phase::type_voice_static = "generator::voice=static::phase"
staticconstexpr

◆ type_voice_static_trigger_static

constexpr auto qx::generator::voice::phase::type_voice_static_trigger_static = "generator::voice=static::phase::trigger=static"
staticconstexpr

◆ values

std::set<promoted*> qx::listen< std::string >::values
inherited

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

(c) copyright 2009 dynamic acoustics e.U. generated on Fri Dec 17 2021

a closed source license may be obtained by requesting a written permission from dynamic acoustics e.U.
however - governmental use generally and military use especially is strictly prohibited though.