<?xml version="1.0" encoding="utf-8"?>
<!--Detailed report on module AvatarController-->
<CCCC_Project>
<module_summary>
<lines_of_code value="218" level="0" />
<lines_of_code_per_member_function value="******" level="0" />
<McCabes_cyclomatic_complexity value="34" level="0" />
<McCabes_cyclomatic_complexity_per_member_function value="******" level="2" />
<lines_of_code value="116" level="0" />
<lines_of_code_per_member_function value="********" level="2" />
<lines_of_code_per_line_of_comment value="1.879" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="0.293" level="0" />
<weighted_methods_per_class_unity value="14" level="0" />
<weighted_methods_per_class_visibility value="0" level="0" />
<depth_of_inheritance_tree value="1" level="0" />
<number_of_children value="0" level="0" />
<coupling_between_objects value="23" level="0" />
<IF4 value="3600" level="2" />
<IF4_per_member_function value="********" level="2" />
<IF4_visible value="3249" level="2" />
<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>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="44" />
<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/AvatarController.h" line="93" />
<lines_of_code value="35" level="1" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="15" level="0" />
<lines_of_code_per_line_of_comment value="2.333" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
<description>declaration</description>
<source_reference file="./components/ogre/Avatar.h" line="44" />
<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>declaration</description>
<source_reference file="./components/ogre/Avatar.h" line="68" />
<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" />
</module_detail>
<procedural_detail>
<member_function>
<name>AvatarController(Avatar *,RenderWindow *,GUIManager *,Camera *)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="83" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="101" />
</extent>
<lines_of_code value="2" 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>attachCamera()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="222" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="134" />
</extent>
<lines_of_code value="6" 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" />
</member_function>
<member_function>
<name>createAvatarCameras(SceneNode *)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="136" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="118" />
</extent>
<lines_of_code value="9" 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>createDecal(Vector3)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="372" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="221" />
</extent>
<lines_of_code value="24" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="7" level="0" />
<lines_of_code_per_line_of_comment value="3.429" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
</member_function>
<member_function>
<name>detachCamera()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="214" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="129" />
</extent>
<lines_of_code value="6" 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" />
</member_function>
<member_function>
<name>entityPicker_PickedEntity(const EntityPickResult &amp;,const MousePickerArgs &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="325" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="216" />
</extent>
<lines_of_code value="4" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="7" 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>frameStarted(const FrameEvent &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="230" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="108" />
</extent>
<lines_of_code value="30" level="0" />
<McCabes_cyclomatic_complexity value="7" level="0" />
<lines_of_comment value="44" level="0" />
<lines_of_code_per_line_of_comment value="0.682" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="0.159" level="0" />
</member_function>
<member_function>
<name>getAvatarCamera()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="320" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="124" />
</extent>
<lines_of_code value="5" level="0" />
<McCabes_cyclomatic_complexity value="1" 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" />
</member_function>
<member_function>
<name>getCurrentMovement()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="314" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="140" />
</extent>
<lines_of_code value="5" level="0" />
<McCabes_cyclomatic_complexity value="1" 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" />
</member_function>
<member_function>
<name>moveToPoint(const Vector3 &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="333" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="168" />
</extent>
<lines_of_code value="15" level="0" />
<McCabes_cyclomatic_complexity value="2" level="0" />
<lines_of_comment value="13" 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>runCommand(const string &amp;,const string &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="154" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="162" />
</extent>
<lines_of_code value="54" level="1" />
<McCabes_cyclomatic_complexity value="22" level="1" />
<lines_of_comment value="9" level="0" />
<lines_of_code_per_line_of_comment value="6.000" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="2.444" level="0" />
</member_function>
<member_function>
<name>setAvatar(Avatar *)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="145" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="190" />
</extent>
<lines_of_code value="7" 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>teleportTo(const Vector3 &amp;,EmberEntity *)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="362" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="175" />
</extent>
<lines_of_code value="7" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="5" 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>~AvatarController()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="130" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/AvatarController.h" line="103" />
</extent>
<lines_of_code value="6" 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>AvatarController</name>
<client_module>
<name>Avatar</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/Avatar.cpp" line="318" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/Avatar.h" line="118" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/Avatar.h" line="281" />
</extent>
<name>AvatarControllerInputListener</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="61" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="81" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="87" />
</extent>
<name>GUIManager</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/GUIManager.cpp" line="593" />
</extent>
</client_module>
<supplier_module>
<name>Avatar</name>
<visible>false</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="83" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="145" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="101" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="190" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="197" />
</extent>
<name>AvatarCamera</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="189" />
</extent>
<name>AvatarControllerInputListener</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="227" />
</extent>
<name>Camera</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="83" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="101" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="191" />
</extent>
<name>ConsoleCommandWrapper</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="142" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="143" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="145" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="146" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="147" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="148" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="149" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="150" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="154" />
</extent>
<name>ConsoleObject</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>inheritance</description>
<source_reference file="./components/ogre/AvatarController.h" line="96" />
</extent>
<name>EmberEntity</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="362" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="175" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="199" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="200" />
</extent>
<name>FrameEvent</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="230" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="108" />
</extent>
<name>FrameListener</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>inheritance</description>
<source_reference file="./components/ogre/AvatarController.h" line="94" />
</extent>
<name>GUIManager</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="83" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="101" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="183" />
</extent>
<name>InputCommandMapper</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="179" />
</extent>
<name>MovableObject</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="223" />
</extent>
<name>RenderWindow</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="83" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="101" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="181" />
</extent>
<name>SceneNode</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="136" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="118" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="204" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="224" />
</extent>
<name>Vector3</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="333" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="362" />
</extent>
<extent>
<description>pass by value</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="372" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="168" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="175" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="211" />
</extent>
<extent>
<description>pass by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="221" />
</extent>
<name>WaveformControllerFunction</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="225" />
</extent>
<name>bool</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="205" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="209" />
</extent>
<name>signal</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/AvatarController.h" line="114" />
</extent>
<name>string</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="154" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.cpp" line="154" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="162" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/AvatarController.h" line="162" />
</extent>
<name>trackable</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>inheritance</description>
<source_reference file="./components/ogre/AvatarController.h" line="95" />
</extent>
</supplier_module>
</module>
</structural_detail>
</CCCC_Project>

