Lumiera
0.pre.03
»edit your freedom«
|
Go to the source code of this file.
Implementation details of OutputDesignation and OutputMapping.
Both of these are mostly intended as interface elements to represent the intention to connect to another MObject, or a translation and mapping of such connection intentions. But parts of the implementation are kept here in a translation unit separate of the usage site: The implementation of the various kinds of OutputDesignation spec (absolute, indirect, relative) and the connection between OutputMapping and the rules based system.
Definition in file output-designation.cpp.
#include "lib/error.hpp"
#include "lib/symbol.hpp"
#include "lib/query-util.hpp"
#include "common/query/query-resolver.hpp"
#include "steam/mobject/mobject.hpp"
#include "steam/mobject/placement-ref.hpp"
#include "steam/mobject/output-designation.hpp"
#include "steam/mobject/output-mapping.hpp"
#include "steam/config-resolver.hpp"
#include "lib/util.hpp"
#include <boost/functional/hash.hpp>
#include <cstdlib>
Classes | |
struct | AbsoluteSpec |
struct | IndirectSpec |
struct | RelativeSpec |
Typedefs | |
typedef OutputDesignation::PID | PID |
typedef OutputDesignation::PPipe | PPipe |
typedef OutputDesignation::TargetSpec | TargetSpec |
Functions | |
Query< asset::Pipe > | build_corresponding_sourceQuery (Query< asset::Pipe > const &) |
..and build the corresponding defaults source query for this case | |
uint | is_defaults_query_with_channel (Query< asset::Pipe > const &) |
detect the special case, when actually the Nth solution of a defaults query is requested | |
HashVal | resolveQuery (Query< asset::Pipe > const &) |
delegate target pipe resolution to the rules system More... | |
HashVal | slot (Query< asset::Pipe > const &) |
yield a suitable table slot for this query More... | |
Variables | |
Symbol | SEQNR_PREDICATE = "ord" |
Namespaces | |
steam | |
Steam-Layer implementation namespace root. | |
steam::mobject | |
Media-Objects, edit operations and high-level session. | |
HashVal slot | ( | Query< asset::Pipe > const & | query | ) |
yield a suitable table slot for this query
to allow for the use of queries mixed with normal Pipe-IDs in a single table, we rely on the hash_value()
function, to be picked up by ADL
Definition at line 162 of file output-designation.cpp.
References steam::mobject::_mapping::slot().
Referenced by steam::mobject::_mapping::slot().
HashVal resolveQuery | ( | Query< asset::Pipe > const & | query4pipe | ) |
delegate target pipe resolution to the rules system
Query | for pipe, which is handed over as-is to the rules engine. |
Definition at line 173 of file output-designation.cpp.
References ConfigResolver::instance, QueryHandler< TY >::resolve(), and steam::mobject::_mapping::resolveQuery().
Referenced by steam::mobject::_mapping::resolveQuery().