format 58
"CommonLib" // CommonLib
  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
  
  classview 129541 "InterfaceSystem"
    //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 132869 "Layer Separation Interface"
      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 146565 "Facade"
      visibility package stereotype "interface"
      cpp_decl "${comment}${template}class ${name}${inherit}
  {
${members}  };
${inlines}
"
      java_decl "${comment}${@}${visibility}interface ${name}${extends} {
${members}}
"
      php_decl ""
      python_2_2 python_decl ""
      idl_decl "${comment}${abstract}${local}interface ${name}${inherit} {
${members}};
"
      explicit_switch_type ""
      
    end

    class 146693 "Proxy"
      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 169861 // <realization>
	relation 159877 -_-|>
	  a public
	    cpp default "${type}"
	    classrelation_ref 169861 // <realization>
	  b parent class_ref 146565 // Facade
      end

      classrelation 170117 // <unidirectional association>
	relation 160133 --->
	  stereotype "uses"
	  a role_name "" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 170117 // <unidirectional association>
	  b parent class_ref 146949 // C_Interface
      end
    end

    class 146821 "ServiceImpl"
      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 169989 // <realization>
	relation 160005 -_-|>
	  a public
	    cpp default "${type}"
	    classrelation_ref 169989 // <realization>
	  b parent class_ref 146565 // Facade
      end

      classrelation 170501 // <unidirectional association>
	relation 160517 --->
	  stereotype "has_a"
	  a role_name "" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 170501 // <unidirectional association>
	  b parent class_ref 147205 // InstanceHandle
      end
    end

    class 146949 "C_Interface"
      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 147077 "C_Instance"
      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 170245 // <realization>
	relation 160261 -_-|>
	  a public
	    cpp default "${type}"
	    classrelation_ref 170245 // <realization>
	  b parent class_ref 146949 // C_Interface
      end

      classrelation 170373 // <unidirectional association>
	relation 160389 --->
	  stereotype "calls"
	  a role_name "" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 170373 // <unidirectional association>
	  b parent class_ref 146821 // ServiceImpl
      end
    end

    class 147205 "InstanceHandle"
      visibility package 
      nformals 2
      formal name "C_Interface" type "class" explicit_default_value ""
        explicit_extends ""
      formal name "Facade" 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 170629 // <dependency>
	relation 160645 -_->
	  stereotype "opens"
	  a package
	    cpp default "#include in source"
	    classrelation_ref 170629 // <dependency>
	  b parent class_ref 147077 // C_Instance
      end

      classrelation 170757 // <dependency>
	relation 160773 -_->
	  stereotype "creates"
	  a package
	    cpp default "#include in source"
	    classrelation_ref 170757 // <dependency>
	  b parent class_ref 146693 // Proxy
      end
    end
  end

  classview 129285 "StreamType"
    //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 132485 "Stream Type Framework"
      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 144773 "StreamType"
      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 158469 // <unidirectional association>
	relation 154373 --->
	  a role_name "" protected
	    cpp default "    ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
"
	    classrelation_ref 158469 // <unidirectional association>
	  b parent class_ref 145285 // MediaKind
      end

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

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

    class 144901 "Prototype"
      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 145029 "ImplFacade"
      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 145157 "StreamTypeID"
      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 158341 // <dependency>
	relation 154245 -_->
	  a default
	    cpp default "#include in header"
	    classrelation_ref 158341 // <dependency>
	  b parent class_ref 144773 // StreamType
      end
    end

    class 145285 "MediaKind"
      visibility package stereotype "enum"
      cpp_decl "${comment}enum ${name}
  {
${items}
  };
"
      java_decl "${comment}${@}${visibility}${final}${abstract}enum ${name}${implements} {
${items};
${members}}
"
      php_decl ""
      python_2_2 python_decl ""
      idl_decl "${comment}enum ${name} {
