87 Query<STRU> desired_name (isnil(nameID)?
"" :
"id("+nameID+
")");
88 STRU* pS =
impl_->fabricate (desired_name);
116 typeHandler.
resolve (res, capabilities);
123 STRU* pS =
impl_->fabricate(capabilities);
142 STRU* pS =
impl_->fabricate(query);
160 normaliseID (pipeID);
161 normaliseID (streamID);
162 _Fmt descriptor(
"pipe(%s), stream(%s).");
Steam-Layer Interface: Asset Lookup and Organisation.
Customised refcounting smart pointer template, built upon std::shared_ptr, but forwarding type relati...
Token or Atom with distinct identity.
Generic interface to express a query for specifically typed result elements exposing some capabilitie...
the "front side" interface: the Steam-Layer code can use this QueryHandler to retrieve instances of t...
virtual bool resolve(P< TY > &solution, Query< TY > const &q)=0
try to find or create an object of type TY fulfilling the given query.
user-visible Interface to the ConfigRules subsystem.
static lib::Depend< ConfigResolver > instance
Singleton factory instance, configured with the actual implementation type.
static lib::Depend< AssetManager > instance
get at the system-wide asset manager instance.
structural asset corresponding to the part of the model forming a processing pipe for generating medi...
Implementation details, especially concerning how configuration queries are resolved and when to crea...
lib::P< STRU > operator()(Query< STRU > const &query)
Retrieve a suitable Structural Asset instance, possibly create one.
StructFactory()
using private implementation detail class
lib::P< STRU > made4fake(Query< STRU > const &query)
special backdoor for fake-configrules.hpp This allows to simulate creation of objects triggered by ru...
unique_ptr< StructFactoryImpl > impl_
lib::P< STRU > newInstance(Symbol nameID="")
invoke the factory to create new Structural Asset.
lib::P< Pipe > newPipe(string pipeID, string streamID)
Factory method for creating Pipes explicitly.
static StructFactory retrieve
storage for the static StructFactory instance
A front-end for using printf-style formatting.
Definition of the concrete frontend for rule based configuration within the session.
This header is for including and configuring NoBug.
void normaliseID(string &id)
ensure standard format for a given id string.
The asset subsystem of the Steam-Layer.
lib::P< Sequence > PSequence
lib::P< Timeline > PTimeline
lib::P< const asset::ProcPatt > PProcPatt
Steam-Layer implementation namespace root.
bool contains(MAP &map, typename MAP::key_type const &key)
shortcut for containment test on a map
A "processing pipe" represented as Asset.
Definition of a structural asset to express patterns of wiring or processing Processing patterns can ...
Utilities to support working with predicate queries.
Basic and generic representation of an internal query.
Structural building block of the session: a sequence of clips.
Private implementation details of creating various structural assets.
Asset representation of structural elements within the model.
Marker types to indicate a literal string and a Symbol.
Top level structural element within the session.
Tiny helper functions and shortcuts to be used everywhere Consider this header to be effectively incl...