e_comp_wl_video_buffer: make an internal header 31/305031/1
authorSooChan Lim <sc1.lim@samsung.com>
Sun, 21 Jan 2024 03:24:30 +0000 (12:24 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Fri, 26 Jan 2024 00:59:23 +0000 (09:59 +0900)
Move the internal resources and the function declaration
to the internal header

Change-Id: I7a15772c8fb4d42ed739cb7f14ef3191fd2a1df0

src/bin/e_comp_wl_screenshooter.c
src/bin/e_comp_wl_viewport.c
src/bin/e_output.c
src/bin/e_plane.c
src/bin/video/e_comp_wl_video_buffer.c
src/bin/video/e_comp_wl_video_buffer.h
src/bin/video/e_comp_wl_video_buffer_intern.h [new file with mode: 0644]
src/bin/video/iface/e_video_hwc.c
src/bin/video/iface/e_video_hwc_intern.h
src/bin/video/iface/e_video_hwc_planes.c

index 4bf3c432cc2c734cc34f854d11df67ced1d8abb4..01ee2148ac0d889bc14d53885aba736057fdbf29 100644 (file)
@@ -6,6 +6,7 @@
 #include "e_comp_wl_screenshooter_intern.h"
 #include "e_privilege_intern.h"
 #include "e_output_intern.h"
+#include "e_comp_wl_video_buffer_intern.h"
 
 #include <wayland-server.h>
 #include <screenshooter-server-protocol.h>
index c76512feaf07fa3383939b2d859be98a09db3185..d657d412e49ed4dac86925151512dafd6cbfc584 100644 (file)
@@ -7,6 +7,7 @@
 #include "e_comp_wl_viewport_intern.h"
 #include "e_comp_wl_intern.h"
 #include "e_comp_wl_subsurface_intern.h"
+#include "e_comp_wl_video_buffer_intern.h"
 
 #include <wayland-server.h>
 #include <wayland-tbm-server.h>
index a7354d2b8308a061db5caf4d45c75cb5b4666bc2..5f14968e9b1eeb7e63d881c41b11896a996dcf24 100644 (file)
@@ -12,6 +12,7 @@
 #include "e_hwc_window_intern.h"
 #include "e_hwc_windows_intern.h"
 #include "e_hwc_intern.h"
+#include "e_comp_wl_video_buffer_intern.h"
 
 #include <device/board-internal.h>
 
index c01dca32d4d15532381d60a2a18973a7f8490ff0..1ed31078a0a7284b4185b460a8d6b7b3849162f3 100644 (file)
@@ -4,6 +4,7 @@
 #include "e_comp_wl_intern.h"
 #include "e_pointer_intern.h"
 #include "e_output_intern.h"
+#include "e_comp_wl_video_buffer_intern.h"
 
 #include <device/board-internal.h>
 # include <tdm.h>
index 6a6e72a416a237c349bcba22a96870716d0233e9..ba505a07241103314f00c89e356957b2e3ac2076 100644 (file)
@@ -3,6 +3,8 @@
 #endif
 
 #include "e.h"
+#include "e_comp_wl_video_buffer_intern.h"
+
 #include <wayland-tbm-server.h>
 #include <sys/mman.h>
 #include <pixman.h>
index 74ae0454ba831d41c93e92d3d5b75d986e9e65e3..5664fd81d54ff0312114fcf824b4b2b40ca07864 100644 (file)
@@ -1,96 +1,10 @@
 #ifdef E_TYPEDEFS
 
-typedef enum _E_Comp_Wl_Video_Buf_Type
-{
-   E_COMP_WL_VIDEO_BUF_TYPE_SHM,
-   E_COMP_WL_VIDEO_BUF_TYPE_TBM,
-} E_Comp_Wl_Video_Buf_Type;
-
-typedef struct _E_Comp_Wl_Video_Buf E_Comp_Wl_Video_Buf;
-
 #else
 #ifndef E_COMP_WL_VIDEO_BUFFER_H
 #define E_COMP_WL_VIDEO_BUFFER_H
 
-#include "e_comp_wl_tbm.h"
-
-struct _E_Comp_Wl_Video_Buf
-{
-   /* to manage lifecycle */
-   uint ref_cnt;
-
-   /* to check valid */
-   uint stamp;
-
-   /* to manage wl_resource */
-   struct wl_resource *resource;
-   struct wl_listener destroy_listener;
-
-   Eina_Bool buffer_destroying;
-
-   E_Comp_Wl_Video_Buf_Type type;
-   tbm_surface_h tbm_surface;
-
-   /* pitch contains the full buffer width.
-    * width indicates the content area width.
-    */
-   tbm_format tbmfmt;
-   int width;
-   int height;
-   uint handles[4];
-   uint pitches[4];
-   uint offsets[4];
-   int names[4];
-   void *ptrs[4];
-
-   int width_from_pitch;
-   int height_from_size;
-
-   /* to avoid reading & write at same time */
-   Eina_Bool in_use;
-
-   Eina_List *free_funcs;
-
-   /* for wl_buffer.release event */
-   E_Comp_Wl_Buffer *comp_buffer;
-   E_Comp_Wl_Buffer_Ref buffer_ref;
-   Eina_Rectangle content_r;        /* content rect */
-   unsigned int content_t;          /* content transform */
-};
-
-EINTERN E_Comp_Wl_Video_Buf* e_comp_wl_video_buffer_create(struct wl_resource *resource);
-EINTERN E_Comp_Wl_Video_Buf* e_comp_wl_video_buffer_create_comp(E_Comp_Wl_Buffer *comp_buffer);
-EINTERN E_Comp_Wl_Video_Buf* e_comp_wl_video_buffer_create_tbm(tbm_surface_h tbm_surface);
-EINTERN E_Comp_Wl_Video_Buf* e_comp_wl_video_buffer_alloc(int width, int height, tbm_format tbmfmt, Eina_Bool scanout);
-EINTERN E_Comp_Wl_Video_Buf* e_comp_wl_video_buffer_ref(E_Comp_Wl_Video_Buf *vbuf);
-EINTERN void          e_comp_wl_video_buffer_unref(E_Comp_Wl_Video_Buf *vbuf);
-EINTERN Eina_Bool     e_comp_wl_video_buffer_valid(E_Comp_Wl_Video_Buf *vbuf);
-
-#define VBUF_IS_VALID(b)   e_comp_wl_video_buffer_valid(b)
-#define MSTAMP(b)          ((b)?(b)->stamp:0)
-
-#define e_comp_wl_video_buffer_set_use(b, v)    \
-   do { \
-      if (b) b->in_use = v; \
-   } while (0)
-
-typedef void (*VBuf_Free_Func) (E_Comp_Wl_Video_Buf *vbuf, void *data);
-EINTERN void e_comp_wl_video_buffer_free_func_add(E_Comp_Wl_Video_Buf *vbuf, VBuf_Free_Func func, void *data);
-EINTERN void e_comp_wl_video_buffer_free_func_del(E_Comp_Wl_Video_Buf *vbuf, VBuf_Free_Func func, void *data);
-
-EINTERN void e_comp_wl_video_buffer_clear(E_Comp_Wl_Video_Buf *vbuf);
-EINTERN Eina_Bool e_comp_wl_video_buffer_copy(E_Comp_Wl_Video_Buf *srcbuf, E_Comp_Wl_Video_Buf *dstbuf);
-EINTERN void e_comp_wl_video_buffer_convert(E_Comp_Wl_Video_Buf *srcbuf, E_Comp_Wl_Video_Buf *dstbuf,
-                                            int sx, int sy, int sw, int sh,
-                                            int dx, int dy, int dw, int dh,
-                                            Eina_Bool over, int rotate, int hflip, int vflip);
-
-EINTERN uint e_comp_wl_video_buffer_get_mills(void);
-EINTERN int  e_comp_wl_video_buffer_list_length(void);
 E_API   void e_comp_wl_video_buffer_list_print(const char *log_path);
 
-EINTERN void e_comp_wl_video_buffer_size_get(E_Client *ec, int *bw, int *bh);
-EINTERN void e_comp_wl_video_buffer_transform_scale_size_get(E_Client *ec, int *bw, int *bh);
-
 #endif
 #endif
diff --git a/src/bin/video/e_comp_wl_video_buffer_intern.h b/src/bin/video/e_comp_wl_video_buffer_intern.h
new file mode 100644 (file)
index 0000000..f50b8aa
--- /dev/null
@@ -0,0 +1,90 @@
+#ifndef E_COMP_WL_VIDEO_BUFFER_INTERN_H
+#define E_COMP_WL_VIDEO_BUFFER_INTERN_H
+
+#define VBUF_IS_VALID(b)   e_comp_wl_video_buffer_valid(b)
+#define MSTAMP(b)          ((b)?(b)->stamp:0)
+
+#define e_comp_wl_video_buffer_set_use(b, v)    \
+   do { \
+      if (b) b->in_use = v; \
+   } while (0)
+
+typedef enum _E_Comp_Wl_Video_Buf_Type
+{
+   E_COMP_WL_VIDEO_BUF_TYPE_SHM,
+   E_COMP_WL_VIDEO_BUF_TYPE_TBM,
+} E_Comp_Wl_Video_Buf_Type;
+
+typedef struct _E_Comp_Wl_Video_Buf E_Comp_Wl_Video_Buf;
+
+typedef void (*VBuf_Free_Func) (E_Comp_Wl_Video_Buf *vbuf, void *data);
+
+struct _E_Comp_Wl_Video_Buf
+{
+   /* to manage lifecycle */
+   uint ref_cnt;
+
+   /* to check valid */
+   uint stamp;
+
+   /* to manage wl_resource */
+   struct wl_resource *resource;
+   struct wl_listener destroy_listener;
+
+   Eina_Bool buffer_destroying;
+
+   E_Comp_Wl_Video_Buf_Type type;
+   tbm_surface_h tbm_surface;
+
+   /* pitch contains the full buffer width.
+    * width indicates the content area width.
+    */
+   tbm_format tbmfmt;
+   int width;
+   int height;
+   uint handles[4];
+   uint pitches[4];
+   uint offsets[4];
+   int names[4];
+   void *ptrs[4];
+
+   int width_from_pitch;
+   int height_from_size;
+
+   /* to avoid reading & write at same time */
+   Eina_Bool in_use;
+
+   Eina_List *free_funcs;
+
+   /* for wl_buffer.release event */
+   E_Comp_Wl_Buffer *comp_buffer;
+   E_Comp_Wl_Buffer_Ref buffer_ref;
+   Eina_Rectangle content_r;        /* content rect */
+   unsigned int content_t;          /* content transform */
+};
+
+EINTERN E_Comp_Wl_Video_Buf* e_comp_wl_video_buffer_create(struct wl_resource *resource);
+EINTERN E_Comp_Wl_Video_Buf* e_comp_wl_video_buffer_create_comp(E_Comp_Wl_Buffer *comp_buffer);
+EINTERN E_Comp_Wl_Video_Buf* e_comp_wl_video_buffer_create_tbm(tbm_surface_h tbm_surface);
+EINTERN E_Comp_Wl_Video_Buf* e_comp_wl_video_buffer_alloc(int width, int height, tbm_format tbmfmt, Eina_Bool scanout);
+EINTERN E_Comp_Wl_Video_Buf* e_comp_wl_video_buffer_ref(E_Comp_Wl_Video_Buf *vbuf);
+EINTERN void          e_comp_wl_video_buffer_unref(E_Comp_Wl_Video_Buf *vbuf);
+EINTERN Eina_Bool     e_comp_wl_video_buffer_valid(E_Comp_Wl_Video_Buf *vbuf);
+
+EINTERN void e_comp_wl_video_buffer_free_func_add(E_Comp_Wl_Video_Buf *vbuf, VBuf_Free_Func func, void *data);
+EINTERN void e_comp_wl_video_buffer_free_func_del(E_Comp_Wl_Video_Buf *vbuf, VBuf_Free_Func func, void *data);
+
+EINTERN void e_comp_wl_video_buffer_clear(E_Comp_Wl_Video_Buf *vbuf);
+EINTERN Eina_Bool e_comp_wl_video_buffer_copy(E_Comp_Wl_Video_Buf *srcbuf, E_Comp_Wl_Video_Buf *dstbuf);
+EINTERN void e_comp_wl_video_buffer_convert(E_Comp_Wl_Video_Buf *srcbuf, E_Comp_Wl_Video_Buf *dstbuf,
+                                            int sx, int sy, int sw, int sh,
+                                            int dx, int dy, int dw, int dh,
+                                            Eina_Bool over, int rotate, int hflip, int vflip);
+
+EINTERN uint e_comp_wl_video_buffer_get_mills(void);
+EINTERN int  e_comp_wl_video_buffer_list_length(void);
+
+EINTERN void e_comp_wl_video_buffer_size_get(E_Client *ec, int *bw, int *bh);
+EINTERN void e_comp_wl_video_buffer_transform_scale_size_get(E_Client *ec, int *bw, int *bh);
+
+#endif
index 39226a86eeb9d4f7bbdfe4b8a4d25d5d6ea66e2c..201806672cf21bf9cc7ac2fb39ddbaaaee35e96f 100644 (file)
@@ -10,6 +10,7 @@
 #include "e_comp_wl_subsurface_intern.h"
 #include "e_comp_wl_viewport_intern.h"
 #include "e_output_intern.h"
+#include "e_comp_wl_video_buffer_intern.h"
 
 #include <wayland-tbm-server.h>
 
index b457fdf73c201eb2e8de76ed4f8b1ad7fd5c3f14..0bb7374b14a0cef4a0c58f4474cef1a46e8de78e 100644 (file)
@@ -1,12 +1,7 @@
 #ifndef E_VIDEO_HWC_INTERN_H
 #define E_VIDEO_HWC_INTERN_H
 
-#if 0
-#include <string.h>
-#include <Eina.h>
-#include "e.h"
-#include "e_video_internal.h"
-#endif
+#include "e_comp_wl_video_buffer_intern.h"
 
 #define BUFFER_MAX_COUNT   5
 
index ac801a48db10eca065e1e30ed9aa3ed6de1a0df9..84aa9678c7a05837e0bd3d1ca8608d458b126c80 100644 (file)
@@ -7,6 +7,7 @@
 #include "e_comp_screen_intern.h"
 #include "e_comp_wl_intern.h"
 #include "e_comp_wl_subsurface_intern.h"
+#include "e_comp_wl_video_buffer_intern.h"
 
 #include <tdm.h>
 #include <tdm_helper.h>