format 58
"design" // design
  revision 15
  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 "All things concering the big picture.
Not a real code package, rather a container for design drafts, specifications, decisions."
  componentview 128005 "Architecture"
    //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
    comment "The various Components comprising the Lumiera Video editing Application"
    componentdiagram 128005 "Overview"
      package_name_in_tab default show_context default auto_label_position default draw_all_relations no shadow default
      draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default
      comment "This drawing shows the top level compoents and relations"
      size A4
    end

    component 129925 "CommonLib"
      provided_classes
	class_ref 135557 // Error
	class_ref 134917 // Time
      end
    end

    component 128005 "Builder"
      stereotype "subsystem"
      provided_classes
	class_ref 132741 // State
      end
      required_classes
	class_ref 128261 // Fixture
	class_ref 128005 // SessionImpl
      end
    end

    component 128133 "Session"
      stereotype "subsystem"
      provided_classes
	class_ref 128133 // Seq
	class_ref 128261 // Fixture
	class_ref 128517 // MObject
	class_ref 134661 // ParamProvider
	class_ref 128005 // SessionImpl
      end
      component 128389 "EDL"
	stereotype "entity"
      end

      component 128517 "Fixture"
	stereotype "entity"
      end
    end

    component 128261 "Controller"
      stereotype "subsystem"
      provided_classes
	class_ref 130565 // BuilderFacade
      end
      simplerelation 128261
	-_->
	  on component_ref 128005 // Builder
      end
    end

    component 128645 "AssetManagement"
      stereotype "subsystem"
    end

    component 128773 "Dispatcher"
      provided_classes
	class_ref 141957 // ProcDispatcher
      end
    end

    component 128901 "Engine"
      required_classes
	class_ref 132741 // State
      end
      simplerelation 128133
	-_->
	  on component_ref 129029 // Frame (Stream) Provider
      end

      component 130053 "ProcNode"
	stereotype "entity"
	provided_classes
	  class_ref 134533 // Parameter
	end
	required_classes
	  class_ref 134661 // ParamProvider
	end
      end
    end

    component 129029 "Frame (Stream) Provider"
      simplerelation 128005
	-_->
	  on component_ref 129157 // Cache
      end
    end

    component 129157 "Cache"
    end

    component 129285 "RenderPathManager"
      provided_classes
	class_ref 130437 // PathManager
      end
    end

    component 130181 "MediaFactory"
      stereotype "component"
      required_classes
	class_ref 139525 // MediaAccessFacade
      end
    end

    component 130309 "AssetDB"
      stereotype "service"
    end

    component 131077 "client code"
      required_classes
	class_ref 141957 // ProcDispatcher
      end
    end
  end

  classview 129413 "Project Entities"
    //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 132741 "TimelineSequences"
      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 145669 "Project"
      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 158981 // <composition>
	relation 154885 *---
	  a role_name "" multiplicity "1..*" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
"
	    classrelation_ref 158981 // <composition>
	  b role_name "" multiplicity "1" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
"
	    classrelation_ref 159109 // <composition>
      end

      classrelation 159365 // <composition>
	relation 155141 *---
	  a role_name "" multiplicity "1..*" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
"
	    classrelation_ref 159365 // <composition>
	  b role_name "" multiplicity "1" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
"
	    classrelation_ref 159493 // <composition>
      end
    end

    class 145925 "PlayControl"
      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 160389 // <unidirectional association>
	relation 156037 --->
	  stereotype "direct"
	  a role_name "" multiplicity "*" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 160389 // <unidirectional association>
	  b parent class_ref 146437 // PlayheadCursor
      end
    end

    class 146053 "Monitor"
      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 160133 // <unidirectional association>
	relation 155781 --->
	  stereotype "attach"
	  a role_name "" multiplicity "0..1" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 160133 // <unidirectional association>
	  b parent class_ref 145541 // Timeline
      end

      classrelation 160517 // <association>
	relation 156165 ----
	  a role_name "" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 160517 // <association>
	  b role_name "" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 160645 // <association>
      end
    end

    class 146181 "RenderTask"
      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 160261 // <unidirectional association>
	relation 155909 --->
	  a role_name "" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 160261 // <unidirectional association>
	  b parent class_ref 145541 // Timeline
      end
    end

    class 146309 "Sequence"
      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 159493 // <composition>
	relation_ref 155141 // <composition>
      end

      classrelation 159877 // subSequences (<unidirectional association>)
	relation 155525 --->
	  stereotype "contains"
	  a role_name "subSequences" multiplicity "*" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 159877 // subSequences (<unidirectional association>)
	  b multiplicity "1..*" parent class_ref 146309 // Sequence
      end

      classrelation 161541 // <unidirectional association>
	relation 156933 --->
	  a role_name "" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 161541 // <unidirectional association>
	  b parent class_ref 128517 // MObject
      end

      classrelation 161669 // trackTree (<unidirectional association>)
	relation 157061 --->
	  a role_name "trackTree" multiplicity "1" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 161669 // trackTree (<unidirectional association>)
	  b parent class_ref 128389 // Track
      end
    end

    class 146437 "PlayheadCursor"
      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 160645 // <association>
	relation_ref 156165 // <association>
      end

      classrelation 160901 // <association>
	relation_ref 156293 // <association>
      end
    end
  end

  componentview 128133 "interfaces"
    //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
    componentdiagram 130053 "proc-components"
      package_name_in_tab default show_context default auto_label_position default draw_all_relations no shadow default
      draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default
      size A3
    end

    component 129541 "ControllerFacade"
      provided_classes
	class_ref 130309 // ControllerFacade
      end
      required_classes
	class_ref 130565 // BuilderFacade
	class_ref 130437 // PathManager
      end
    end

    component 129797 "ConManager"
      stereotype "component"
      required_classes
	class_ref 134661 // ParamProvider
      end
    end

    componentdiagram 130693 "backend-components"
      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
      size A4
    end

    component 130437 "Media Access"
      stereotype "service"
      provided_classes
	class_ref 139525 // MediaAccessFacade
      end
    end
  end

  package_ref 128645 // codegen
end