${items}};
"
      explicit_switch_type ""
      
    end
  end

  package_ref 131077 // ConfigQuery

  classview 128773 "error"
    //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 130181 "Hierarchy"
      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
      comment "Lumiera Exception hierarchy"
      size A4
    end

    class 135557 "Error"
      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 139781 // <generalisation>
	relation 137989 ---|>
	  a public
	    cpp default "${type}"
	    classrelation_ref 139781 // <generalisation>
	  b parent class_ref 136325 // std::exception
      end

      operation 131845 "what"
	const cpp_virtual public explicit_return_type "const char*"
	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

      operation 131973 "rootCause"
	public explicit_return_type "std::exception"
	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 "If this exception was caused by a chain of further exceptions,
return the first one registered in this throw sequence.
This works only, if every exceptions thrown as a consequence
of another exception is propperly constructed by passing
the original exception to the constructor"
      end

      attribute 130309 "cause"
	private type class_ref 136325 // std::exception
	stereotype "auto_ptr"
	cpp_decl "    ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
"
	java_decl ""
	php_decl ""
	python_decl ""
	idl_decl ""
	comment "a copy of the first exception encountered in this exception chain"
      end
    end

    class 135685 "Logic"
      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 139397 // <generalisation>
	relation 137605 ---|>
	  a public
	    cpp default "${type}"
	    classrelation_ref 139397 // <generalisation>
	  b parent class_ref 135557 // Error
      end
    end

    class 135813 "Config"
      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 139269 // <generalisation>
	relation 137477 ---|>
	  a public
	    cpp default "${type}"
	    classrelation_ref 139269 // <generalisation>
	  b parent class_ref 135557 // Error
      end
    end

    class 135941 "State"
      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 139141 // <generalisation>
	relation 137349 ---|>
	  a public
	    cpp default "${type}"
	    classrelation_ref 139141 // <generalisation>
	  b parent class_ref 135557 // Error
      end
    end

    class 136069 "Invalid"
      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 139525 // <generalisation>
	relation 137733 ---|>
	  a public
	    cpp default "${type}"
	    classrelation_ref 139525 // <generalisation>
	  b parent class_ref 135557 // Error
      end
    end

    class 136197 "External"
      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 139653 // <generalisation>
	relation 137861 ---|>
	  a public
	    cpp default "${type}"
	    classrelation_ref 139653 // <generalisation>
	  b parent class_ref 135557 // Error
      end
    end

    class 136325 "std::exception"
      visibility public stereotype "auxiliary"
      cpp_external cpp_decl "${comment}${template}class ${name}${inherit}
  {
${members}  };
${inlines}
"
      java_decl ""
      php_decl ""
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      operation 131717 "what"
	const cpp_virtual public explicit_return_type "const char*"
	nparams 0
	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};"
	
	
	
	
	comment "the base class of all exceptions thrown by the standard library"
      end
    end
  end

  classview 128645 "Service Components"
    //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
    class 140293 "Applicable"
      abstract visibility package 
      nformals 1
      formal name "TAR" 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 ""
      
      operation 134405 "treat"
	abstract cpp_virtual public explicit_return_type ""
	nparams 1
	  param inout name "visitable" explicit_type "TAR"
	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${t0}& ${p0}${)}${const}${volatile} ${throw}${abstract};"
	
	
	
	
      end
    end

    class 140037 "Tool"
      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 ""
      
      operation 134533 "~Tool"
	cpp_virtual public explicit_return_type ""
	nparams 0
	cpp_decl "    ${comment}${inline}${virtual}${name} ${(}${)}${volatile} ${throw} { };"
	
	
	
	
      end
    end

    class 140165 "Visitable"
      abstract 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 ""
      
      operation 134661 "~Visitable"
	cpp_virtual protected explicit_return_type ""
	nparams 0
	cpp_decl "    ${comment}${inline}${virtual}${name} ${(}${)}${volatile} ${throw}{};"
	
	
	
	
      end

      operation 134789 "apply"
	abstract cpp_virtual public explicit_return_type "void"
	nparams 1
	  param inout name "providedTool" type class_ref 140037 // Tool
	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${t0}& ${p0}${)}${const}${volatile} ${throw}${abstract};"
	
	
	
	
      end

      operation 134917 "dispatchOp"
	class_operation public explicit_return_type "void"
	nparams 2
	  param inout name "target" explicit_type "TAR"
	  param inout name "t" type class_ref 140037 // Tool
	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${t0}& ${p0}, ${t1}& ${p1}${)}${const}${volatile} ${throw}${abstract};"
	
	
	
	
      end
    end

    class 134917 "Time"
      visibility public 
      cpp_decl "${comment}${template}class ${name}${inherit}
  {
${members}  };
${inlines}
"
      java_decl ""
      php_decl ""
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      comment "denotes a temporal position (time point), based on timeline start.

