|
libmapper 2.4.12
|
#include <mapper_cpp.h>
Public Types | |
| enum class | Location { SRC = MPR_LOC_SRC , DST = MPR_LOC_DST , ANY = MPR_LOC_ANY } |
| enum class | Protocol { UDP = MPR_PROTO_UDP , TCP = MPR_PROTO_TCP } |
Public Types inherited from mapper::Object | |
| enum class | Status { UNDEFINED = MPR_STATUS_UNDEFINED , EXPIRED = MPR_STATUS_EXPIRED , NEW = MPR_STATUS_NEW , MODIFIED = MPR_STATUS_MODIFIED , STAGED = MPR_STATUS_STAGED , ACTIVE = MPR_STATUS_ACTIVE , REMOVED = MPR_STATUS_REMOVED , HAS_VALUE = MPR_STATUS_HAS_VALUE , NEW_VALUE = MPR_STATUS_NEW_VALUE , UPDATE_LOC = MPR_STATUS_UPDATE_LOC , UPDATE_REM = MPR_STATUS_UPDATE_REM , REL_UPSTRM = MPR_STATUS_REL_UPSTRM , REL_DNSTRM = MPR_STATUS_REL_DNSTRM , INST_OFLW = MPR_STATUS_OVERFLOW , ANY = MPR_STATUS_ANY } |
Public Member Functions | |
| Map (signal_type src, signal_type dst) | |
| template<typename... Args> | |
| Map (const str_type &expression, Args ...args) | |
| Map (int num_srcs, signal_type srcs[], int num_dsts, signal_type dsts[]) | |
| template<size_t N, size_t M> | |
| Map (std::array< signal_type, N > &srcs, std::array< signal_type, M > &dsts) | |
| Map (std::vector< signal_type > &srcs, std::vector< signal_type > &dsts) | |
| operator mpr_map () const | |
| const Map & | refresh () const |
| void | release () const |
| bool | ready () const |
| Map & | add_scope (const Device &dev) |
| Map & | remove_scope (const Device &dev) |
| int | signal_idx (signal_type sig) const |
| List< Signal > | signals (Location loc=Location::ANY) const |
| const Map & | push () const |
Public Member Functions inherited from mapper::Object | |
| operator bool () const | |
| Type | type () const |
| Graph | graph () const |
| int | get_status () const |
| Object & | reset_status () |
| template<typename... Values> | |
| Object & | set_property (const Values... vals) |
| template<typename... Values> | |
| Object & | set_local_property (const Values... vals) |
| virtual Object & | remove_property (Property prop) |
| virtual Object & | remove_property (const str_type &key) |
| int | num_props (bool staged=false) const |
| PropVal | property (const str_type &key=NULL) const |
| PropVal | property (Property prop) const |
| PropVal | property (int idx) const |
Maps define dataflow connections between sets of Signals. A Map consists of one or more source Signals, one or more destination Signal (currently), restricted to one) and properties which determine how the source data is processed.
|
strong |
|
strong |
|
inline |
|
inline |
Create a map between a set of signals using an expression string containing embedded format specifiers that are replaced by mpr_sig values specified in subsequent additional arguments. If a matching map already exists in the graph, the new Map object will refer to the existing map, otherwise a new map will be created. Changes to the Map will not take effect until it has been added to the distributed graph using push().
| expression | A string specifying the map expression to use when mapping source to destination signals. The format specifier "%x" is used to specify source signals and the "%y" is used to specify the destination signal. |
| args | A sequence of additional Signal arguments, one for each format specifier in the format string. |
|
inline |
|
inline |
|
inline |
Add a scope to this Map. Map scopes configure the propagation of Signal updates across the Map. Changes will not take effect until synchronized with the distributed graph using push().
| dev | Device to add as a scope for this Map. After taking effect, this setting will cause instance updates originating from the specified Device to be propagated across the Map. |
|
inline |
Return C data structure mpr_map corresponding to this object.
|
inlinevirtual |
Push "staged" property changes out to the distributed graph.
Reimplemented from mapper::Object.
|
inline |
Detect whether a Map is completely initialized.
|
inline |
Re-create stale map if necessary.
|
inline |
Release the Map between a set of Signals.
Remove a scope from this Map. Map scopes configure the propagation of Signal updates across the Map. Changes will not take effect until synchronized with the distributed graph using push().
| dev | Device to remove as a scope for this Map. After taking effect, this setting will cause instance updates originating from the specified Device to be blocked from propagating across the Map. |
|
inline |