Purge underscored header file barriers
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / controls / super-blur-view / super-blur-view-impl.h
index db9c613..9f229fb 100644 (file)
@@ -1,8 +1,8 @@
-#ifndef __DALI_TOOLKIT_INTERNAL_SUPER_BLUR_VIEW_H__
-#define __DALI_TOOLKIT_INTERNAL_SUPER_BLUR_VIEW_H__
+#ifndef DALI_TOOLKIT_INTERNAL_SUPER_BLUR_VIEW_H
+#define DALI_TOOLKIT_INTERNAL_SUPER_BLUR_VIEW_H
 
 /*
- * Copyright (c) 2014 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.
@@ -20,8 +20,9 @@
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/public-api/controls/control-impl.h>
-#include <dali-toolkit/public-api/controls/super-blur-view/super-blur-view.h>
-#include <dali-toolkit/public-api/controls/gaussian-blur-view/gaussian-blur-view.h>
+#include <dali-toolkit/devel-api/controls/super-blur-view/super-blur-view.h>
+#include <dali-toolkit/devel-api/controls/gaussian-blur-view/gaussian-blur-view.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
 
 namespace Dali
 {
@@ -39,14 +40,6 @@ namespace Internal
  */
 class SuperBlurView : public Control
 {
-public:
-
-  // Properties
-  enum
-  {
-    SUPER_BLUR_VIEW_PROPERTY_START_INDEX = Control::CONTROL_PROPERTY_END_INDEX + 1,
-    SUPER_BLUR_VIEW_PROPERTY_END_INDEX = SUPER_BLUR_VIEW_PROPERTY_START_INDEX + 1000 ///< Reserving 1000 property indices
-  };
 
 public:
 
@@ -61,6 +54,12 @@ public:
   void SetImage(Image inputImage);
 
   /**
+   * Get the image for blurring.
+   * @return The image for blurring.
+   */
+  Image GetImage();
+
+  /**
    * @copydoc Dali::Toolkit::SuperBlurView::GetBlurStrengthPropertyIndex
    */
   Property::Index GetBlurStrengthPropertyIndex() const;
@@ -123,14 +122,19 @@ private: // from Control
   virtual void OnInitialize();
 
   /**
-   * @copydoc Toolkit::Control::OnControlSizeSet
+   * @copydoc CustomActorImpl::OnSizeSet()
+   */
+  virtual void OnSizeSet(const Vector3& targetSize);
+
+  /**
+   * @copydoc CustomActorImpl::OnStageConnection()
    */
-  virtual void OnControlSizeSet(const Vector3& targetSize);
+  virtual void OnStageConnection( int depth );
 
   /**
-   * @copydoc Control::OnRelayout()
+   * @copydoc CustomActorImpl::GetNaturalSize()
    */
-  virtual void OnRelayout( const Vector2& size, ActorSizeContainer& container );
+  virtual Vector3 GetNaturalSize();
 
 private:
 
@@ -152,22 +156,27 @@ private:
    */
   void ClearBlurResource();
 
-private:
-
-  unsigned int                           mBlurLevels;
-
-  Property::Index                        mBlurStrengthPropertyIndex;
+  /**
+   * Sets shader effect on the control renderer
+   * @param[in,out] Sets custom shader effect on the given visual
+   */
+  void SetShaderEffect( Toolkit::Visual::Base& visual );
 
+private:
   std::vector<Toolkit::GaussianBlurView> mGaussianBlurView;
   std::vector<FrameBufferImage>          mBlurredImage;
-  std::vector<ImageActor>                mImageActors;
-  bool                                   mResourcesCleared;
-
+  std::vector<Toolkit::Visual::Base>     mVisuals;
+  Image                                  mInputImage;
   Vector2                                mTargetSize;
+
   Toolkit::SuperBlurView::SuperBlurViewSignal mBlurFinishedSignal; ///< Signal emitted when blur has completed.
+
+  Property::Index                        mBlurStrengthPropertyIndex;
+  unsigned int                           mBlurLevels;
+  bool                                   mResourcesCleared;
 };
 
-}
+}  // namespace Internal
 
 // Helpers for public-api forwarding methods
 inline Toolkit::Internal::SuperBlurView& GetImpl( Toolkit::SuperBlurView& obj )
@@ -184,8 +193,8 @@ inline const Toolkit::Internal::SuperBlurView& GetImpl( const Toolkit::SuperBlur
   return static_cast<const Toolkit::Internal::SuperBlurView&>(handle);
 }
 
-}
+} // namespace Toolkit
 
-}
+} // namespace Dali
 
-#endif /* __DALI_TOOLKIT_INTERNALSUPER_BLUR_VIEW_H__ */
+#endif // DALI_TOOLKIT_INTERNAL_SUPER_BLUR_VIEW_H