Esempio n. 1
0
QString QmitkStoreSCPLauncher::ArgumentListToQString()
{
    QString argumentString;
    QStringListIterator argumentIterator(m_ArgumentList);
    while(argumentIterator.hasNext())
    {
        argumentString.append(" ");
        argumentString.append(argumentIterator.next());
    }
    return argumentString;
}
QString Function::toPDDL() const
{
    bool printItemsInNewLines = false;
    QString pddlName = name;
    if (pddlName == "equals")
    {
        pddlName = "=";
    }
    else if (pddlName == "atStart")
    {
        pddlName = "at start";
    }
    else if (pddlName == "atEnd")
    {
        pddlName = "at end";
    }
    else if (pddlName == "overall")
    {
        pddlName = "over all";
    }
    else if (pddlName == "greaterEqual")
    {
        pddlName = ">=";
    }
    else if (pddlName == "and")
    {
        printItemsInNewLines = true;
    }

    QString function("(");
    function.append(pddlName);
    QListIterator<Element*> argumentIterator(arguments);
    while (argumentIterator.hasNext())
    {
        if (printItemsInNewLines)
        {
            function.append("\n      ");
        }
        else
        {
            function.append(" ");
        }
        function.append(argumentIterator.next()->toPDDL());
    }
    function.append(")");
    return function;
}