Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
steam::asset Namespace Reference

Description

The asset subsystem of the Steam-Layer.

Namespaces

namespace  anonymous_namespace{assetmanager.cpp}
 
namespace  anonymous_namespace{clip.cpp}
 
namespace  anonymous_namespace{media.cpp}
 
namespace  anonymous_namespace{meta.cpp}
 
namespace  anonymous_namespace{preview.cpp}
 
namespace  anonymous_namespace{struct-factory-impl.hpp}
 
namespace  anonymous_namespace{typed-id.hpp}
 
namespace  idi
 
namespace  meta
 
namespace  test
 

Typedefs

typedef const ID< Asset > & IDA
 
typedef lib::P< AssetPAsset
 
typedef lib::P< const AssetPcAsset
 
using PProc = lib::P< const asset::Proc >
 
using PProcPatt = lib::P< const asset::ProcPatt >
 
typedef boost::variant< DoAttach, DoRecurse, DoConditionalInstructEntry
 
using PClipAsset = lib::P< const asset::Clip >
 
using IdHashtable = std::unordered_map< size_t, PAsset, IdentityHash >
 
using PInv = lib::P< Inventory >
 
using PMeta = lib::P< Meta >
 
using PPipe = lib::P< Pipe >
 
using InstructionSequence = vector< BuildInstruct >
 
using PSequence = lib::P< Sequence >
 
using PTimeline = lib::P< Timeline >
 
using PViewer = lib::P< Viewer >
 

Enumerations

enum  Kind {
  AUDIO ,
  VIDEO ,
  EFFECT ,
  CODEC ,
  STRUCT ,
  META
}
 top-level distinction of different Kinds of Assets. More...
 

Classes

class  Asset
 Superinterface describing especially bookkeeping properties. More...
 
class  AssetManager
 Facade for the Asset subsystem. More...
 
struct  BuildInstruct
 (Interface) building instructions to be executed by the Builder on the render node network under construction. More...
 
class  Category
 Tree like classification of Assets. More...
 
class  Clip
 bookkeeping (Asset) view of a media clip. More...
 
class  Codec
 description of some media data decoder or encoder facility More...
 
class  CompoundMedia
 compound of several elementary media tracks, e.g. More...
 
class  Dataset
 meta asset describing a collection of control data More...
 
class  DB
 Implementation of the registry holding all Asset instances known to the Asset Manager subsystem. More...
 
struct  DoAttach
 
class  DoConditional
 
struct  DoRecurse
 
class  Effect
 Effect or media processing component. More...
 
class  ID
 thin wrapper around a size_t hash ID used as primary key for all Asset objects. More...
 
class  ID< Media >
 
class  ID< Meta >
 
class  ID< Pipe >
 
class  ID< Proc >
 
class  ID< Struct >
 
struct  IdentityHash
 trivial hash functor returns any hash value unmodified. More...
 
struct  IDErr
 AssetManager error responses, caused by querying invalid Asset IDs from the internal DB. More...
 
class  Inventory
 TypedID registration group exposed as meta asset. More...
 
struct  is_pAsset
 type trait for detecting a shared-ptr-to-asset More...
 
struct  is_pAsset< shared_ptr< A > >
 
class  Media
 key abstraction: media-like assets More...
 
class  MediaFactory
 Factory specialised for creating Media Asset objects. More...
 
class  Meta
 key abstraction: metadata, parametrisation, customisation and similar organisational traits. More...
 
class  MetaFactory
 Factory specialised for creating Metadata Asset objects. More...
 
class  Pipe
 structural asset corresponding to the part of the model forming a processing pipe for generating media output More...
 
class  Preview
 special placeholder denoting an alternative version of the media data, typically with lower resolution ("proxy media") More...
 
class  Proc
 key abstraction: data processing asset More...
 
class  ProcFactory
 Factory specialised for creating Processor Asset objects. More...
 
class  ProcPatt
 "Processing Pattern" is a structural Asset representing information how to build some part of the render engine's processing nodes network. More...
 
class  Sequence
 TODO type comment. More...
 
class  Struct
 key abstraction: structural asset Created automatically as a sideeffect of building the structure of the high-level-model (session contents), thus providing IDs for later referral, search and attachment of metadata. More...
 
class  StructFactory
 Factory specialised for creating Structural Asset objects. More...
 
