Add the synchronization between Ui and Video player
[platform/core/uifw/dali-adaptor.git] / dali / internal / video / common / video-player-impl.h
old mode 100644 (file)
new mode 100755 (executable)
index c73e00d..cac7744
@@ -1,8 +1,8 @@
-#ifndef __DALI_VIDEO_PLAYER_IMPL_H__
-#define __DALI_VIDEO_PLAYER_IMPL_H__
+#ifndef DALI_VIDEO_PLAYER_IMPL_H
+#define DALI_VIDEO_PLAYER_IMPL_H
 
 /*
- * Copyright (c) 2016 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,6 +20,7 @@
 
 // EXTERNAL INCLUDES
 #include <dali/public-api/object/base-object.h>
+#include <dali/devel-api/adaptor-framework/video-sync-mode.h>
 
 // INTERNAL INCLUDES
 #include <dali/devel-api/adaptor-framework/video-player.h>
@@ -147,7 +148,7 @@ public:
   /**
    * @brief Initializes member data.
    */
-  void Initialize();
+  void Initialize( Dali::Actor actor, VideoSyncMode syncMode );
 
   /**
    * @brief Dali::VideoPlayer::Forward()
@@ -174,6 +175,31 @@ public:
    */
   Dali::VideoPlayerPlugin::CodecType GetCodecType() const;
 
+  /**
+   * @copydoc Dali::VideoPlayer::SetDisplayMode()
+   */
+  void SetDisplayMode( Dali::VideoPlayerPlugin::DisplayMode::Type mode );
+
+  /**
+   * @brief Dali::VideoPlayer::GetDisplayMode()
+   */
+  Dali::VideoPlayerPlugin::DisplayMode::Type GetDisplayMode() const;
+
+  /**
+   * @brief Dali::VideoPlayer::GetMediaPlayer()
+   */
+  Any GetMediaPlayer();
+
+  /**
+   * @brief Dali::VideoPlayer::StartSynchronization()
+   */
+  void StartSynchronization();
+
+  /**
+   * @copydoc Dali::VideoPlayer::FinishSynchronization()
+   */
+  void FinishSynchronization();
+
 private:
 
   /**
@@ -199,7 +225,7 @@ private:
   Dali::VideoPlayerPlugin* mPlugin; ///< Videoplayer plugin handle
   void* mHandle; ///< Handle for the loaded library
 
-  typedef Dali::VideoPlayerPlugin* (*CreateVideoPlayerFunction)();
+  typedef Dali::VideoPlayerPlugin* (*CreateVideoPlayerFunction)( Dali::Actor actor, Dali::VideoSyncMode syncMode );
   typedef void (*DestroyVideoPlayerFunction)( Dali::VideoPlayerPlugin* plugin );
 
   CreateVideoPlayerFunction mCreateVideoPlayerPtr;
@@ -231,5 +257,5 @@ inline static const Internal::Adaptor::VideoPlayer& GetImplementation( const Dal
 
 } // namespace Dali;
 
-#endif
+#endif // DALI_VIDEO_PLAYER_IMPL_H