Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
Proc Class Referenceabstract

#include "steam/asset/proc.hpp"

Description

key abstraction: data processing asset

Todo:
just a stub, have to figure out what a asset::Proc is

Definition at line 63 of file proc.hpp.

Public Types

typedef StreamType::ImplFacade::DataBuffer Buff
 
typedef BuffPBuff
 
typedef void() ProcFunc(PBuff)
 

Static Public Attributes

static ProcFactory create
 storage for the static ProcFactory instance
 

Public Member Functions

virtual const ID< Proc > & getID () const
 <
 
virtual ProcFuncresolveProcessor () const =0
 resolve any plugin and configuration info to yield the actual media data processing function.
 
- Public Member Functions inherited from Asset
bool operator== (Asset const &oa) const
 
auto operator<=> (Asset const &oa) const
 
virtual operator string () const
 
const vector< PAsset > & getParents () const
 List of entities this asset depends on or requires to be functional.
 
const vector< PAsset > & getDependant () const
 All the other assets requiring this asset to be functional.
 
bool isActive () const
 weather this asset is switched on and consequently included in the fixture and participates in rendering
 
bool enable (bool on=true)
 change the enabled status of this asset.
 

Friends

class ProcFactory
 

Protected Member Functions

 Proc (const Asset::Ident &idi)
 
- Protected Member Functions inherited from Asset
 Asset (const Ident &idi)
 Asset is a Interface class; usually, objects of concrete subclasses are created via specialised Factories.
 
virtual ~Asset ()=0
 
virtual void unlink ()
 release all links to other Asset objects held internally.
 
virtual void unlink (IDA target)
 variant of unlink() dropping only the links to the given specific Asset, leaving all other links intact.
 
void defineDependency (PAsset parent)
 establish a connection between this and the given parent asset, denoting we are in some way dependent on the parent.
 
void defineDependency (Asset &parent)
 

Additional Inherited Members

- Public Attributes inherited from Asset
const Ident ident
 Asset identification tuple.
 
- Protected Attributes inherited from Asset
const ID< Assetid
 Asset primary key.
 
set< string > groups
 additional classification, selections or departments this asset belongs to.
 
const string shortDesc
 user visible Name-ID.
 
const string longDesc
 user visible qualification of the thing, unit or concept represented by this asset.
 
vector< PAssetparents
 
vector< PAssetdependants
 
bool enabled
 

Constructor & Destructor Documentation

◆ Proc()

Proc ( const Asset::Ident idi)
inlineprotected

Definition at line 93 of file proc.hpp.

Member Typedef Documentation

◆ Buff

Definition at line 73 of file proc.hpp.

◆ PBuff

typedef Buff* PBuff

Definition at line 74 of file proc.hpp.

◆ ProcFunc

typedef void() ProcFunc(PBuff)

Definition at line 75 of file proc.hpp.

Member Function Documentation

◆ getID()

virtual const ID< Proc > & getID ( ) const
inlinevirtual

<

Returns
ID of kind Proc

Reimplemented from Asset.

Definition at line 68 of file proc.hpp.

References Asset::getID().

+ Here is the call graph for this function:

◆ resolveProcessor()

virtual ProcFunc * resolveProcessor ( ) const
pure virtual

resolve any plugin and configuration info to yield the actual media data processing function.

Returns
a function ready to be invoked; either the "real thing" or a suitable placeholder.
Exceptions
lumiera::error::Fatalif unable to provide any usable function or placeholder. This case can be considered exceptional and justifies a subsystem failure.

Implemented in Effect.

Member Data Documentation

◆ create

ProcFactory create
static

storage for the static ProcFactory instance

Definition at line 66 of file proc.hpp.

Friends And Related Symbol Documentation

◆ ProcFactory

friend class ProcFactory
friend

Definition at line 94 of file proc.hpp.

+ Inheritance diagram for Proc:
+ Collaboration diagram for Proc:

The documentation for this class was generated from the following files: