Ingen
0.5.1
|
Block model class, used by the client to store engine's state. More...
#include <BlockModel.hpp>
Public Types | |
typedef std::vector< SPtr< const PortModel > > | Ports |
![]() | |
enum | GraphType { GRAPH, BLOCK, PORT } |
typedef std::pair< const Node *, const Node * > | ArcsKey |
typedef std::map< ArcsKey, SPtr< Arc > > | Arcs |
![]() | |
enum | Graph { DEFAULT, EXTERNAL, INTERNAL } |
Public Member Functions | |
BlockModel (const BlockModel ©) | |
GraphType | graph_type () const |
SPtr< const PortModel > | get_port (const Raul::Symbol &symbol) const |
SPtr< const PortModel > | get_port (uint32_t index) const |
Node * | port (uint32_t index) const |
const Raul::URI & | plugin_uri () const |
const Resource * | plugin () const |
Resource * | plugin () |
SPtr< PluginModel > | plugin_model () const |
uint32_t | num_ports () const |
const Ports & | ports () const |
void | default_port_value_range (SPtr< const PortModel > port, float &min, float &max, uint32_t srate=1) const |
void | port_value_range (SPtr< const PortModel > port, float &min, float &max, uint32_t srate=1) const |
std::string | label () const |
std::string | port_label (SPtr< const PortModel > port) const |
INGEN_SIGNAL (new_port, void, SPtr< const PortModel >) | |
INGEN_SIGNAL (removed_port, void, SPtr< const PortModel >) | |
![]() | |
bool | is_a (const URIs::Quark &type) const |
const Atom & | get_property (const Raul::URI &key) const |
Get a single property value. More... | |
void | on_property (const Raul::URI &uri, const Atom &value) |
Hook called whenever a property is added. More... | |
void | on_property_removed (const Raul::URI &uri, const Atom &value) |
Hook called whenever a property value is removed. More... | |
const Raul::Path & | path () const |
const Raul::Symbol & | symbol () const |
SPtr< ObjectModel > | parent () const |
bool | polyphonic () const |
Node * | graph_parent () const |
INGEN_SIGNAL (new_child, void, SPtr< ObjectModel >) | |
INGEN_SIGNAL (removed_child, void, SPtr< ObjectModel >) | |
INGEN_SIGNAL (property, void, const Raul::URI &, const Atom &) | |
INGEN_SIGNAL (property_removed, void, const Raul::URI &, const Atom &) | |
INGEN_SIGNAL (destroyed, void) | |
INGEN_SIGNAL (moved, void) | |
![]() | |
Arcs & | arcs () |
const Arcs & | arcs () const |
virtual LilvInstance * | instance () |
virtual bool | save_state (const std::string &dir) const |
Raul::URI | base_uri () const |
![]() | |
Resource (const URIs &uris, const Raul::URI &uri) | |
Resource & | operator= (const Resource &rhs) |
virtual const Atom & | set_property (const Raul::URI &uri, const Atom &value, Graph ctx=Graph::DEFAULT) |
Set (replace) a property value. More... | |
virtual const Atom & | set_property (const Raul::URI &uri, const URIs::Quark &value, Graph ctx=Graph::DEFAULT) |
Set (replace) a property value. More... | |
virtual bool | add_property (const Raul::URI &uri, const Atom &value, Graph ctx=Graph::DEFAULT) |
Add a property value. More... | |
virtual void | remove_property (const Raul::URI &uri, const Atom &value) |
Remove a property. More... | |
virtual void | remove_property (const Raul::URI &uri, const URIs::Quark &value) |
Remove a property. More... | |
virtual bool | has_property (const Raul::URI &uri, const Atom &value) const |
Return true iff a property is set with a specific value. More... | |
virtual bool | has_property (const Raul::URI &uri, const URIs::Quark &value) const |
Return true iff a property is set with a specific value. More... | |
void | set_properties (const Properties &p) |
Set (replace) several properties at once. More... | |
void | add_properties (const Properties &p) |
Add several properties at once. More... | |
void | remove_properties (const Properties &p) |
Remove several properties at once. More... | |
virtual void | set_uri (const Raul::URI &uri) |
Properties | properties (Resource::Graph ctx) const |
Get all the properties with a given context. More... | |
const URIs & | uris () const |
const Raul::URI & | uri () const |
const Properties & | properties () const |
Properties & | properties () |
Protected Member Functions | |
BlockModel (URIs &uris, const Raul::URI &plugin_uri, const Raul::Path &path) | |
BlockModel (URIs &uris, SPtr< PluginModel > plugin, const Raul::Path &path) | |
BlockModel (const Raul::Path &path) | |
void | add_child (SPtr< ObjectModel > c) |
bool | remove_child (SPtr< ObjectModel > c) |
void | add_port (SPtr< PortModel > pm) |
void | remove_port (SPtr< PortModel > pm) |
void | remove_port (const Raul::Path &port_path) |
void | set (SPtr< ObjectModel > model) |
Merge the data of o with self, as much as possible. More... | |
virtual void | clear () |
![]() | |
ObjectModel (URIs &uris, const Raul::Path &path) | |
ObjectModel (const ObjectModel ©) | |
virtual void | set_path (const Raul::Path &p) |
virtual void | set_parent (SPtr< ObjectModel > p) |
![]() | |
Node (const URIs &uris, const Raul::Path &path) | |
![]() | |
const Atom & | set_property (const Raul::URI &uri, const Atom &value) const |
Protected Attributes | |
Ports | _ports |
Vector of ports. | |
Raul::URI | _plugin_uri |
Plugin URI (if PluginModel is unknown) | |
SPtr< PluginModel > | _plugin |
The plugin this block is an instance of. | |
![]() | |
SPtr< ObjectModel > | _parent |
![]() | |
Arcs | _arcs |
Graphs only. | |
![]() | |
const URIs & | _uris |
Friends | |
class | ClientStore |
Additional Inherited Members | |
![]() | |
static Raul::URI | main_uri () |
static bool | uri_is_path (const Raul::URI &uri) |
static Raul::Path | uri_to_path (const Raul::URI &uri) |
static Raul::URI | path_to_uri (const Raul::Path &path) |
![]() | |
static Raul::URI | graph_to_uri (Graph g) |
static Graph | uri_to_graph (const char *uri) |
static bool | type (const URIs &uris, const Properties &properties, bool &graph, bool &block, bool &port, bool &is_output) |
Get the ingen type from a set of Properties. More... | |
Block model class, used by the client to store engine's state.
|
protectedvirtual |
Merge the data of o
with self, as much as possible.
This will merge the two models, but with any conflict take the value in o
as correct. The paths of the two models MUST be equal.
Reimplemented from Ingen::Client::ObjectModel.
References _plugin_uri, and Ingen::Client::ObjectModel::set().
Referenced by Ingen::GUI::GraphBox::set_graph().