format 58 "Control" // ProcessingLayer::Control revision 9 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_members_multiplicity default show_members_initialization default member_max_width 0 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 show_stereotype_properties default //use case diagram settings package_name_in_tab default show_context default auto_label_position default draw_all_relations default class_drawing_mode default shadow default show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties default comment "Command handling, Proc-Layer dispatcher, controller and administrative facilities" classview 128389 "Controller Workings" //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_members_multiplicity default show_members_initialization default member_max_width 0 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties default classdiagram 128645 "Controller Entities" draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 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 show_stereotype_properties default size A4 end activity 128133 "configure Render" activitydiagram 129541 "the render configuration flow" 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 show_stereotype_properties default size A4 end parameter 128005 "Render Request" explicit_type "" unordered in flow 128901 "" on activityaction_ref 128389 // activity action determine Render Params end end activityaction 128133 "setup StateProxy" opaque_action flow 129157 "" on activitynode_ref 128389 // decision end end activitynode 128389 decision "build necessary?" flow 129541 "" on activityaction_ref 128517 // activity action build Render Engine uml_guard "build necessary" end flow 129797 "" on activitynode_ref 128773 // merge uml_guard "reuse exiting Engine" end end activityaction 128005 "setup Build Params" opaque_action end activitynode 128773 merge "" flow 130053 "" on activitynode_ref 128901 // activity_final end end expansionregion 128005 "determine Render Params" iterative end activityaction 128389 "determine Render Params" opaque_action associated_diagram activitydiagram_ref 129541 // the render configuration flow flow 129029 "" on activityaction_ref 128133 // activity action setup StateProxy end end activityaction 128517 "build Render Engine" opaque_action flow 129669 "" on activitynode_ref 128773 // merge end end activitynode 128901 activity_final "" end end class 130309 "ControllerFacade" visibility public stereotype "boundary" cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { ${members}}; " explicit_switch_type "" comment "Provides unified access to the Proc-Subsystem Controller. Especially, this Facade class provides the functions to get a render engine to carry out actual renderings." end class 130437 "PathManager" visibility package cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" comment "While building a render engine, this Strategy class decides on the actual render strategy in accordance to the current controller settings (system state)" operation 128261 "buildProcessor" public return_type class_ref 131461 // RenderGraph 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} } " end end class 130949 "RenderState" visibility protected cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" comment "Encapsulates the logic used to get a \"current render process\" in accordance to the currentyl applicable controller settings. The provided StateProxy serves to hold any mutalbe state used in the render process, so the rest of the render engine can be stateless." operation 128389 "getStateProxy" public return_type class_ref 132741 // State 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} } " end end class 145413 "STypeManager" visibility package cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" end end classview 130693 "Command Handling" //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_members_multiplicity default show_members_initialization default member_max_width 0 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties 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 show_stereotype_properties default classdiagram 134021 "Command structure" draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 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 show_stereotype_properties default size A4 end class 148485 "Command" visibility public stereotype "interface" cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "${comment}${@}${visibility}interface ${name}${extends} { ${members}} " php_decl "${comment}${visibility}interface ${name} { ${members}} " python_2_2 python_decl "" idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { ${members}}; " explicit_switch_type "" comment "Key abstraction for all proc/edit operations and UNDO management" attribute 132613 "ID" const_attribute public explicit_type "" cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; " java_decl "" php_decl "" python_decl "" idl_decl "" end attribute 132741 "name" const_attribute public explicit_type "Symbol" cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; " java_decl "" php_decl "" python_decl "" idl_decl "" end attribute 132869 "do" public type class_ref 148741 // Mutation cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; " java_decl "" php_decl "" python_decl "" idl_decl "" end attribute 132997 "undo" public type class_ref 148869 // UndoMutation cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; " java_decl "" php_decl "" python_decl "" idl_decl "" end attribute 133125 "closure" private type class_ref 148997 // CmdClosure cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; " java_decl "" php_decl "" python_decl "" idl_decl "" end operation 137733 "execute" public explicit_return_type "void" nparams 1 param in name "context" explicit_type "HandlingPattern" 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} } " end classrelation 172805 // relation 162821 ---> stereotype "has_a" a role_name "" multiplicity "1" protected cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; " classrelation_ref 172805 // b multiplicity "1" parent class_ref 148997 // CmdClosure end classrelation 173189 // relation 163205 ---> stereotype "has_a" a role_name "" protected cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; " classrelation_ref 173189 // b parent class_ref 148741 // Mutation end classrelation 173317 // relation 163333 ---> a role_name "" protected cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; " classrelation_ref 173317 // b parent class_ref 148869 // UndoMutation end classrelation 173573 // relation 163589 -_-> stereotype "invokes" a package cpp default "#include in source" classrelation_ref 173573 // b parent class_ref 148613 // HandlingPattern end end class 148613 "HandlingPattern" abstract visibility public stereotype "interface" cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" classrelation 173701 // relation 163717 -_-> stereotype "involves" a package cpp default "#include in source" classrelation_ref 173701 // b parent class_ref 141957 // ProcDispatcher end end class 148741 "Mutation" visibility package stereotype "func" cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" end class 148869 "UndoMutation" visibility package stereotype "func" cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" classrelation 171909 // relation 161925 ---|> a public cpp default "${type}" classrelation_ref 171909 // b parent class_ref 148741 // Mutation end classrelation 172933 // capture () relation 162949 ---> a role_name "capture" protected cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; " classrelation_ref 172933 // capture () b parent class_ref 148741 // Mutation end classrelation 173061 // undoOp () relation 163077 ---> a role_name "undoOp" protected cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; " classrelation_ref 173061 // undoOp () b parent class_ref 148741 // Mutation end end class 148997 "CmdClosure" visibility package cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" end class 149125 "DoSync" visibility package cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" classrelation 172037 // relation 162053 ---|> a public cpp default "${type}" classrelation_ref 172037 // b parent class_ref 148613 // HandlingPattern end end class 149253 "DoAsync" visibility package cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" classrelation 172165 // relation 162181 ---|> a public cpp default "${type}" classrelation_ref 172165 // b parent class_ref 148613 // HandlingPattern end end class 149381 "UndoSync" visibility package cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" classrelation 172293 // relation 162309 ---|> a public cpp default "${type}" classrelation_ref 172293 // b parent class_ref 148613 // HandlingPattern end end class 149509 "RedoLast" visibility package cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" classrelation 172421 // relation 162437 ---|> a public cpp default "${type}" classrelation_ref 172421 // b parent class_ref 148613 // HandlingPattern end end class 149637 "ParamAccessor" visibility package nformals 1 formal name "TY" type "class" explicit_default_value "" explicit_extends "" cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" end class 141957 "ProcDispatcher" visibility package stereotype "control" cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" end class 150789 "Closure" visibility package nformals 1 formal name "SIG" type "class" explicit_default_value "" explicit_extends "" cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" classrelation 174853 // relation 164869 ---|> a public cpp default "${type}" classrelation_ref 174853 // b parent class_ref 148997 // CmdClosure end classrelation 175109 // params () relation 165125 *--> stereotype "tuple" a role_name "params" protected cpp default " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; " classrelation_ref 175109 // params () b multiplicity "*" parent class_ref 149637 // ParamAccessor end end class 150917 "ArgumentHolder" visibility package nformals 1 formal name "SIG" type "class" explicit_default_value "" explicit_extends "" cpp_decl "${comment}${template}class ${name}${inherit} { ${members} }; ${inlines} " java_decl "" php_decl "" python_2_2 python_decl "" idl_decl "" explicit_switch_type "" classrelation 175237 // relation 165253 ---|> a public cpp default "${type}" classrelation_ref 175237 // b parent class_ref 148997 // CmdClosure end classrelation 175493 // arguments () relation 165509 ---> stereotype "manages" a role_name "arguments" multiplicity "1" protected cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; " classrelation_ref 175493 // arguments () b multiplicity "1" parent class_ref 150789 // Closure end end state 128005 "Lifecycle" stereotype "machine" statediagram 135173 "Command lifecycle" package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition yes draw_all_relations default shadow default show_activities default region_horizontally default drawing_language default show_stereotype_properties default size A4 end pseudostate 128005 entry_point "ID" transition 128901 "" on stateaction_ref 128005 external end end stateaction 128005 uml "fetch def" comment "try to fetch existing definition" transition 128773 "" on pseudostate_ref 128133 // choice external end end state 128133 "scratch" transition 128261 "" on stateaction_ref 128133 external end end stateaction 128133 uml "def DO" transition 128389 "" on pseudostate_ref 128261 // fork external end transition 129029 "" on stateaction_ref 128261 external end transition 129157 "" on stateaction_ref 128517 external end end stateaction 128261 uml "def CAP" transition 129285 "" on stateaction_ref 128389 external end end stateaction 128389 uml "def UNDO" transition 129541 "" on state_ref 128261 // CmdDef external end end stateaction 128517 uml "def UNDO" transition 129413 "" on stateaction_ref 128645 external end end stateaction 128645 uml "def CAP" transition 129669 "" on state_ref 128261 // CmdDef external end end state 128261 "CmdDef" transition 129797 "" on stateaction_ref 128773 external end end stateaction 128773 uml "bind" transition 129925 "" on state_ref 128389 // Command external end end state 128389 "Command" transition 130053 "" on stateaction_ref 129029 external end end stateaction 129029 stereotype "send-signal" uml "exec pattern" transition 130181 "" on state_ref 128517 // undo-able external end end state 128517 "undo-able" transition 130309 "" on pseudostate_ref 128517 // exit_point external end transition 130437 "" on stateaction_ref 129157 external end transition 130693 "" on stateaction_ref 129029 external end end pseudostate 128133 choice stereotype "try" transition 128005 "" on state_ref 128133 // scratch uml_expr "not found" external end transition 128133 "" on state_ref 128261 // CmdDef uml_expr "found" external end end pseudostate 128261 fork transition 128517 "" on stateaction_ref 128261 external end transition 128645 "" on stateaction_ref 128517 external end end pseudostate 128389 fork end pseudostate 128517 exit_point "done" end stateaction 129157 stereotype "send-signal" uml "undo" transition 130565 "" on state_ref 128517 // undo-able external end end end end end