[Tizen] Add screen and client rotation itself function
[platform/core/uifw/dali-core.git] / dali / internal / event / actors / camera-actor-impl.h
index 1694ba3..faeb53f 100644 (file)
@@ -53,6 +53,15 @@ public:
   static CameraActorPtr New( const Size& size );
 
   /**
+   * Sets the reflection plane for the camera
+   *
+   * @param[in] plane Plane parameters
+   *
+   * @note plane.xyz are normal vector of the plane.
+   */
+  void SetReflectByPlane( const Vector4& plane );
+
+  /**
    * @copydoc Dali::CameraActor::SetTargetPosition
    */
   void SetTarget( const Vector3& targetPosition );
@@ -195,6 +204,13 @@ public:
    */
   const SceneGraph::Camera* GetCamera() const;
 
+  /**
+   * Rotate the projection.
+   * It is used in case that the target buffer direction is different from the window direction.
+   * @param [in] rotationAngle The rotation angle
+   */
+  void RotateProjection( int rotationAngle );
+
 public: // properties
 
   /**
@@ -234,14 +250,19 @@ private:
   /**
    * @copydoc Dali::Internal::Actor::OnInitialize()
    */
-  virtual void OnInitialize();
+  void OnInitialize() override;
 
+  /**
+   * @copydoc Dali::Internal::Actor::OnStageConnectionInternal()
+   */
+  void OnStageConnectionInternal() override;
 
 private: // Data
 
   const SceneGraph::Camera* mSceneObject; ///< Not owned
 
   Vector3            mTarget;
+  Vector2            mCanvasSize;
   Dali::Camera::Type mType;
   Dali::Camera::ProjectionMode mProjectionMode;
   float              mFieldOfView;