/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2019 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.
mDepthBufferRequired = static_cast< Integration::DepthBufferAvailable >( environmentOptions->DepthBufferRequired() );
mStencilBufferRequired = static_cast< Integration::StencilBufferAvailable >( environmentOptions->StencilBufferRequired() );
+ mPartialUpdateAvailable = static_cast< Integration::PartialUpdateAvailable >( environmentOptions->PartialUpdateAvailable() );
mMultiSamplingLevel = environmentOptions->GetMultiSamplingLevel();
mEglSync = Utils::MakeUnique< EglSyncImplementation >();
+
+ mEglContextHelper = Utils::MakeUnique< EglContextHelperImplementation >();
}
EglInterface* EglGraphics::Create()
{
- mEglImplementation = Utils::MakeUnique< EglImplementation >( mMultiSamplingLevel, mDepthBufferRequired, mStencilBufferRequired );
+ mEglImplementation = Utils::MakeUnique< EglImplementation >( mMultiSamplingLevel, mDepthBufferRequired, mStencilBufferRequired, mPartialUpdateAvailable );
mEglImageExtensions = Utils::MakeUnique< EglImageExtensions >( mEglImplementation.get() );
mEglSync->Initialize( mEglImplementation.get() ); // The sync impl needs the EglDisplay
+ mEglContextHelper->Initialize( mEglImplementation.get() ); // The context helper impl needs the EglContext
+
return mEglImplementation.get();
}
return *mEglSync;
}
+EglContextHelperImplementation& EglGraphics::GetContextHelperImplementation()
+{
+ DALI_ASSERT_DEBUG( mEglContextHelper && "EglContextHelperImplementation not created" );
+ return *mEglContextHelper;
+}
+
EglImageExtensions* EglGraphics::GetImageExtensions()
{
DALI_ASSERT_DEBUG( mEglImageExtensions && "EglImageExtensions not created" );