move vaPutSurface(dpy, Surface *draw, XXX) into android/va_android.c 33/533/1
authorAustin Yuan <shengquan.yuan@gmail.com>
Wed, 31 Mar 2010 06:37:22 +0000 (14:37 +0800)
committerAustin Yuan <shengquan.yuan@gmail.com>
Wed, 31 Mar 2010 06:37:22 +0000 (14:37 +0800)
Signed-off-by: Austin Yuan <shengquan.yuan@gmail.com>
va/android/va_android.c
va/va.c

index 9642228..9b1fe0d 100644 (file)
@@ -26,6 +26,7 @@
 #include "config.h"
 #include "va.h"
 #include "va_backend.h"
+#include "va_android.h"
 #include <stdio.h>
 #include <stdlib.h>
 #include <stdarg.h>
@@ -161,3 +162,40 @@ VADisplay vaGetDisplay (
   
   return dpy;
 }
+
+
+#define CTX(dpy) (((VADisplayContextP)dpy)->pDriverContext)
+#define CHECK_DISPLAY(dpy) if( !vaDisplayIsValid(dpy) ) { return VA_STATUS_ERROR_INVALID_DISPLAY; }
+
+static int vaDisplayIsValid(VADisplay dpy)
+{
+    VADisplayContextP pDisplayContext = (VADisplayContextP)dpy;
+    return pDisplayContext && (pDisplayContext->vadpy_magic == VA_DISPLAY_MAGIC) && pDisplayContext->vaIsValid(pDisplayContext);
+}
+
+VAStatus vaPutSurface (
+    VADisplay dpy,
+    VASurfaceID surface,
+    Surface *draw, /* Android Surface/Window */
+    short srcx,
+    short srcy,
+    unsigned short srcw,
+    unsigned short srch,
+    short destx,
+    short desty,
+    unsigned short destw,
+    unsigned short desth,
+    VARectangle *cliprects, /* client supplied clip list */
+    unsigned int number_cliprects, /* number of clip rects in the clip list */
+    unsigned int flags /* de-interlacing flags */
+)
+{
+  VADriverContextP ctx;
+
+  CHECK_DISPLAY(dpy);
+  ctx = CTX(dpy);
+
+  return ctx->vtable.vaPutSurface( ctx, surface, draw, srcx, srcy, srcw, srch,
+                                   destx, desty, destw, desth,
+                                   cliprects, number_cliprects, flags );
+}
diff --git a/va/va.c b/va/va.c
index 14ea2da..0369044 100644 (file)
--- a/va/va.c
+++ b/va/va.c
@@ -56,8 +56,8 @@ extern int trace_flag;
 
 static int vaDisplayIsValid(VADisplay dpy)
 {
-  VADisplayContextP pDisplayContext = (VADisplayContextP)dpy;
-  return pDisplayContext && (pDisplayContext->vadpy_magic == VA_DISPLAY_MAGIC) && pDisplayContext->vaIsValid(pDisplayContext);
+    VADisplayContextP pDisplayContext = (VADisplayContextP)dpy;
+    return pDisplayContext && (pDisplayContext->vadpy_magic == VA_DISPLAY_MAGIC) && pDisplayContext->vaIsValid(pDisplayContext);
 }
 
 static void va_errorMessage(const char *msg, ...)