<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<!--
// // See license.txt for license information. // // tool_test.xml // // 29-Aug-2005 phamilton Created //
-->

<object xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="urn:xmlliterate.schema" name="tool_test">
    <description>Class used to test a tool.</description>
    <classname>tool_test</classname>
    <namespace>$(namespace)</namespace>
    <members>
        <stringtype name="toolfile">
            <description>The filename for the XML tool.</description>
        </stringtype>
        <stringtype name="matchfile">
            <description>The filename to match against.</description>
        </stringtype>
        <booltype name="match">
            <description>If true, then the file is matched, otherwise it is generated (like for the first time).</description>
        </booltype>
    </members>
    <constructors>
        <constructor>
            <arguments>
                <stringtype name="toolfile"/>
                <stringtype name="matchfile"/>
                <booltype name="match"/>
            </arguments>
            <implementations>
                <emptyconsinitimpl>
                    <initialise>
                        <constrcopymembers>
                            <members>[toolfile,matchfile,match]</members>
                        </constrcopymembers>
                    </initialise>
                </emptyconsinitimpl>
            </implementations>
        </constructor>
    </constructors>
    <destruct>
        <destructor>
            <virtual/>
            <implementations>
                <emptyimplementation/>
            </implementations>
        </destructor>
    </destruct>
    <methods>
        <method name="create_context">
            <inheritance>virtual</inheritance>
            <description>Create a context that will be used to register all of the appropriate objects.</description>
            <access>public</access>
            <returns>
                <xmlobj_contextptrtype>
                    <description>Not sure.</description>
                </xmlobj_contextptrtype>
            </returns>
            <arguments>
                <object_navigator_factoryptrtype name="navfactory">
                    <description>Not sure.</description>
                </object_navigator_factoryptrtype>
            </arguments>
            <implementations>
                <xi:include href="cpp/tool_test_create_context.xml">
                    <param name="namespace_tools_cpp" value="$(namespace_tools_cpp)"/>
                </xi:include>
            </implementations>
        </method>
        <method name="test">
            <inheritance>concrete</inheritance>
            <access>public</access>
            <description>the actual test.</description>
            <returns>
                <voidtype/>
            </returns>
            <implementations>
                <xi:include href="cpp/tool_test_test_boost_0103301.xml">
                    <param name="namespace_tools_cpp" value="$(namespace_tools_cpp)"/>
                </xi:include>
                <xi:include href="cpp/tool_test_test_boost_0103100.xml">
                    <param name="namespace_tools_cpp" value="$(namespace_tools_cpp)"/>
                </xi:include>
            </implementations>
        </method>
    </methods>
</object>