<?xml version="1.0" encoding="utf-8"?>
<!--Detailed report on module Input-->
<CCCC_Project>
<module_summary>
<lines_of_code value="403" level="0" />
<lines_of_code_per_member_function value="******" level="0" />
<McCabes_cyclomatic_complexity value="95" level="0" />
<McCabes_cyclomatic_complexity_per_member_function value="******" level="2" />
<lines_of_code value="184" level="0" />
<lines_of_code_per_member_function value="********" level="2" />
<lines_of_code_per_line_of_comment value="2.190" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="0.516" level="0" />
<weighted_methods_per_class_unity value="27" 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="14" level="0" />
<IF4 value="169" level="1" />
<IF4_per_member_function value="********" level="2" />
<IF4_visible value="169" 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="43" />
<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/input/Input.h" line="82" />
<lines_of_code value="40" level="1" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="85" level="0" />
<lines_of_code_per_line_of_comment value="0.471" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
</module_detail>
<procedural_detail>
<member_function>
<name>BINDCOMMAND(...)</name>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.cpp" line="39" />
</extent>
<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" />
</member_function>
<member_function>
<name>Input()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="43" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="124" />
</extent>
<lines_of_code value="28" level="0" />
<McCabes_cyclomatic_complexity value="0" level="0" />
<lines_of_comment value="1" level="0" />
<lines_of_code_per_line_of_comment value="28.000" level="1" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="------" level="0" />
</member_function>
<member_function>
<name>UNBINDCOMMAND(...)</name>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.cpp" line="40" />
</extent>
<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" />
</member_function>
<member_function>
<name>addAdapter(IInputAdapter *)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="481" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="229" />
</extent>
<lines_of_code value="5" 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>deregisterCommandMapper(InputCommandMapper *)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="173" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="283" />
</extent>
<lines_of_code value="5" 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>getInputMode()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="462" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="215" />
</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>getMovementModeEnabled()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="149" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="255" />
</extent>
<lines_of_code value="5" 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>initialize(int,int)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="83" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="133" />
</extent>
<lines_of_code value="13" level="0" />
<McCabes_cyclomatic_complexity value="1" level="0" />
<lines_of_comment value="6" 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>isApplicationVisible()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="179" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="141" />
</extent>
<lines_of_code value="5" 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>isKeyDown(const SDLKey &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="408" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="194" />
</extent>
<lines_of_code value="5" level="0" />
<McCabes_cyclomatic_complexity value="1" 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>keyChanged(const SDL_KeyboardEvent &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="387" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="298" />
</extent>
<lines_of_code value="17" level="0" />
<McCabes_cyclomatic_complexity value="6" level="0" />
<lines_of_comment value="2" level="0" />
<lines_of_code_per_line_of_comment value="------" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="3.000" level="0" />
</member_function>
<member_function>
<name>keyPressed(const SDL_KeyboardEvent &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="413" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="300" />
</extent>
<lines_of_code value="19" level="0" />
<McCabes_cyclomatic_complexity value="11" level="1" />
<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="3.667" level="0" />
</member_function>
<member_function>
<name>keyReleased(const SDL_KeyboardEvent &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="441" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="301" />
</extent>
<lines_of_code value="14" level="0" />
<McCabes_cyclomatic_complexity value="6" 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="2" />
</member_function>
<member_function>
<name>pasteFromClipboard()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="374" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="336" />
</extent>
<lines_of_code value="12" level="0" />
<McCabes_cyclomatic_complexity value="4" 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>pollEvents(float)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="330" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="296" />
</extent>
<lines_of_code value="40" level="1" />
<McCabes_cyclomatic_complexity value="17" level="1" />
<lines_of_comment value="2" level="0" />
<lines_of_code_per_line_of_comment value="20.000" level="1" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="8.500" level="1" />
</member_function>
<member_function>
<name>pollMouse(float)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="196" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="295" />
</extent>
<lines_of_code value="80" level="1" />
<McCabes_cyclomatic_complexity value="31" level="2" />
<lines_of_comment value="22" level="0" />
<lines_of_code_per_line_of_comment value="3.636" level="0" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="1.409" level="0" />
</member_function>
<member_function>
<name>processInput()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="184" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="139" />
</extent>
<lines_of_code value="10" 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>registerCommandMapper(InputCommandMapper *)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="168" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="277" />
</extent>
<lines_of_code value="5" 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>removeAdapter(IInputAdapter *)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="487" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="236" />
</extent>
<lines_of_code value="10" level="0" />
<McCabes_cyclomatic_complexity value="3" 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>runCommand(const string &amp;,const string &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="107" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="245" />
</extent>
<lines_of_code value="37" level="1" />
<McCabes_cyclomatic_complexity value="9" level="0" />
<lines_of_comment value="5" level="0" />
<lines_of_code_per_line_of_comment value="7.400" level="1" />
<McCabes_cyclomatic_complexity_per_line_of_comment value="1.800" level="0" />
</member_function>
<member_function>
<name>setGeometry(int,int)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="101" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="203" />
</extent>
<lines_of_code value="6" 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>setInputMode(InputMode)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="456" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="209" />
</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>setMovementModeEnabled(bool)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="154" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="260" />
</extent>
<lines_of_code value="5" level="0" />
<McCabes_cyclomatic_complexity value="0" 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>suppressFurtherHandlingOfCurrentEvent()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="144" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="250" />
</extent>
<lines_of_code value="5" level="0" />
<McCabes_cyclomatic_complexity value="0" 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>toggleInputMode()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="468" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="222" />
</extent>
<lines_of_code value="12" level="0" />
<McCabes_cyclomatic_complexity value="3" 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>writeToClipboard(const string &amp;)</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="159" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="266" />
</extent>
<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" />
</member_function>
<member_function>
<name>~Input()</name>
<extent>
<description>definition</description>
<source_reference file="./components/ogre/input/Input.cpp" line="78" />
</extent>
<extent>
<description>declaration</description>
<source_reference file="./components/ogre/input/Input.h" line="126" />
</extent>
<lines_of_code value="4" 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>Input</name>
<client_module>
<name>InputCommandMapper</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/InputCommandMapper.cpp" line="92" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/InputCommandMapper.h" line="111" />
</extent>
<extent>
<description>has by reference</description>
<source_reference file="./components/ogre/input/InputCommandMapper.h" line="187" />
</extent>
</client_module>
<supplier_module>
<name>ConsoleObject</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>inheritance</description>
<source_reference file="./components/ogre/input/Input.h" line="82" />
</extent>
<name>IInputAdapter</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="481" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="487" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="229" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="236" />
</extent>
<name>IInputAdapterStore</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="341" />
</extent>
<name>InputCommandMapper</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="168" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="173" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="277" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="283" />
</extent>
<name>InputCommandMapperStore</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="352" />
</extent>
<name>KeysSet</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="307" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="313" />
</extent>
<name>SDLKey</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="408" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="194" />
</extent>
<name>SDL_KeyboardEvent</name>
<visible>true</visible>
<concrete>false</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="387" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="413" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="441" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="298" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="300" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="301" />
</extent>
<name>Singleton</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>inheritance</description>
<source_reference file="./components/ogre/input/Input.h" line="82" />
</extent>
<name>bool</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>pass by value</description>
<source_reference file="./components/ogre/input/Input.cpp" line="154" />
</extent>
<extent>
<description>pass by value</description>
<source_reference file="./components/ogre/input/Input.h" line="260" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="354" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="356" />
</extent>
<name>signal</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="147" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="153" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="161" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="169" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="176" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="182" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="187" />
</extent>
<name>string</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="107" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="107" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.cpp" line="159" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="91" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="96" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="245" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="245" />
</extent>
<extent>
<description>pass by reference</description>
<source_reference file="./components/ogre/input/Input.h" line="266" />
</extent>
<name>uint32_t</name>
<visible>true</visible>
<concrete>true</concrete>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="329" />
</extent>
<extent>
<description>has by value</description>
<source_reference file="./components/ogre/input/Input.h" line="331" />
</extent>
</supplier_module>
</module>
</structural_detail>
</CCCC_Project>