class  StructFactoryImpl
 Implementation details, especially concerning how configuration queries are resolved and when to create new objects automatically. More...
 
class  TestClipAsset
 An asset::Media instance Test Clip for checking various Asset operations and for creating dependent Clip-MObjects. More...
 
class  Timeline
 
class  TypedID
 
class  Unknown
 Placeholder Asset for unknown or unavailable media source. More...
 
struct  UnknownID
 
class  Viewer
 TODO type comment. More...
 
struct  WrongKind
 

Functions

bool all_parents_enabled (const vector< PAsset > &parents)
 
void propagate_down (PAsset child, bool on)
 
template<class A >
const PcAsset pAsset (shared_ptr< A > const &subPtr)
 promote subtype-ptr to PAsset, e.g.
 
size_t hash_value (Category const &cat)
 
size_t hash_value (Asset::Ident const &idi)
 
size_t hash_value (Asset const &asset)
 
 LUMIERA_ERROR_DEFINE (PART_OF_COMPOUND, "part of compound used as toplevel element")
 
 LUMIERA_ERROR_DECLARE (PART_OF_COMPOUND)
 
 LUMIERA_ERROR_DECLARE (MISSING_INSTANCE)
 Existing ID registration without associated instance.
 
 LUMIERA_ERROR_DEFINE (MISSING_INSTANCE, "Existing ID registration without associated instance")
 
 LUMIERA_ERROR_DEFINE (ORIG_NOT_FOUND, "Media referred by placeholder not found")
 
 LUMIERA_ERROR_DECLARE (ORIG_NOT_FOUND)
 
void dump (PcAsset const &aa)
 
void dumpAssetManager ()
 
template<class CHI , class PAR >
bool dependencyCheck (lib::P< CHI > child, lib::P< PAR > parent)
 

Variables

function< bool(const PAsset &)> check_isActive
 
static Symbol CURRENT = "current"
 
const string CLIP_SUBFOLDER = "clips"
 
const Duration DUMMY_TIME (FSecs(5))
 

Typedef Documentation

◆ IDA

typedef const ID<Asset>& IDA

Definition at line 111 of file asset.hpp.

◆ PAsset

typedef lib::P<Asset> PAsset

Definition at line 112 of file asset.hpp.

◆ PcAsset

typedef lib::P<const Asset> PcAsset

Definition at line 113 of file asset.hpp.

◆ PProc

typedef lib::P< const asset::Proc > PProc

Definition at line 44 of file buildinstruct.hpp.

◆ PProcPatt

typedef lib::P< const asset::ProcPatt > PProcPatt

Definition at line 45 of file buildinstruct.hpp.

◆ InstructEntry

typedef boost::variant< DoAttach, DoRecurse, DoConditional > InstructEntry

Definition at line 84 of file buildinstruct.hpp.

◆ PClipAsset

using PClipAsset = lib::P<const asset::Clip>

Definition at line 55 of file asset/clip.hpp.

◆ IdHashtable

using IdHashtable = std::unordered_map<size_t, PAsset, IdentityHash>

Definition at line 77 of file db.hpp.

◆ PInv

using PInv = lib::P<Inventory>

Definition at line 42 of file inventory.hpp.

◆ PMeta

using PMeta = lib::P<Meta>

Definition at line 142 of file asset/meta.hpp.

◆ PPipe

typedef lib::P< Pipe > PPipe

Definition at line 43 of file pipe.hpp.

◆ InstructionSequence

Definition at line 45 of file procpatt.hpp.

◆ PSequence

Definition at line 76 of file sequence.hpp.

◆ PTimeline

Definition at line 82 of file timeline.hpp.

◆ PViewer

using PViewer = lib::P<Viewer>

Definition at line 69 of file viewer.hpp.

Enumeration Type Documentation

◆ Kind

enum Kind

top-level distinction of different Kinds of Assets.

For convenience, this classification is slightly denormalised, as AUDIO, and VIDEO are both asset::Media objects, EFFECT and CODEC are asset::Proc objects, while STRUCT and META refer directly to the corresponding Interfaces asset::Struct and asset::Meta.

Enumerator
AUDIO 
VIDEO 
EFFECT 
CODEC 
STRUCT 
META 

Definition at line 47 of file category.hpp.


Class Documentation

