From d4da08c0503a1e8fa255fd6e0ee00598d052aa10 Mon Sep 17 00:00:00 2001 From: David Steele Date: Thu, 28 Aug 2014 11:50:36 +0100 Subject: [PATCH 1/1] Updated test suite following platform abstraction change [Problem] Core::Update() api has changed [Solution] Update test harness to match. Change-Id: I2ce3c9ec4377ba60a485e8282199967d1f04374b Signed-off-by: David Steele --- .../dali-toolkit-test-utils/test-application.cpp | 30 ++++++++++++---------- .../dali-toolkit-test-utils/test-application.h | 4 +++ 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.cpp b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.cpp index ea7e48e..c2680b2 100644 --- a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.cpp +++ b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.cpp @@ -29,7 +29,8 @@ TestApplication::TestApplication( size_t surfaceWidth, mSurfaceWidth( surfaceWidth ), mSurfaceHeight( surfaceHeight ), mFrame( 0u ), - mDpi( horizontalDpi, verticalDpi ) + mDpi( horizontalDpi, verticalDpi ), + mLastVSyncTime(0u) { Initialize(); } @@ -142,15 +143,23 @@ void TestApplication::SetSurfaceWidth( unsigned int width, unsigned height ) mCore->SurfaceResized( mSurfaceWidth, mSurfaceHeight ); } -bool TestApplication::Render( unsigned int intervalMilliseconds ) +void TestApplication::DoUpdate( unsigned int intervalMilliseconds ) { - // Update Time values - mPlatformAbstraction.IncrementGetTimeResult( intervalMilliseconds ); unsigned int seconds(0u), microseconds(0u); mPlatformAbstraction.GetTimeMicroseconds( seconds, microseconds ); + mLastVSyncTime = ( seconds * 1e3 ) + ( microseconds / 1e3 ); + unsigned int nextVSyncTime = mLastVSyncTime + 16; + + // Update Time values + mPlatformAbstraction.IncrementGetTimeResult( intervalMilliseconds ); + + float elapsedSeconds = intervalMilliseconds / 1e3f; + mCore->Update( elapsedSeconds, mLastVSyncTime, nextVSyncTime, mStatus ); +} - mCore->VSync( mFrame, seconds, microseconds ); - mCore->Update( mStatus ); +bool TestApplication::Render( unsigned int intervalMilliseconds ) +{ + DoUpdate( intervalMilliseconds ); mCore->Render( mRenderStatus ); mFrame++; @@ -165,14 +174,7 @@ unsigned int TestApplication::GetUpdateStatus() bool TestApplication::UpdateOnly( unsigned int intervalMilliseconds ) { - // Update Time values - mPlatformAbstraction.IncrementGetTimeResult( intervalMilliseconds ); - unsigned int seconds(0u), microseconds(0u); - mPlatformAbstraction.GetTimeMicroseconds( seconds, microseconds ); - - mCore->VSync( mFrame, seconds, microseconds ); - mCore->Update( mStatus ); - + DoUpdate( intervalMilliseconds ); return mStatus.KeepUpdating(); } diff --git a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.h b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.h index 4084f2d..bcc2dd8 100644 --- a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.h +++ b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.h @@ -76,6 +76,9 @@ public: bool RenderOnly( ); void ResetContext(); +private: + void DoUpdate( unsigned int intervalMilliseconds ); + protected: TestPlatformAbstraction mPlatformAbstraction; TestRenderController mRenderController; @@ -93,6 +96,7 @@ protected: unsigned int mFrame; Vector2 mDpi; + unsigned int mLastVSyncTime; }; } // Dali -- 2.7.4