investigate posix.4 realtime timers, wrap these here"
    end

    class 135301 "Factory"
      visibility public 
      nformals 1
      formal name "T" 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 ""
      
      comment "a template for generating functor-like Factory objects, used to encapsulate object creation and providing access via smart-pointers only."
    end

    class 135429 "Appconfig"
      visibility public stereotype "singleton"
      cpp_decl "${comment}${template}class ${name}${inherit}
  {
${members}  };
${inlines}
"
      java_decl ""
      php_decl ""
      python_2_2 python_decl ""
      idl_decl ""
      explicit_switch_type ""
      
      comment "Singleton to hold inevitable global flags and constants and for performing erarly (static) global initialization tasks."
      attribute 130181 "theApp_"
	class_attribute private type class_ref 135429 // Appconfig
	init_value "=0"
	cpp_decl "    ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
"
	java_decl ""
	php_decl ""
	python_decl ""
	idl_decl ""
	comment "holds the single instance and triggers initialization"
      end

      operation 131333 "Appconfig"
	private explicit_return_type ""
	nparams 0
	cpp_decl "    ${comment}${inline}${name} ${(}${)}${volatile} ${throw};"
	cpp_def "${comment}${inline}
${class}::${name} ${(}${)}${volatile} ${throw} 
{
  ${body}
}

"
	
	
	
	
	comment "perform initialization on first access. 
A call is placed in static initialization code
included in lumiera.h; thus it will happen
ubiquitous very early."
      end

      operation 131461 "instance"
	class_operation private explicit_return_type "Appconfig*"
	nparams 0
	cpp_decl "    ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};"
	
	
	
	
      end

      operation 131589 "get"
	class_operation public explicit_return_type "string"
	nparams 1
	  param inout name "key" explicit_type "string"
	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 "access the configuation value for a given key.
@return empty string for unknown keys, else the corresponding configuration value"
      end
    end
  end

  classview 128138 "Posix Threads Abstraction"
    //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
    comment "C++ wrapers for pthreads"
    class 128138 "Thread"
      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 "We can basically reuse the Thread class design from Cinelerra2, Thread becomes a baseclass for all Threads "
    end

    class 128266 "Condition"
      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 "I provided a reworked Condition class in my Cinelerra2 repository"
      class 128522 "Lock"
	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

    class 128394 "Mutex"
      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 "I provided a reworked Mutex class in my Cinelerra2 repository"
      class 128650 "Lock"
	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
  end

  classview 128266 "SmartPointers"
    //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
    class 128906 "SmartPointer"
      abstract visibility package stereotype "auxiliary"
      cpp_external cpp_decl "${comment}${template}class ${name}${inherit} {
${members}};
${inlines}
"
      java_decl "${comment}${@}${visibility}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
      php_decl ""
      python_2_2 python_decl ""
      idl_decl "${comment}${abstract}${custom}valuetype ${name}${inherit} {
${members}};
"
      explicit_switch_type ""
      
    end
  end
end
