<p>Superinterface describing especially the bookeeping properties of Assets<br/></p><p>Declaration :</p><ul><li>C++ : class Asset </li><li>Java : public interface Asset </li></ul><p>Directly inherited by : <ahref="class136709.html#refclass136709"><b>Media</b></a><ahref="class137093.html#refclass137093"><b>Meta</b></a><ahref="class136837.html#refclass136837"><b>Proc</b></a><ahref="class136965.html#refclass136965"><b>Struct</b></a></p>
<p>origin or authorship id. Can be a project abbreviation, a package id or just the authors nickname or UID. This allows for the compnent name to be more generic (e.g. "blur"). Default for all assets provided by the core Lumiera codebase is "lumi".<br/></p><p>Declaration :</p><ul><li>Uml : + org : string</li><li>C++ : public: const string org</li></ul><aname="refattribute130949"></a>
<p>version number of the thing or concept represented by this asset. Of each unique tuple (name, category, org) there will be only one version in the whole system. Version 0 is reserved for internal purposes. Versions are considered to be ordered, and any higher version is supposed to be fully backwards compatible to all previous versions.<br/></p><p>Declaration :</p><ul><li>Uml : + version : uint</li><li>C++ : public: const unsigned int version</li></ul><aname="refattribute131077"></a>
<p>additional classification, selections or departments this asset belongs to. Groups are optional, non-exclusive and may be overlapping.<br/></p><p>Declaration :</p><ul><li>Uml : # groups : set<string></li><li>C++ : protected: set<string> groups</li></ul><aname="refattribute131205"></a>
<p>user visible qualification of the thing, unit or concept represented by this asset. perferably "in one line". To be localized.<br/></p><p>Declaration :</p><ul><li>Uml : # longDesc : string</li><li>C++ : protected: const string longDesc</li></ul><aname="refoperation132101"></a>
<table><tr><td><divclass="element">Operation <b>getParents</b></div></td></tr></table><p>List of entities this asset depends on or requires to be functional. May be empty. The head of this list can be considered the primary prerequisite<br/></p><p>Declaration :</p><ul><li>Uml : + getParents() : vector<PAsset></li><li>C++ : public: vector<PAsset> getParents () </li></ul><aname="refoperation132229"></a>
<table><tr><td><divclass="element">Operation <b>getDependant</b></div></td></tr></table><p>All the other assets requiring this asset to be functional. For example, all the clips depending on a given media file. May be empty. The dependency relation is transitive.<br/></p><p>Declaration :</p><ul><li>Uml : + getDependant() : vector<PAsset></li><li>C++ : public: vector<PAsset> getDependant () </li></ul><aname="refoperation132869"></a>
<table><tr><td><divclass="element">Operation <b>isActive</b></div></td></tr></table><p>weather this asset is swithced on and consequently included in the fixture and participates in rendering<br/></p><p>Declaration :</p><ul><li>Uml : + isActive() : bool</li><li>C++ : public: bool isActive () </li></ul><aname="refoperation132997"></a>
<table><tr><td><divclass="element">Operation <b>enable</b></div></td></tr></table><p>change the enabled status of this asset. Note the corresponding #isActive predicate may depend on the enablement status of parent assets as well<br/></p><p>Declaration :</p><ul><li>Uml : + enable(in bool : ) : void, exceptions : <ahref="class135941.html#refclass135941"><b>State</b></a></li><li>C++ : public: void enable () throw (<ahref="class135941.html#refclass135941"><b>State</b></a>)</li></ul></div>