<?xml version="1.0" encoding="utf-8"?>
<!--Detailed report on module AttributeObserver-->
<CCCC_Project>
<module_summary>
<lines_of_code value="60" level="0" />
<lines_of_code_per_member_function value="******" level="0" />
<McCabes_cyclomatic_complexity value="2" level="0" />
<McCabes_cyclomatic_complexity_per_member_function value="******" level="2" />
<lines_of_code value="11" level="0" />
<lines_of_code_per_member_function value="********" level="2" />
<lines_of_code_per_line_of_comment value="5.455" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
<weighted_methods_per_class_unity value="6" level="0" />
<weighted_methods_per_class_visibility value="1" level="0" />
<depth_of_inheritance_tree value="1" level="0" />
<number_of_children value="0" level="0" />
<coupling_between_objects value="9" level="0" />
<IF4 value="64" level="0" />
<IF4_per_member_function value="********" level="2" />
<IF4_visible value="64" level="1" />
<IF4_visible_per_member_function value="********" level="2" />
<IF4_concrete value="0" level="0" />
<IF4_concrete_per_member_function value="********" level="0" />
</module_summary>
<module_detail>
<description>definition</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="49" />
<lines_of_code value="8" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="4" level="0" />
<lines_of_code_per_line_of_comment value="------" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
<description>declaration</description>
<source_reference file="./components/ogre/model/mapping/ModelMapping.h" line="73" />
<lines_of_code value="1" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="0" level="0" />
<lines_of_code_per_line_of_comment value="------" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
<description>definition</description>
<source_reference file="./components/ogre/AttributeObserver.h" line="40" />
<lines_of_code value="7" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="4" level="0" />
<lines_of_code_per_line_of_comment value="------" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
</module_detail>
<procedural_detail>
<member_function>
<name>AttributeObserver(AttributeDependentMatch *,const string &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.cpp" line="41" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="54" />
</extent>
<lines_of_code value="5" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="0" level="0" />
<lines_of_code_per_line_of_comment value="------" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
</member_function>
<member_function>
<name>AttributeObserver(AttributeMatch *)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.cpp" line="46" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="53" />
</extent>
<lines_of_code value="5" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="0" level="0" />
<lines_of_code_per_line_of_comment value="------" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
</member_function>
<member_function>
<name>AttributeObserver(Entity *,const string &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AttributeObserver.cpp" line="33" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AttributeObserver.h" line="44" />
</extent>
<lines_of_code value="10" level="0" />
<McCabes_cyclomatic_complexity value="1" level="0" />
<lines_of_comment value="0" level="0" />
<lines_of_code_per_line_of_comment value="------" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
</member_function>
<member_function>
<name>attributeChanged(const Element &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.cpp" line="51" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="64" />
</extent>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AttributeObserver.cpp" line="48" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AttributeObserver.h" line="52" />
</extent>
<lines_of_code value="10" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="0" level="0" />
<lines_of_code_per_line_of_comment value="------" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
</member_function>
<member_function>
<name>observeEntity(Entity *)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.cpp" line="56" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="59" />
</extent>
<lines_of_code value="9" level="0" />
<McCabes_cyclomatic_complexity value="1" level="0" />
<lines_of_comment value="3" level="0" />
<lines_of_code_per_line_of_comment value="------" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
</member_function>
<member_function>
<name>~AttributeObserver()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AttributeObserver.cpp" line="43" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AttributeObserver.h" line="45" />
</extent>
<lines_of_code value="5" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="0" level="0" />
<lines_of_code_per_line_of_comment value="------" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
</member_function>
</procedural_detail>
<structural_detail>
<module>
<name>AttributeObserver</name>
<client_module>
<name>AttributeDependentMatch</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/AttributeDependentMatch.cpp" line="45" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/AttributeDependentMatch.h" line="56" />
</extent>
</client_module>
<supplier_module>
<name>AttrChangedSlot</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="62" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AttributeObserver.h" line="50" />
</extent>
<name>AttributeDependentMatch</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.cpp" line="41" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="54" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="66" />
</extent>
<name>AttributeMatch</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.cpp" line="46" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="53" />
</extent>
<name>Element</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.cpp" line="51" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="64" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AttributeObserver.cpp" line="48" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AttributeObserver.h" line="52" />
</extent>
<name>Entity</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.cpp" line="56" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="59" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AttributeObserver.cpp" line="33" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AttributeObserver.h" line="44" />
</extent>
<name>signal</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AttributeObserver.h" line="47" />
</extent>
<name>string</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.cpp" line="41" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="54" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="68" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AttributeObserver.cpp" line="33" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AttributeObserver.h" line="44" />
</extent>
<name>trackable</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>inheritance</description>
<source_reference file="./components/ogre/model/mapping/Matches/Observers/AttributeObserver.h" line="49" />
</extent>
<extent>
<description>inheritance</description>
<source_reference file="./components/ogre/AttributeObserver.h" line="40" />
</extent>
</supplier_module>
</module>
</structural_detail>
</CCCC_Project>

