589 lines
20 KiB
Text
589 lines
20 KiB
Text
format 40
|
|
"AssetManager" // ProcessingLayer::AssetManager
|
|
revision 5
|
|
modified_by 5 "hiv"
|
|
// class settings
|
|
//class diagram settings
|
|
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
|
//use case diagram settings
|
|
package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
|
|
//sequence diagram settings
|
|
show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default
|
|
//collaboration diagram settings
|
|
show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default
|
|
//object diagram settings
|
|
write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
|
|
//component diagram settings
|
|
package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
|
|
draw_component_as_icon default show_component_req_prov default show_component_rea default
|
|
//deployment diagram settings
|
|
package_name_in_tab default show_context default write_horizontally default auto_label_position default draw_all_relations default shadow default
|
|
draw_component_as_icon default show_component_req_prov default show_component_rea default
|
|
//state diagram settings
|
|
package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default
|
|
show_activities default region_horizontally default drawing_language default
|
|
//activity diagram settings
|
|
package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default
|
|
show_infonote default drawing_language default
|
|
|
|
classview 128901 "Assets"
|
|
//class diagram settings
|
|
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
|
//collaboration diagram settings
|
|
show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default
|
|
//object diagram settings
|
|
write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
|
|
//sequence diagram settings
|
|
show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default
|
|
//state diagram settings
|
|
package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default
|
|
show_activities default region_horizontally default drawing_language default
|
|
//class settings
|
|
//activity diagram settings
|
|
package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default
|
|
show_infonote default drawing_language default
|
|
|
|
classdiagram 130309 "Asset Kinds"
|
|
draw_all_relations no hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
|
size A4
|
|
end
|
|
|
|
classdiagram 130437 "Media-Asset Relations"
|
|
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
|
size A4
|
|
end
|
|
|
|
class 136453 "Asset"
|
|
abstract visibility public stereotype "interface"
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl "${comment}${@}${visibility}interface ${name}${extends} {
|
|
${members}}
|
|
"
|
|
idl_decl "${comment}${abstract}${local}interface ${name}${inherit} {
|
|
${members}};
|
|
"
|
|
explicit_switch_type ""
|
|
|
|
comment "Superinterface describing especially the bookeeping properties of Assets"
|
|
attribute 130437 "id"
|
|
const_attribute public explicit_type "long"
|
|
init_value "AssetManager::register<KIND> (name, category, org, version)"
|
|
cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
comment "Asset primary key."
|
|
end
|
|
|
|
attribute 130565 "name"
|
|
const_attribute public explicit_type "string"
|
|
cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
comment "element ID, comprehensible but sanitized. The tuple (category, name, org) is unique."
|
|
end
|
|
|
|
classrelation 140421 // category (<unidirectional association>)
|
|
relation 138629 --->
|
|
a role_name "category" multiplicity "1" const_relation public
|
|
comment "primary tree like classification of the asset"
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
|
"
|
|
classrelation_ref 140421 // category (<unidirectional association>)
|
|
b multiplicity "*" parent class_ref 137221 // Category
|
|
association_type class_ref 137221 // Category
|
|
end
|
|
|
|
attribute 130821 "org"
|
|
const_attribute public explicit_type "string"
|
|
init_value "cin3"
|
|
cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
comment "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 cinelerra-3 codebase is \"cin3\"."
|
|
end
|
|
|
|
attribute 130949 "version"
|
|
const_attribute public explicit_type "uint"
|
|
init_value "1"
|
|
cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
comment "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."
|
|
end
|
|
|
|
attribute 131077 "groups"
|
|
protected explicit_type "set<string>"
|
|
cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
comment "additional classification, selections or departments this asset belongs to. Groups are optional, non-exclusive and may be overlapping."
|
|
end
|
|
|
|
attribute 131205 "shortDesc"
|
|
const_attribute protected explicit_type "string"
|
|
cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
comment "user visible Name-ID. To be localized."
|
|
end
|
|
|
|
attribute 131333 "longDesc"
|
|
const_attribute protected explicit_type "string"
|
|
cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
comment "user visible qualification of the thing, unit or concept represented by this asset. perferably \"in one line\". To be localized."
|
|
end
|
|
|
|
operation 132101 "getParents"
|
|
public explicit_return_type "vector<PAsset>"
|
|
nparams 0
|
|
cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};"
|
|
cpp_def "${comment}${inline}${type}
|
|
${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl}
|
|
{
|
|
${body}
|
|
}
|
|
|
|
"
|
|
|
|
|
|
comment "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"
|
|
end
|
|
|
|
operation 132229 "getDependant"
|
|
public explicit_return_type "vector<PAsset>"
|
|
nparams 0
|
|
cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};"
|
|
cpp_def "${comment}${inline}${type}
|
|
${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl}
|
|
{
|
|
${body}
|
|
}
|
|
|
|
"
|
|
|
|
|
|
comment "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."
|
|
end
|
|
|
|
operation 132869 "isActive"
|
|
public explicit_return_type "bool"
|
|
nparams 0
|
|
cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};"
|
|
cpp_def "${comment}${inline}${type}
|
|
${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl}
|
|
{
|
|
${body}
|
|
}
|
|
|
|
"
|
|
|
|
|
|
comment "weather this asset is swithced on and consequently included in the fixture and participates in rendering"
|
|
end
|
|
|
|
operation 132997 "enable"
|
|
public explicit_return_type "void"
|
|
nparams 1
|
|
param in name "bool" explicit_type ""
|
|
nexceptions 1
|
|
exception class_ref 135941 // State
|
|
cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};"
|
|
cpp_def "${comment}${inline}${type}
|
|
${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl}
|
|
{
|
|
${body}
|
|
}
|
|
|
|
"
|
|
|
|
|
|
comment "change the enabled status of this asset. Note the corresponding #isActive predicate may depend on the enablement status of parent assets as well"
|
|
end
|
|
end
|
|
|
|
class 136581 "AssetManager"
|
|
visibility public stereotype "boundary"
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl "${comment}${abstract}${local}interface ${name}${inherit} {
|
|
${members}};
|
|
"
|
|
explicit_switch_type ""
|
|
|
|
comment "Facade for the Asset subsystem"
|
|
operation 132357 "register"
|
|
class_operation public explicit_return_type "long"
|
|
nparams 4
|
|
param inout name "name" explicit_type "string"
|
|
param inout name "category" explicit_type "string"
|
|
param inout name "org" explicit_type "string"
|
|
param inout name "uint" explicit_type "version"
|
|
nexceptions 1
|
|
explicit_exception "Invalid"
|
|
cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${t0} & ${p0}, ${t1} & ${p1}, ${t2} & ${p2}, ${t3}& ${p3}${)}${const}${volatile} ${throw}${abstract};"
|
|
cpp_def "${comment}${inline}${type}
|
|
${class}::${name} ${(}${t0} & ${p0}, ${t1} & ${p1}, ${t2} & ${p2}, ${t3}& ${p3}${)}${const}${volatile} ${throw}${staticnl}
|
|
{
|
|
${body}
|
|
}
|
|
|
|
"
|
|
|
|
|
|
comment "registers an asset object in the internal DB, providing its unique key"
|
|
end
|
|
|
|
operation 132485 "getAsset"
|
|
public explicit_return_type "KIND"
|
|
nparams 1
|
|
param in name "id" explicit_type "long"
|
|
nexceptions 1
|
|
exception class_ref 136069 // Invalid
|
|
cpp_decl " ${comment}template<class KIND>
|
|
${friend}${static}${inline}${virtual}${type} ${name} ${(}${t0} & ${p0}${)}${const}${volatile} ${throw}${abstract};"
|
|
cpp_def "${comment}template<class KIND>
|
|
${inline}${type}
|
|
${class}::${name} ${(}${t0} & ${p0}${)}${const}${volatile} ${throw}${staticnl}
|
|
{
|
|
${body}
|
|
}
|
|
|
|
"
|
|
|
|
|
|
comment "find and return corresponging object"
|
|
end
|
|
|
|
operation 132613 "known"
|
|
public explicit_return_type "bool"
|
|
nparams 1
|
|
param in name "id" explicit_type "long"
|
|
cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${t0} ${p0}${)}${const}${volatile} ${throw}${abstract};"
|
|
cpp_def "${comment}${inline}${type}
|
|
${class}::${name} ${(}${t0} ${p0}${)}${const}${volatile} ${throw}${staticnl}
|
|
{
|
|
${body}
|
|
}
|
|
|
|
"
|
|
|
|
|
|
comment "@return true if the given id is registered in the internal asset DB"
|
|
end
|
|
|
|
operation 132741 "remove"
|
|
public explicit_return_type "void"
|
|
nparams 1
|
|
param in name "id" explicit_type "long"
|
|
nexceptions 2
|
|
exception class_ref 136069 // Invalid
|
|
exception class_ref 135941 // State
|
|
cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${t0} ${p0}${)}${const}${volatile} ${throw}${abstract};"
|
|
cpp_def "${comment}${inline}${type}
|
|
${class}::${name} ${(}${t0} ${p0}${)}${const}${volatile} ${throw}${staticnl}
|
|
{
|
|
${body}
|
|
}
|
|
|
|
"
|
|
|
|
|
|
comment "remove the given asset <i>together with all its dependants</i> from the internal DB"
|
|
end
|
|
end
|
|
|
|
class 136709 "Media"
|
|
visibility public
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "key abstraction: media-like assets"
|
|
classrelation 139909 // <realization>
|
|
relation 138117 -_-|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 139909 // <realization>
|
|
b multiplicity "" parent class_ref 136453 // Asset
|
|
end
|
|
end
|
|
|
|
class 136837 "Proc"
|
|
visibility public
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "key abstraction: data processing asset"
|
|
classrelation 140037 // <realization>
|
|
relation 138245 -_-|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 140037 // <realization>
|
|
b multiplicity "" parent class_ref 136453 // Asset
|
|
end
|
|
end
|
|
|
|
class 136965 "Struct"
|
|
visibility public
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "key abstraction: structural asset"
|
|
classrelation 140165 // <realization>
|
|
relation 138373 -_-|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 140165 // <realization>
|
|
b multiplicity "" parent class_ref 136453 // Asset
|
|
end
|
|
end
|
|
|
|
class 137093 "Meta"
|
|
visibility public
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "key abstraction: metadata and organisational asset"
|
|
classrelation 140293 // <realization>
|
|
relation 138501 -_-|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 140293 // <realization>
|
|
b multiplicity "" parent class_ref 136453 // Asset
|
|
end
|
|
end
|
|
|
|
class 137221 "Category"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "tree like classification of Assets"
|
|
end
|
|
|
|
class 137349 "Clip"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "bookkeeping (asset) view of a media clip."
|
|
classrelation 140549 // <generalisation>
|
|
relation 138757 ---|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 140549 // <generalisation>
|
|
b multiplicity "" parent class_ref 136709 // Media
|
|
end
|
|
|
|
classrelation 141957 // source (<unidirectional association>)
|
|
relation 140165 --->
|
|
a role_name "source" multiplicity "1" const_relation protected
|
|
comment "media source of this clip"
|
|
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
|
"
|
|
classrelation_ref 141957 // source (<unidirectional association>)
|
|
b multiplicity "*" parent class_ref 136709 // Media
|
|
association_type class_ref 136709 // Media
|
|
end
|
|
end
|
|
|
|
class 137477 "Unknown"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "placeholder for unknown or unavailable media source"
|
|
classrelation 140933 // <generalisation>
|
|
relation 139141 ---|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 140933 // <generalisation>
|
|
b multiplicity "" parent class_ref 137605 // Preview
|
|
end
|
|
end
|
|
|
|
class 137605 "Preview"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "alternative version of the media data, probably with lower resolution"
|
|
classrelation 140805 // <generalisation>
|
|
relation 139013 ---|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 140805 // <generalisation>
|
|
b multiplicity "" parent class_ref 136709 // Media
|
|
end
|
|
end
|
|
|
|
class 137733 "Effect"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "Effect or media processing component"
|
|
classrelation 141061 // <generalisation>
|
|
relation 139269 ---|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 141061 // <generalisation>
|
|
b multiplicity "" parent class_ref 136837 // Proc
|
|
end
|
|
end
|
|
|
|
class 137861 "Codec"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "description of some media data decoder or encoder facility"
|
|
classrelation 141189 // <generalisation>
|
|
relation 139397 ---|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 141189 // <generalisation>
|
|
b multiplicity "" parent class_ref 136837 // Proc
|
|
end
|
|
end
|
|
|
|
class 137989 "Track"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "structural asset holding the configuration of a track in the EDL"
|
|
classrelation 141317 // <generalisation>
|
|
relation 139525 ---|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 141317 // <generalisation>
|
|
b multiplicity "" parent class_ref 136965 // Struct
|
|
end
|
|
end
|
|
|
|
class 138117 "OutPort"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "structural asset corresponding to some port generating media output"
|
|
classrelation 141445 // <generalisation>
|
|
relation 139653 ---|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 141445 // <generalisation>
|
|
b multiplicity "" parent class_ref 136965 // Struct
|
|
end
|
|
end
|
|
|
|
class 138245 "Dataset"
|
|
visibility package
|
|
cpp_decl "${comment}${template}class ${name}${inherit}
|
|
{
|
|
${members} };
|
|
${inlines}
|
|
"
|
|
java_decl ""
|
|
idl_decl ""
|
|
explicit_switch_type ""
|
|
|
|
comment "meta asset describing a collection of control data"
|
|
classrelation 141573 // <generalisation>
|
|
relation 139781 ---|>
|
|
a public
|
|
cpp default "${type}"
|
|
classrelation_ref 141573 // <generalisation>
|
|
b multiplicity "" parent class_ref 137093 // Meta
|
|
end
|
|
end
|
|
end
|
|
end
|