◆ steam::asset::DoConditional

class steam::asset::DoConditional
+ Collaboration diagram for DoConditional:

◆ steam::asset::TestClipAsset

class steam::asset::TestClipAsset
+ Collaboration diagram for TestClipAsset:

◆ steam::asset::TypedID

class steam::asset::TypedID
+ Collaboration diagram for TypedID:

Function Documentation

◆ all_parents_enabled()

bool all_parents_enabled ( const vector< PAsset > &  parents)

Definition at line 108 of file asset.cpp.

References check_isActive, and Asset::parents.

Referenced by Asset::enable(), and Asset::isActive().

+ Here is the caller graph for this function:

◆ propagate_down()

void propagate_down ( PAsset  child,
bool  on 
)

Definition at line 126 of file asset.cpp.

Referenced by Asset::enable().

+ Here is the caller graph for this function:

◆ pAsset()

template<class A >
const PcAsset pAsset ( shared_ptr< A > const &  subPtr)
inline

promote subtype-ptr to PAsset, e.g.

for comparing

Definition at line 304 of file asset.hpp.

◆ hash_value() [1/3]

size_t hash_value ( Category const &  cat)
inline

Definition at line 90 of file category.hpp.

Referenced by AssetManager::getID().

+ Here is the caller graph for this function:

◆ hash_value() [2/3]

size_t hash_value ( Asset::Ident const &  idi)

Definition at line 49 of file db.hpp.

References Asset::Ident::category, hash, Asset::Ident::name, and Asset::Ident::org.

◆ hash_value() [3/3]

size_t hash_value ( Asset const &  asset)

Definition at line 59 of file db.hpp.

◆ LUMIERA_ERROR_DEFINE() [1/3]

LUMIERA_ERROR_DEFINE ( PART_OF_COMPOUND  ,
"part of compound used as toplevel element"   
)

◆ LUMIERA_ERROR_DECLARE() [1/3]

LUMIERA_ERROR_DECLARE ( PART_OF_COMPOUND  )

◆ LUMIERA_ERROR_DECLARE() [2/3]

LUMIERA_ERROR_DECLARE ( MISSING_INSTANCE  )

Existing ID registration without associated instance.

◆ LUMIERA_ERROR_DEFINE() [2/3]

LUMIERA_ERROR_DEFINE ( MISSING_INSTANCE  ,
"Existing ID registration without associated instance"   
)

◆ LUMIERA_ERROR_DEFINE() [3/3]

LUMIERA_ERROR_DEFINE ( ORIG_NOT_FOUND  ,
"Media referred by placeholder not found"   
)

◆ LUMIERA_ERROR_DECLARE() [3/3]

LUMIERA_ERROR_DECLARE ( ORIG_NOT_FOUND  )

◆ dump()

void dump ( PcAsset const &  aa)
inline

Definition at line 48 of file asset-diagnostics.hpp.

References P< TAR, BASE >::get().

+ Here is the call graph for this function:

◆ dumpAssetManager()

void dumpAssetManager ( )
inline

Definition at line 60 of file asset-diagnostics.hpp.

References AssetManager::instance.

Referenced by CompoundMedia_test::run(), CreateAsset_test::run(), and IdentityOfAssets_test::run().

+ Here is the caller graph for this function:

◆ dependencyCheck()

template<class CHI , class PAR >
bool dependencyCheck ( lib::P< CHI >  child,
lib::P< PAR >  parent 
)
inline

Definition at line 71 of file asset-diagnostics.hpp.

Referenced by DependentAssets_test::checkRealAssetDependencyRegistration(), BasicPipe_test::dependProcPatt(), and MakeClip_test::run().

+ Here is the caller graph for this function:

Variable Documentation

◆ check_isActive

function<bool(const PAsset&)> check_isActive
Initial value:
= bind ( &Asset::isActive
, bind (&PAsset::get, _1 )
)

Definition at line 102 of file asset.cpp.

Referenced by all_parents_enabled().

◆ CURRENT

Symbol CURRENT = "current"
static

Definition at line 48 of file buildinstruct.hpp.

◆ CLIP_SUBFOLDER

const string CLIP_SUBFOLDER = "clips"

◆ DUMMY_TIME

const Duration DUMMY_TIME(FSecs(5)) ( FSecs(5)  )
Todo:
solve config management