Lumiera  0.pre.03
»edityourfreedom«
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
proc::control Namespace Reference

Description

Proc-Layer dispatcher, controller and administrative facilities.

Namespaces

 bind_arg
 
 com
 
 impl
 
 stage
 
 test
 

Typedefs

typedef FunErasure< StoreFunctionCmdFunctor
 A neutral container internally holding the functor used to implement the Command. More...
 
using DefinitionClosure = std::function< void(CommandDef &)>
 
typedef void * FuncPtr
 
using PClo = std::shared_ptr< CmdClosure >
 

Classes

class  AcceptAnyBinding
 Helper Template for control::Command, mix-in complete set of bind(...) functions. More...
 
class  AcceptArgumentBinding
 Helper Template for Proc-Layer control::Command : mix in a bind(...) function. More...
 
class  AcceptArgumentBindingRet
 Variation of AcceptArgumentBinding, allowing to control the return type of the generated bind(...) functions independently from SIG. More...
 
class  AcceptArgumentTuple
 Helper Template for building a Functor or function-like class: Mix in a function call operator, which mimics the specified signature SIG . More...
 
struct  Arguments
 
class  CmdClosure
 Interface. More...
 
class  Command
 Handle object representing a single Command instance to be used by client code. More...
 
class  CommandDef
 Helper class used solely for defining a Command-Object. More...
 
class  CommandDispatch
 Interface of a service to perform Commands on the session. More...
 
class  CommandImpl
 Proc-Layer Command implementation. More...
 
class  CommandImplCloneBuilder
 Visitor to support creating a CommandImpl clone. More...
 
class  CommandInstanceManager
 Maintain a current command instance for parametrisation. More...
 
class  CommandQueue
 Implementation of the Session's command queue. More...
 
class  CommandRegistry
 Registry managing command implementation objects (Singleton). More...
 
class  CommandSetup
 Marker and Helper for writing Proc-Layer Command definitions. More...
 
class  CommandSignature
 Metaprogramming helper for building Command function signatures. More...
 
class  DispatcherLoop
 PImpl within ProcDispatcher to implement the Session Loop Thread. During the lifetime of this object... More...
 
class  ExecResult
 Result (Status) of command execution. More...
 
class  HandlingPattern
 Interface: Operation Skeleton how to invoke or undo a command. More...
 
class  Looper
 Encapsulated control logic for the session thread loop. More...
 
class  MediaImplLib
 
class  MementoTie
 Binding together state capturing and execution of the undo operation. More...
 
class  Mutation
 Unspecific command functor for implementing Proc-Layer Command. More...
 
class  OpClosure
 closure to deal with the actual command operation. More...
 
struct  order_by_impl
 Helper for building a std::map with Command* as keys. More...
 
class  ParamAccessor
 Helper for accessing an individual function parameter. More...
 
class  ParamAccessor< NullType, TUP, TUP, n >
 < used for recursion end of implementation functions More...
 
class  PathManager
 While building a render engine, this Strategy class decides on the actual render strategy in accordance to the current controller settings (system state) More...
 
class  ProcDispatcher
 Guard to manage processing commands working on the session. More...
 
class  SessionCommand
 Global access point to invoke commands and cause edit operations within the Session. More...
 
class  SessionCommandService
 Actual implementation of the SessionCommand service within the Lumiera Session subsystem. More...
 
class  SimpleClosure
 Dummy / proof-of-concept implementation of CmdClosure. More...
 
class  StorageHolder
 This is "the" top level CmdClosure implementation. More...
 
class  STypeManager
 
struct  TypedArguments
 
class  UndoMutation
 Specialised version of the command Mutation functor, used to implement the UNDO functionality. More...
 
class  UndoSignature
 Type analysis helper template. More...
 

Functions

template<typename SIG >
com::CommandInvoker< SIG > invoke (SIG &operation_func)
 
com::RuntimeCheckedCommandInvoker invoke (Symbol cmdID)
 
com::RuntimeCheckedCommandInvoker invoke (const char *cmdID)
 
 LUMIERA_ERROR_DECLARE (INVALID_ARGUMENTS)
 Arguments provided for binding doesn't match stored command function parameters. More...
 
 LUMIERA_ERROR_DECLARE (MISSING_MEMENTO)
 Undo functor not yet usable, because no undo state has been captured. More...
 
 LUMIERA_ERROR_DECLARE (UNBOUND_ARGUMENTS)
 Command functor not yet usable, because arguments aren't bound. More...
 
 LUMIERA_ERROR_DECLARE (INVALID_COMMAND)
 Unknown or insufficiently defined command. More...
 
 LUMIERA_ERROR_DECLARE (DUPLICATE_COMMAND)
 Attempt to redefine an already existing command definition. More...
 
 LUMIERA_ERROR_DEFINE (INVALID_COMMAND,"Unknown or insufficiently defined command")
 
 LUMIERA_ERROR_DEFINE (DUPLICATE_COMMAND,"Attempt to redefine an already existing command definition")
 
 LUMIERA_ERROR_DEFINE (INVALID_ARGUMENTS,"Arguments provided for binding doesn't match stored command function parameters")
 
 LUMIERA_ERROR_DEFINE (UNBOUND_ARGUMENTS,"Command mutation functor not yet usable, because arguments aren't bound")
 
 LUMIERA_ERROR_DEFINE (MISSING_MEMENTO,"Undo functor not yet usable, because no undo state has been captured")
 
