from jeffdameth: query sync counter
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 1 Oct 2009 08:43:54 +0000 (08:43 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 1 Oct 2009 08:43:54 +0000 (08:43 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/ecore@42833 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/ecore_x/Ecore_X.h
src/lib/ecore_x/xlib/ecore_x_sync.c

index b3a0164..458d0ed 100644 (file)
@@ -1636,6 +1636,7 @@ EAPI int              ecore_x_xregion_rect_contain(Ecore_X_XRegion *region, Ecor
 /* ecore_x_sync.c */
 EAPI Ecore_X_Sync_Alarm ecore_x_sync_alarm_new(Ecore_X_Sync_Counter counter);
 EAPI int                ecore_x_sync_alarm_free(Ecore_X_Sync_Alarm alarm);
+EAPI int                ecore_x_sync_counter_query(Ecore_X_Sync_Counter counter, unsigned int *val);
 
 /* ecore_x_randr.c */
 typedef struct _Ecore_X_Screen_Size Ecore_X_Screen_Size;
index e66fb15..a9d1e65 100644 (file)
@@ -52,3 +52,17 @@ ecore_x_sync_alarm_free(Ecore_X_Sync_Alarm alarm)
 {
    return XSyncDestroyAlarm(_ecore_x_disp, alarm);
 }
+
+EAPI int
+ecore_x_sync_counter_query(Ecore_X_Sync_Counter counter, unsigned int *val)
+{
+  XSyncValue value;
+
+  if (XSyncQueryCounter(_ecore_x_disp, counter, &value))
+    {
+      *val = (unsigned int) XSyncValueLow32(value);
+      return 1;
+    }
+
+  return 0;
+}