예제 #1
0
void TestSuite::ThreadProc(void* inParam)
{
    LOG("Entering TestSuite::ThreadProc");
    TestSuite* instance = reinterpret_cast<TestSuite*>(inParam);
    if (instance)
    {
        string filename;
        float counter = 1.0f;
        while(instance->mProcessing && (filename = instance->getNextFile()) != "")
        {
            TestSuiteGame theGame(instance, filename);
            if(theGame.isOK)
            {
                theGame.observer->loadTestSuitePlayer(0, &theGame);
                theGame.observer->loadTestSuitePlayer(1, &theGame);

                theGame.observer->startGame(theGame.gameType, /*instance->mRules*/Rules::getRulesByFilename("testsuite.txt"));
                theGame.initGame();

                while(!theGame.observer->didWin())
                    theGame.observer->Update(counter++);
            }
        }
    }
    LOG("Leaving TestSuite::ThreadProc");
}