const char * ON_STREAMTYPES_RESET ("ON_STREAMTYPES_RESET")
 
bool operator!= (Command const &c1, Command const &c2)
 
bool operator< (Command const &c1, Command const &c2)
 allow for sets and associative containers More...
 
bool operator== (Command const &c1, Command const &c2)
 

Variables

const char * ON_STREAMTYPES_RESET
 triggered to load the generic pristine default More...
 

Typedef Documentation

A neutral container internally holding the functor used to implement the Command.

Definition at line 98 of file command-closure.hpp.

Definition at line 124 of file command-closure.hpp.

using DefinitionClosure = std::function<void(CommandDef&)>

Definition at line 73 of file command-setup.hpp.

typedef void* FuncPtr

Definition at line 103 of file command.hpp.


Class Documentation

class proc::control::PathManager
+ Collaboration diagram for PathManager:

Function Documentation

LUMIERA_ERROR_DECLARE ( INVALID_ARGUMENTS  )

Arguments provided for binding doesn't match stored command function parameters.

LUMIERA_ERROR_DECLARE ( UNBOUND_ARGUMENTS  )

Command functor not yet usable, because arguments aren't bound.

com::CommandInvoker<SIG> proc::control::invoke ( SIG &  operation_func)
inline

Definition at line 198 of file command-invocation.hpp.

References Command::get().

Referenced by invoke(), CommandUse1_test::standardUse(), and CommandUse1_test::undef().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

com::RuntimeCheckedCommandInvoker proc::control::invoke ( Symbol  cmdID)
inline

Definition at line 208 of file command-invocation.hpp.

References Command::get().

+ Here is the call graph for this function:

com::RuntimeCheckedCommandInvoker proc::control::invoke ( const char *  cmdID)
inline

Definition at line 218 of file command-invocation.hpp.

References invoke().

+ Here is the call graph for this function:

proc::control::LUMIERA_ERROR_DEFINE ( INVALID_COMMAND  ,
"Unknown or insufficiently defined command"   
)
proc::control::LUMIERA_ERROR_DEFINE ( DUPLICATE_COMMAND  ,
"Attempt to redefine an already existing command definition"   
)
proc::control::LUMIERA_ERROR_DEFINE ( INVALID_ARGUMENTS  ,
"Arguments provided for binding doesn't match stored command function parameters"   
)
proc::control::LUMIERA_ERROR_DEFINE ( UNBOUND_ARGUMENTS  ,
"Command mutation functor not yet  usable,
because arguments aren't bound"   
)
proc::control::LUMIERA_ERROR_DEFINE ( MISSING_MEMENTO  ,
"Undo functor not yet  usable,
because no undo state has been captured"   
)
proc::control::LUMIERA_ERROR_DECLARE ( INVALID_COMMAND  )

Unknown or insufficiently defined command.

proc::control::LUMIERA_ERROR_DECLARE ( DUPLICATE_COMMAND  )

Attempt to redefine an already existing command definition.

bool proc::control::operator== ( Command const &  c1,
Command const &  c2 
)
inline

Definition at line 313 of file command.hpp.

References Command::equivalentImpl(), and Handle< IMP >::impl().

+ Here is the call graph for this function:

bool proc::control::operator!= ( Command const &  c1,
Command const &  c2 
)
inline

Definition at line 322 of file command.hpp.

bool proc::control::operator< ( Command const &  c1,
Command const &  c2 
)
inline

allow for sets and associative containers

Definition at line 329 of file command.hpp.

References Handle< IMP >::impl().

+ Here is the call graph for this function:

proc::control::LUMIERA_ERROR_DECLARE ( MISSING_MEMENTO  )

Undo functor not yet usable, because no undo state has been captured.

const char* proc::control::ON_STREAMTYPES_RESET ( "ON_STREAMTYPES_RESET"  )
LifecycleHook, on which all the basic setup and configuration providing the pristine state of the stream type system has to be registered.
Note
plugins providing additional streamtype configuration should register their basic setup functions using this hook, which can be done via the C interface functions

Variable Documentation

const char* ON_STREAMTYPES_RESET

triggered to load the generic pristine default

Referenced by lumiera_StreamType_registerInitFunction(), and STypeManager::reset().