X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Fdali-toolkit-test-utils%2Ftest-application.cpp;h=c953f50d0c6bfaf7a705ac0c91ecef052db2cda6;hp=66366765eae5bf8502888b596ebfb3a4c7970179;hb=f83a0006c5daa319fafcf8d58ca76e62e79e9285;hpb=8e7cfd0c114bf778287cc6e67d0f42f3c866e205 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 6636676..c953f50 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 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,55 +20,38 @@ namespace Dali { +bool TestApplication::mLoggingEnabled = true; -TestApplication::TestApplication( size_t surfaceWidth, - size_t surfaceHeight, - float horizontalDpi, - float verticalDpi, +TestApplication::TestApplication( uint32_t surfaceWidth, + uint32_t surfaceHeight, + uint32_t horizontalDpi, + uint32_t verticalDpi, ResourcePolicy::DataRetention policy) : mCore( NULL ), mSurfaceWidth( surfaceWidth ), mSurfaceHeight( surfaceHeight ), mFrame( 0u ), - mDpi( horizontalDpi, verticalDpi ), + mDpi{ horizontalDpi, verticalDpi }, mLastVSyncTime(0u), mDataRetentionPolicy( policy ) { Initialize(); } -TestApplication::TestApplication( bool initialize, - size_t surfaceWidth, - size_t surfaceHeight, - float horizontalDpi, - float verticalDpi, - ResourcePolicy::DataRetention policy) -: mCore( NULL ), - mSurfaceWidth( surfaceWidth ), - mSurfaceHeight( surfaceHeight ), - mFrame( 0u ), - mDpi( horizontalDpi, verticalDpi ), - mLastVSyncTime(0u), - mDataRetentionPolicy( policy ) -{ - if ( initialize ) - { - Initialize(); - } -} - void TestApplication::Initialize() { // We always need the first update! mStatus.keepUpdating = Integration::KeepUpdating::STAGE_KEEP_RENDERING; - mCore = Dali::Integration::Core::New( - mRenderController, - mPlatformAbstraction, - mGlAbstraction, - mGlSyncAbstraction, - mGestureManager, - mDataRetentionPolicy); + mCore = Dali::Integration::Core::New( mRenderController, + mPlatformAbstraction, + mGlAbstraction, + mGlSyncAbstraction, + mGestureManager, + mDataRetentionPolicy, + Integration::RenderToFrameBuffer::FALSE, + Integration::DepthBufferAvailable::TRUE, + Integration::StencilBufferAvailable::TRUE ); mCore->ContextCreated(); mCore->SurfaceResized( mSurfaceWidth, mSurfaceHeight ); @@ -77,6 +60,11 @@ void TestApplication::Initialize() Dali::Integration::Log::LogFunction logFunction(&TestApplication::LogMessage); Dali::Integration::Log::InstallLogFunction(logFunction); + Dali::Integration::Trace::LogContextFunction logContextFunction(&TestApplication::LogContext); + Dali::Integration::Trace::InstallLogContextFunction( logContextFunction ); + + Dali::Integration::Trace::LogContext( true, "Test" ); + mCore->SceneCreated(); } @@ -86,22 +74,37 @@ TestApplication::~TestApplication() delete mCore; } +void TestApplication::LogContext( bool start, const char* tag ) +{ + if( start ) + { + fprintf(stderr, "INFO: Trace Start: %s\n", tag); + } + else + { + fprintf(stderr, "INFO: Trace End: %s\n", tag); + } +} + void TestApplication::LogMessage(Dali::Integration::Log::DebugPriority level, std::string& message) { - switch(level) + if( mLoggingEnabled ) { - case Dali::Integration::Log::DebugInfo: - fprintf(stderr, "INFO: %s", message.c_str()); - break; - case Dali::Integration::Log::DebugWarning: - fprintf(stderr, "WARN: %s", message.c_str()); - break; - case Dali::Integration::Log::DebugError: - fprintf(stderr, "ERROR: %s", message.c_str()); - break; - default: - fprintf(stderr, "DEFAULT: %s", message.c_str()); - break; + switch(level) + { + case Dali::Integration::Log::DebugInfo: + fprintf(stderr, "INFO: %s", message.c_str()); + break; + case Dali::Integration::Log::DebugWarning: + fprintf(stderr, "WARN: %s", message.c_str()); + break; + case Dali::Integration::Log::DebugError: + fprintf(stderr, "ERROR: %s", message.c_str()); + break; + default: + fprintf(stderr, "DEFAULT: %s", message.c_str()); + break; + } } } @@ -146,7 +149,7 @@ void TestApplication::SendNotification() mCore->ProcessEvents(); } -void TestApplication::SetSurfaceWidth( unsigned int width, unsigned height ) +void TestApplication::SetSurfaceWidth( uint32_t width, uint32_t height ) { mSurfaceWidth = width; mSurfaceHeight = height; @@ -154,12 +157,12 @@ void TestApplication::SetSurfaceWidth( unsigned int width, unsigned height ) mCore->SurfaceResized( mSurfaceWidth, mSurfaceHeight ); } -void TestApplication::SetTopMargin( unsigned int margin ) +void TestApplication::SetTopMargin( uint32_t margin ) { mCore->SetTopMargin( margin ); } -void TestApplication::DoUpdate( unsigned int intervalMilliseconds, const char* location ) +void TestApplication::DoUpdate( uint32_t intervalMilliseconds, const char* location ) { if( GetUpdateStatus() == 0 && mRenderStatus.NeedsUpdate() == false && @@ -168,32 +171,32 @@ void TestApplication::DoUpdate( unsigned int intervalMilliseconds, const char* l fprintf(stderr, "WARNING - Update not required :%s\n", location==NULL?"NULL":location); } - unsigned int nextVSyncTime = mLastVSyncTime + intervalMilliseconds; - float elapsedSeconds = intervalMilliseconds / 1e3f; + uint32_t nextVSyncTime = mLastVSyncTime + intervalMilliseconds; + float elapsedSeconds = static_cast( intervalMilliseconds ) * 0.001f; - mCore->Update( elapsedSeconds, mLastVSyncTime, nextVSyncTime, mStatus ); + mCore->Update( elapsedSeconds, mLastVSyncTime, nextVSyncTime, mStatus, false, false ); GetRenderController().Initialize(); mLastVSyncTime = nextVSyncTime; } -bool TestApplication::Render( unsigned int intervalMilliseconds, const char* location ) +bool TestApplication::Render( uint32_t intervalMilliseconds, const char* location ) { DoUpdate( intervalMilliseconds, location ); - mCore->Render( mRenderStatus ); + mCore->Render( mRenderStatus, false ); mFrame++; return mStatus.KeepUpdating() || mRenderStatus.NeedsUpdate(); } -unsigned int TestApplication::GetUpdateStatus() +uint32_t TestApplication::GetUpdateStatus() { return mStatus.KeepUpdating(); } -bool TestApplication::UpdateOnly( unsigned int intervalMilliseconds ) +bool TestApplication::UpdateOnly( uint32_t intervalMilliseconds ) { DoUpdate( intervalMilliseconds ); return mStatus.KeepUpdating(); @@ -207,7 +210,7 @@ bool TestApplication::GetRenderNeedsUpdate() bool TestApplication::RenderOnly( ) { // Update Time values - mCore->Render( mRenderStatus ); + mCore->Render( mRenderStatus, false ); mFrame++; @@ -221,11 +224,11 @@ void TestApplication::ResetContext() mCore->ContextCreated(); } -unsigned int TestApplication::Wait( unsigned int durationToWait ) +uint32_t TestApplication::Wait( uint32_t durationToWait ) { int time = 0; - for(unsigned int i = 0; i <= ( durationToWait / RENDER_FRAME_INTERVAL); i++) + for(uint32_t i = 0; i <= ( durationToWait / RENDER_FRAME_INTERVAL); i++) { SendNotification(); Render(RENDER_FRAME_INTERVAL);