Lumiera  0.pre.03
»edit your freedom«
steam::mobject::builder Namespace Reference

Description

Namespace of the Builder, transforming high-level into low-level.

Typedefs

typedef Types< session::Root, session::Clip, session::Effect, session::Binding, session::AbstractMO >::List BuilderTargetTypes
 

Classes

class  Applicable
 declare the concrete types a BuilderTool may receive and treat. More...
 
struct  ApplicableBuilderTargetTypes
 Marker used to declare some visiting Tool class to be actually a mobject::builder::BuilderTool and to possibly accept and treat the common selection of types to be handled by any such builder tool. More...
 
class  Assembler
 This is the actual building facility: provided the correct tools and associations, it serves to build and connect the individual ProcNode objects. More...
 
class  BuilderTool
 Base class of all BuilderTools, used according to the visitor pattern: each Tool contains the concrete implementation for one task to be done to the various MObject classes. More...
 
struct  BuildProcessState
 
class  CombiningMould
 
class  ConManager
 Connection Manager: used to build the connections between render engine nodes if these nodes need to cooperate besides the normal "data pull" operation. More...
 
class  InvokeCatchAllFunction
 Policy invoking an catch-all function for processing an unknown tool / target pair, effectively enforcing the implementation of a catch-all function onUnknown(BASE&) More...
 
class  Mould
 Interface: a workbench-like tool used by the builder for wiring up a specific building situation, followed by the application/execution of a single building step. More...
 
class  NodeCreatorTool
 This Tool implementation plays the central role in the build process: given a MObject from Session, it is able to attach ProcNodes to the render engine under construction such as to reflect the properties of the MObject in the actual render. More...
 
class  OperationPoint
 A point in the render node network under construction. More...
 
class  PipeMould
 
struct  PNode
 
struct  RefPoint
 
class  SegmentationTool
 Tool implementation for deriving a partitioning of the current timeline, such that each Segment has a constant configuration. More...
 
class  SourceChainMould
 
class  ToolFactory
 provides the builder with the necessary, preconfigured tools. More...
 
class  WiringMould
 
class  WiringRequest
 A statefull value object denoting the wish to establish a link or connection between two entities. More...
 

Functions

template<typename WRA >
Buildable::ReturnType apply (BuilderTool &tool, WRA &wrappedTargetObj)
 to be picked up by ADL: redirect tool invocation for double dispatch. More...
 

Class Documentation

◆ steam::mobject::builder::PNode

struct steam::mobject::builder::PNode
+ Collaboration diagram for PNode:

◆ steam::mobject::builder::WiringRequest

class steam::mobject::builder::WiringRequest
+ Collaboration diagram for WiringRequest:

Function Documentation

◆ apply()

Buildable::ReturnType steam::mobject::builder::apply ( BuilderTool tool,
WRA &  wrappedTargetObj 
)
inline

to be picked up by ADL: redirect tool invocation for double dispatch.

The purpose of this function is to apply a visitor, while the actual target is managed by a generic wrapper (smart-ptr). This template function serves to generate forwarding functions, which pass on the apply() call to the actual embedded target, while passing on the fully wrapped object for later referral and usage too.

Definition at line 190 of file buildertool.hpp.