[dali_2.3.24] Merge branch 'devel/master'
[platform/core/uifw/dali-toolkit.git] / dali-scene3d / internal / common / environment-map-load-task.cpp
index 82d8646..385eb39 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2022 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2024 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.
@@ -19,8 +19,8 @@
 #include <dali-scene3d/internal/common/environment-map-load-task.h>
 
 // INTERNAL INCLUDES
-#include <dali-scene3d/public-api/loader/cube-map-loader.h>
-
+#include <dali-scene3d/internal/common/image-resource-loader.h>
+#include <dali-scene3d/public-api/loader/environment-map-loader.h>
 
 namespace Dali
 {
@@ -28,13 +28,13 @@ namespace Scene3D
 {
 namespace Internal
 {
-
-EnvironmentMapLoadTask::EnvironmentMapLoadTask(const std::string& environmentMapUrl, CallbackBase* callback)
+EnvironmentMapLoadTask::EnvironmentMapLoadTask(const std::string& environmentMapUrl, Dali::Scene3D::EnvironmentMapType environmentMapType, CallbackBase* callback)
 : AsyncTask(callback),
   mEnvironmentMapUrl(environmentMapUrl),
   mIsReady(true),
   mHasSucceeded(false)
 {
+  mEnvironmentMapData.SetEnvironmentMapType(environmentMapType);
 }
 
 EnvironmentMapLoadTask::~EnvironmentMapLoadTask()
@@ -43,7 +43,7 @@ EnvironmentMapLoadTask::~EnvironmentMapLoadTask()
 
 void EnvironmentMapLoadTask::Process()
 {
-  mHasSucceeded = Scene3D::Loader::LoadCubeMapData(mEnvironmentMapUrl, mEnvironmentMapPixelData);
+  mHasSucceeded = Scene3D::Loader::LoadEnvironmentMap(mEnvironmentMapUrl, mEnvironmentMapData);
 }
 
 bool EnvironmentMapLoadTask::IsReady()
@@ -56,14 +56,19 @@ bool EnvironmentMapLoadTask::HasSucceeded() const
   return mHasSucceeded;
 }
 
-Dali::Scene3D::Loader::CubeData EnvironmentMapLoadTask::GetEnvironmentMap() const
+Dali::Texture EnvironmentMapLoadTask::GetLoadedTexture()
+{
+  return (HasSucceeded()) ? mEnvironmentMapData.GetTexture() : Texture();
+}
+
+uint32_t EnvironmentMapLoadTask::GetMipmapLevels()
+{
+  return (HasSucceeded()) ? mEnvironmentMapData.GetMipmapLevels() : 1u;
+}
+
+Dali::Scene3D::EnvironmentMapType EnvironmentMapLoadTask::GetEnvironmentMapType()
 {
-  Dali::Scene3D::Loader::CubeData environmentMapPixelData;
-  if(mIsReady && mHasSucceeded && !mEnvironmentMapPixelData.data.empty())
-  {
-    environmentMapPixelData = mEnvironmentMapPixelData;
-  }
-  return environmentMapPixelData;
+  return mEnvironmentMapData.GetEnvironmentMapType();
 }
 
 } // namespace Internal