X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Fintegration-api%2Fcore.cpp;h=cf6c17ef35694c33c6c055b59ab40907458af858;hb=bb1a4d76f3f6ce912db8307b6183286f3ea826bb;hp=9c26043475e2ed25dd05b5f1375376b5a6095d39;hpb=7c6f8ed43521c52d6cc46a7e3e3e40069514f818;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/integration-api/core.cpp b/dali/integration-api/core.cpp index 9c26043..cf6c17e 100644 --- a/dali/integration-api/core.cpp +++ b/dali/integration-api/core.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 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. @@ -18,10 +18,6 @@ // CLASS HEADER #include -// EXTERNAL INCLUDES -#include -#include - // INTERNAL INCLUDES #include #include @@ -34,28 +30,26 @@ namespace Dali namespace Integration { -namespace KeepUpdating -{ - -const unsigned int NOT_REQUESTED = 0x00; ///< Zero means that no further updates are required - -// Bit-field values -const unsigned int STAGE_KEEP_RENDERING = 0x01; ///< Stage::KeepRendering() is being used -const unsigned int INCOMING_MESSAGES = 0x02; ///< Event-thread is sending messages to update-thread -const unsigned int ANIMATIONS_RUNNING = 0x04; ///< Animations are ongoing -const unsigned int DYNAMICS_CHANGED = 0x08; ///< A dynamics simulation is running -const unsigned int LOADING_RESOURCES = 0x10; ///< Resources are being loaded -const unsigned int NOTIFICATIONS_PENDING = 0x20; ///< Notifications are pending for the event-thread -const unsigned int MONITORING_PERFORMANCE = 0x40; ///< The --enable-performance-monitor option is being used -const unsigned int RENDER_TASK_SYNC = 0x80; ///< The refresh once render task is waiting for render sync - -} // namespace KeepUpdating - -Core* Core::New(RenderController& renderController, PlatformAbstraction& platformAbstraction, - GlAbstraction& glAbstraction, GlSyncAbstraction& glSyncAbstraction, GestureManager& gestureManager) +Core* Core::New( RenderController& renderController, + PlatformAbstraction& platformAbstraction, + GlAbstraction& glAbstraction, + GlSyncAbstraction& glSyncAbstraction, + GestureManager& gestureManager, + ResourcePolicy::DataRetention policy, + RenderToFrameBuffer renderToFboEnabled, + DepthBufferAvailable depthBufferAvailable, + StencilBufferAvailable stencilBufferAvailable ) { Core* instance = new Core; - instance->mImpl = new Internal::Core( renderController, platformAbstraction, glAbstraction, glSyncAbstraction, gestureManager ); + instance->mImpl = new Internal::Core( renderController, + platformAbstraction, + glAbstraction, + glSyncAbstraction, + gestureManager, + policy, + renderToFboEnabled, + depthBufferAvailable, + stencilBufferAvailable ); return instance; } @@ -65,39 +59,44 @@ Core::~Core() delete mImpl; } +ContextNotifierInterface* Core::GetContextNotifier() +{ + return mImpl->GetContextNotifier(); +} + void Core::ContextCreated() { mImpl->ContextCreated(); } -void Core::ContextToBeDestroyed() +void Core::ContextDestroyed() { - mImpl->ContextToBeDestroyed(); + mImpl->ContextDestroyed(); } -void Core::SurfaceResized(unsigned int width, unsigned int height) +void Core::RecoverFromContextLoss() { - mImpl->SurfaceResized(width, height); + mImpl->RecoverFromContextLoss(); } -void Core::SetDpi(unsigned int dpiHorizontal, unsigned int dpiVertical) +void Core::SurfaceResized(uint32_t width, uint32_t height) { - mImpl->SetDpi(dpiHorizontal, dpiVertical); + mImpl->SurfaceResized(width, height); } -void Core::SetMinimumFrameTimeInterval(unsigned int interval) +void Core::SetTopMargin( uint32_t margin ) { - mImpl->SetMinimumFrameTimeInterval(interval); + mImpl->SetTopMargin(margin); } -void Core::Suspend() +void Core::SetDpi( uint32_t dpiHorizontal, uint32_t dpiVertical) { - mImpl->Suspend(); + mImpl->SetDpi(dpiHorizontal, dpiVertical); } -void Core::Resume() +void Core::SceneCreated() { - mImpl->Resume(); + mImpl->SceneCreated(); } void Core::QueueEvent(const Event& event) @@ -110,39 +109,19 @@ void Core::ProcessEvents() mImpl->ProcessEvents(); } -void Core::UpdateTouchData(const TouchData& touch) -{ - mImpl->UpdateTouchData(touch); -} - -unsigned int Core::GetMaximumUpdateCount() const +uint32_t Core::GetMaximumUpdateCount() const { return mImpl->GetMaximumUpdateCount(); } -void Core::Update( UpdateStatus& status ) +void Core::Update( float elapsedSeconds, uint32_t lastVSyncTimeMilliseconds, uint32_t nextVSyncTimeMilliseconds, UpdateStatus& status, bool renderToFboEnabled, bool isRenderingToFbo ) { - mImpl->Update( status ); + mImpl->Update( elapsedSeconds, lastVSyncTimeMilliseconds, nextVSyncTimeMilliseconds, status, renderToFboEnabled, isRenderingToFbo ); } -void Core::Render( RenderStatus& status ) +void Core::Render( RenderStatus& status, bool forceClear ) { - mImpl->Render( status ); -} - -void Core::Sleep() -{ - mImpl->Sleep(); -} - -void Core::WakeUp() -{ - mImpl->WakeUp(); -} - -void Core::VSync( unsigned int frameNumber, unsigned int seconds, unsigned int microseconds ) -{ - mImpl->VSync( frameNumber, seconds, microseconds ); + mImpl->Render( status, forceClear ); } SystemOverlay& Core::GetSystemOverlay() @@ -150,24 +129,14 @@ SystemOverlay& Core::GetSystemOverlay() return mImpl->GetSystemOverlay(); } -void Core::SetViewMode( ViewMode viewMode ) -{ - mImpl->SetViewMode( viewMode ); -} - -ViewMode Core::GetViewMode() const -{ - return mImpl->GetViewMode(); -} - -void Core::SetStereoBase( float stereoBase ) +void Core::RegisterProcessor( Processor& processor ) { - mImpl->SetStereoBase( stereoBase ); + mImpl->RegisterProcessor( processor ); } -float Core::GetStereoBase() const +void Core::UnregisterProcessor( Processor& processor ) { - return mImpl->GetStereoBase(); + mImpl->UnregisterProcessor( processor ); } Core::Core()