Lumiera
0.pre.03
»edit your freedom«
|
#include "steam/asset/struct-factory-impl.hpp"
Implementation details, especially concerning how configuration queries are resolved and when to create new objects automatically.
better use a general struct traits class, esp.for creating the Ident
shouldn't some of the generic factory logic be moved over into the struct baseclass? ////////////////TICKET #565
Definition at line 104 of file struct-factory-impl.hpp.
Public Member Functions | |
StructFactoryImpl (StructFactory &interface) | |
template<class STRU > | |
STRU * | fabricate (Query< STRU > const &caps) |
make a new structural asset instance. More... | |
template<> | |
const ProcPatt * | fabricate (Query< const ProcPatt > const &caps) |
template<> | |
Pipe * | fabricate (Query< Pipe > const &caps) |
template<> | |
Timeline * | fabricate (Query< Timeline > const &caps) |
template<> | |
Sequence * | fabricate (Query< Sequence > const &caps) |
Private Member Functions | |
template<class STRU > | |
const Asset::Ident | createIdent (Query< STRU > const &query) |
RFork | getFork_forSequence (string const &desiredID) |
either fetch or build a suitable fork root for a new sequence | |
Private Attributes | |
StructFactory & | recursive_create_ |
used for issuing recursive create calls to top level | |
|
inlineprivate |
derive a sensible asset ident tuple when creating structural asset instances based on a capability query
Definition at line 112 of file struct-factory-impl.hpp.
References Query< RES >::extractID().
|
inline |
make a new structural asset instance.
Definition at line 179 of file struct-factory-impl.hpp.