int callTestSuite(UNITTESTSUITE suite) { int rc = 1; UNITTEST* test = suite.tests; if (suite.setup) (suite.setup()); for (int i = 0; i < num_of_tests; ++i){ BROFILER_FRAME("Main"); test = suite.tests; while (test->test != 0) { //BROFILER_FRAME("Test"); if (callTest(test++)) { printf("."); } else { printf("#"); rc = 0; } } } if (suite.teardown) (suite.teardown()); return rc; }
//----------------------------------------------------------------------------- //! @brief TODO enter a description //! @remark //----------------------------------------------------------------------------- void Application::mainGameLoop() { MSG message; message.message = WM_NULL; PeekMessage(&message, 0, 0, 0, PM_NOREMOVE); while ( WM_QUIT != message.message ) { message.message = WM_NULL; bool gotMessage = ( PeekMessage(&message, 0, 0, 0, PM_NOREMOVE) != 0 ); if (gotMessage) { PeekMessage(&message, 0, 0, 0, PM_REMOVE ); TranslateMessage( &message ); DispatchMessage( &message ); } else { BROFILER_FRAME("NewSpaceSim Frame Marker"); m_performanceTimer.update(); m_elapsedTime = m_performanceTimer.getElapsedTime(); m_time = m_performanceTimer.getTime(); m_inputSystem.update(m_elapsedTime, m_time); Input input = m_inputSystem.getInput(); m_cameraSystem.update(m_elapsedTime, m_time, input); const Camera* cam = m_cameraSystem.getCamera("global"); m_view = cam->getCamera(); RenderInstanceTree renderList; //renderList.reserve(m_previousRenderInstanceListSize); //Upfront reserve as much space as the last frame used, it should at max from once or twice a frame this way, ignoring the first one m_gameObjectManager.update(renderList, m_elapsedTime, input); m_gameResource->getLaserManager().update(renderList, m_elapsedTime, m_renderSystem.getDeviceMananger()); //cache->ProvideRenderInstances(renderList); m_renderSystem.beginDraw(renderList, m_gameResource); m_renderSystem.update(m_gameResource, renderList, m_elapsedTime, m_time); m_renderSystem.endDraw(m_gameResource); m_previousRenderInstanceListSize = renderList.size(); //if (input.getInput(0)->getActionValue(InputActions::eAButton)) //{ // m_renderSystem.flipWireFrameMod(); //} //if (input.getInput(1)->getActionValue(m_inputSystem.getInputActionFromName("exit_game"))) //{ // PostQuitMessage(0); //} InputActions::ActionType inputAction; InputSystem::getInputActionFromName(exitGame, inputAction); if (input.getInput(0)->getActionValue(inputAction)) { PostQuitMessage(0); } } } }
bool Engine::Update() { BROFILER_FRAME("MainThread") UpdateInput(); UpdateMessages(); UpdateLogic(); UpdateScene(); UpdatePhysics(); Draw(); return true; }