Enlightenment CVS committal

Author  : doursse
Project : e17
Module  : libs/evas

Dir     : e17/libs/evas/src/bin


Modified Files:
        evas_software_xcb_perf_load.c evas_xrender_xcb_main.c 


Log Message:
cleaning

===================================================================
RCS file: /cvs/e/e17/libs/evas/src/bin/evas_software_xcb_perf_load.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- evas_software_xcb_perf_load.c       14 Jan 2006 12:13:34 -0000      1.4
+++ evas_software_xcb_perf_load.c       6 May 2006 06:23:53 -0000       1.5
@@ -1,13 +1,18 @@
-#include <X11/XCB/xcb.h>
-#include <X11/XCB/xcb_icccm.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
 #include <unistd.h>
 #include <math.h>
 #include <sys/time.h>
 #include <sys/stat.h>
 #include <sys/types.h>
 
+#define X_H   /* make sure we aren't using symbols from X.h */
+
+#include <X11/XCB/xcb.h>
+#include <X11/XCB/xcb_icccm.h>
+#include <X11/XCB/xcb_aux.h>
+
 #include "Evas.h"
 #include "Evas_Engine_Software_Xcb.h"
 
@@ -19,60 +24,86 @@
 int              win_w = 240;
 int              win_h = 240;
 
-XCBSCREEN *
-get_screen (XCBConnection *c,
-            int            screen)
-{
-  XCBSCREENIter i;
-
-  i = XCBConnSetupSuccessRepRootsIter(XCBGetSetup(c));
-  for (; i.rem; --screen, XCBSCREENNext(&i))
-    if (screen == 0)
-      return i.data;
-
-  return NULL;
-}
 
-XCBVISUALTYPE *
-get_visual(XCBConnection *conn,
-          XCBSCREEN     *root)
+static void
+title_set (XCBConnection *c, XCBWINDOW win, const char *title)
 {
-   XCBDEPTH         *d;
-   XCBVISUALTYPEIter iter;
-   int               cur;
-
-   d = XCBSCREENAllowedDepthsIter(root).data;
-   if (!d) return NULL;
-
-   iter = XCBDEPTHVisualsIter(d);
-   for (cur = 0 ; cur < iter.rem ; XCBVISUALTYPENext(&iter), ++cur)
-      if (root->root_visual.id == iter.data->visual_id.id)
-        return iter.data;
-
-   return NULL;
+  XCBInternAtomCookie cookie_encoding;
+  XCBInternAtomCookie cookie_property;
+  XCBInternAtomRep   *rep;
+  XCBATOM             encoding;
+  char               *atom_name;
+
+  atom_name = "UTF8_STRING";
+  cookie_encoding = XCBInternAtom (c,
+                                   0,
+                                   strlen (atom_name),
+                                   atom_name);
+  atom_name = "_NET_WM_NAME";
+  cookie_property = XCBInternAtom (c,
+                                   0,
+                                   strlen (atom_name),
+                                   atom_name);
+
+  rep = XCBInternAtomReply (c, cookie_encoding, NULL);
+  encoding = rep->atom;
+  free (rep);
+
+  rep = XCBInternAtomReply (c, cookie_property, NULL);
+
+  XCBChangeProperty(c, XCBPropModeReplace,
+                    win,
+                    rep->atom, encoding, 8, strlen (title), title);
+  free (rep);
 }
 
-int
-get_depth(XCBConnection *conn,
-         XCBSCREEN     *root)
+static void
+class_set (XCBConnection *c, XCBWINDOW win, const char *name, const char 
*class)
 {
-  XCBDRAWABLE        drawable;
-  XCBGetGeometryRep *geom;
-  int                depth;
-
-  drawable.window = root->root;
-  geom = XCBGetGeometryReply (conn, XCBGetGeometry(conn, drawable), 0);
-
-  if(!geom)
-    {
-      perror ("GetGeometry(root) failed");
-      exit (0);
-    }
-
-  depth = geom->depth;
-  free (geom);
-
-  return depth;
+  XCBInternAtomCookie cookie_encoding;
+  XCBInternAtomCookie cookie_property;
+  XCBInternAtomRep   *rep;
+  XCBATOM             encoding;
+  char               *atom_name;
+  char               *class_str;
+  char               *s;
+  int                 length_name;
+  int                 length_class;
+
+  length_name = strlen (name);
+  length_class = strlen (class);
+  class_str = (char *)malloc (sizeof (char) * (length_name + length_class + 
2));
+  if (!class_str) return;
+  s = class_str;
+  memcpy (s, name, length_name);
+  s += length_name;
+  *s = '\0';
+  s++;
+  memcpy (s, class, length_class);
+  s += length_class;
+  *s = '\0';
+
+  atom_name = "UTF8_STRING";
+  cookie_encoding = XCBInternAtom (c,
+                                   0,
+                                   strlen (atom_name),
+                                   atom_name);
+  atom_name = "_WM_CLASS";
+  cookie_property = XCBInternAtom (c,
+                                   0,
+                                   strlen (atom_name),
+                                   atom_name);
+
+  rep = XCBInternAtomReply (c, cookie_encoding, NULL);
+  encoding = rep->atom;
+  free (rep);
+
+  rep = XCBInternAtomReply (c, cookie_property, NULL);
+
+  XCBChangeProperty(c, XCBPropModeReplace,
+                    win,
+                    rep->atom, encoding, 8, strlen (class_str), class_str);
+  free (rep);
 }
 
 int
@@ -84,7 +115,6 @@
    XCBGenericEvent *e;
    CARD32           mask = 0;
    CARD32           value[6];
-/*    XClassHint          chint; */
    SizeHints       *szhints;
    int              screen_nbr;
 
@@ -95,34 +125,33 @@
        exit(-1);
      }
 
-   screen = get_screen (c, screen_nbr);
+   screen = XCBAuxGetScreen (c, screen_nbr);
 
-   mask = CWBackingStore | CWColormap |
-     CWBackPixmap | CWBorderPixel |
-     CWBitGravity | CWEventMask;
+   mask = 
+     XCBCWBackPixmap | XCBCWBorderPixel |
+     XCBCWBitGravity | XCBCWBackingStore  |
+     XCBCWEventMask  | XCBCWColormap;
 
-   value[0] = None;
+   value[0] = XCBBackPixmapNone;
    value[1] = 0;
-   value[2] = ForgetGravity;
-   value[3] = NotUseful;
-   value[4] = ExposureMask | ButtonPressMask | ButtonReleaseMask | 
PointerMotionMask;
+   value[2] = XCBGravityBitForget;
+   value[3] = XCBBackingStoreNotUseful;
+   value[4] = XCBEventMaskExposure | XCBEventMaskButtonPress | 
XCBEventMaskButtonRelease | XCBEventMaskPointerMotion;
    value[5] = screen->default_colormap.xid;
 
    win.window = XCBWINDOWNew(c);
    XCBCreateWindow (c,
-                   get_depth(c, screen),
+                   XCBAuxGetDepth(c, screen),
                    win.window, screen->root,
                    0, 0,
                    win_w, win_h,
                    0,
-                   InputOutput,
+                   XCBWindowClassInputOutput,
                    screen->root_visual,
                    mask, value);
 
-/*    XStoreName(disp, win, "Evas Performance Test"); */
-/*    chint.res_name = "Evas_Test"; */
-/*    chint.res_class = "Main"; */
-/*    XSetClassHint(disp, win, &chint); */
+   title_set (c, win.window, "Evas XCB Performance Test");
+   class_set (c, win.window, "Evas_XCB_Perf_Test", "Main");
 
    szhints = AllocSizeHints();
    SizeHintsSetMinSize(szhints, win_w, win_h);
@@ -145,10 +174,10 @@
 
       /* the following is specific to the engine */
       einfo->info.conn = c;
-      einfo->info.visual = get_visual (c, screen);
+      einfo->info.visual = XCBAuxGetVisualtype(c, screen_nbr, 
screen->root_visual);
       einfo->info.colormap = screen->default_colormap;
       einfo->info.drawable = win;
-      einfo->info.depth = get_depth(c, screen);
+      einfo->info.depth = XCBAuxGetDepth(c, screen);
       einfo->info.rotation = 0;
 
       evas_engine_info_set(evas, (Evas_Engine_Info *) einfo);
@@ -162,25 +191,25 @@
          {
             switch (e->response_type)
               {
-              case ButtonPress: {
+              case XCBButtonPress: {
                XCBButtonPressEvent *ev = (XCBButtonPressEvent *)e;
 
-/*               evas_event_button_down(evas, ev->event_x, ev->event_y, 
ev->detail.id);*/
+                /* evas_event_button_down(evas, ev->event_x, ev->event_y, 
ev->detail.id);*/
                break;
              }
-              case ButtonRelease: {
+              case XCBButtonRelease: {
                XCBButtonReleaseEvent *ev = (XCBButtonReleaseEvent *)e;
 
-               /*                evas_event_button_up(evas, ev->event_x, 
ev->event_y, ev->detail.id);*/
+               /* evas_event_button_up(evas, ev->event_x, ev->event_y, 
ev->detail.id);*/
                break;
              }
-              case MotionNotify: {
+              case XCBMotionNotify: {
                  XCBMotionNotifyEvent *ev = (XCBMotionNotifyEvent *)e;
 
-/*               evas_event_move(evas, ev->event_x, ev->event_y);*/
+                  /* evas_event_move(evas, ev->event_x, ev->event_y);*/
                  break;
               }
-              case Expose: {
+              case XCBExpose: {
                XCBExposeEvent *ev = (XCBExposeEvent *)e;
 
                  exposed = 1;
@@ -214,10 +243,10 @@
                (Evas_Engine_Info_Software_Xcb *) evas_engine_info_get(evas);
             perf =
                einfo->func.performance_new(evas, c,
-                                           get_visual (c, screen),
+                                           XCBAuxGetVisualtype(c, screen_nbr, 
screen->root_visual),
                                            screen->default_colormap,
                                            win,
-                                           get_depth(c, screen));
+                                           XCBAuxGetDepth(c, screen));
             key = einfo->func.performance_key_get(perf);
             snprintf(buf, sizeof(buf), "%s/.evas/%s", getenv("HOME"), key);
             free(key);
===================================================================
RCS file: /cvs/e/e17/libs/evas/src/bin/evas_xrender_xcb_main.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- evas_xrender_xcb_main.c     10 Mar 2006 19:10:06 -0000      1.1
+++ evas_xrender_xcb_main.c     6 May 2006 06:23:53 -0000       1.2
@@ -1,94 +1,112 @@
 #include "evas_test_main.h"
 
 #include <unistd.h>
+
+#define X_H   /* make sure we aren't using symbols from X.h */
+
 #include <X11/XCB/xcb.h>
+#include <X11/XCB/shm.h>
+#include <X11/XCB/render.h>
+#include <X11/XCB/xcb_aux.h>
 
 #include "Evas.h"
 #include "Evas_Engine_XRender_Xcb.h"
 
 
-XCBSCREEN *
-get_screen (XCBConnection *c,
-            int            screen)
+static void
+title_set (XCBConnection *c, XCBWINDOW win, const char *title)
 {
-  XCBSCREENIter iter;
+  XCBInternAtomCookie cookie_encoding;
+  XCBInternAtomCookie cookie_property;
+  XCBInternAtomRep   *rep;
+  XCBATOM             encoding;
+  char               *atom_name;
 
-  iter = XCBConnSetupSuccessRepRootsIter (XCBGetSetup (c));
-  for (; iter.rem; --screen, XCBSCREENNext (&iter))
-    if (screen == 0)
-      return iter.data;
-
-  return NULL;
-}
+  atom_name = "UTF8_STRING";
+  cookie_encoding = XCBInternAtom (c,
+                                   0,
+                                   strlen (atom_name),
+                                   atom_name);
+  atom_name = "_NET_WM_NAME";
+  cookie_property = XCBInternAtom (c,
+                                   0,
+                                   strlen (atom_name),
+                                   atom_name);
 
-int
-get_depth(XCBConnection *conn,
-         XCBSCREEN     *root)
-{
-  XCBDRAWABLE        drawable;
-  XCBGetGeometryRep *geom;
-  int                depth;
-
-  drawable.window = root->root;
-  geom = XCBGetGeometryReply (conn, XCBGetGeometry(conn, drawable), 0);
-
-  if(!geom)
-    {
-      perror ("GetGeometry(root) failed");
-      exit (0);
-    }
+  rep = XCBInternAtomReply (c, cookie_encoding, NULL);
+  encoding = rep->atom;
+  free (rep);
 
-  depth = geom->depth;
-  free (geom);
+  rep = XCBInternAtomReply (c, cookie_property, NULL);
 
-  return depth;
+  XCBChangeProperty(c, XCBPropModeReplace,
+                    win,
+                    rep->atom, encoding, 8, strlen (title), title);
+  free (rep);
 }
 
-static void title_set (XCBConnection *conn, XCBWINDOW window, const char 
*title)
+static void
+class_set (XCBConnection *c, XCBWINDOW win, const char *name, const char 
*class)
 {
-  XCBInternAtomRep *rep;
-  XCBATOM           encoding;
-  char             *atom_name;
+  XCBInternAtomCookie cookie_encoding;
+  XCBInternAtomCookie cookie_property;
+  XCBInternAtomRep   *rep;
+  XCBATOM             encoding;
+  char               *atom_name;
+  char               *class_str;
+  char               *s;
+  int                 length_name;
+  int                 length_class;
+
+  length_name = strlen (name);
+  length_class = strlen (class);
+  class_str = (char *)malloc (sizeof (char) * (length_name + length_class + 
2));
+  if (!class_str) return;
+  s = class_str;
+  memcpy (s, name, length_name);
+  s += length_name;
+  *s = '\0';
+  s++;
+  memcpy (s, class, length_class);
+  s += length_class;
+  *s = '\0';
 
-  /* encoding */
   atom_name = "UTF8_STRING";
-  rep = XCBInternAtomReply (conn,
-                            XCBInternAtom (conn,
-                                           0,
-                                           strlen (atom_name),
-                                           atom_name),
-                            NULL);
+  cookie_encoding = XCBInternAtom (c,
+                                   0,
+                                   strlen (atom_name),
+                                   atom_name);
+  atom_name = "_WM_CLASS";
+  cookie_property = XCBInternAtom (c,
+                                   0,
+                                   strlen (atom_name),
+                                   atom_name);
+
+  rep = XCBInternAtomReply (c, cookie_encoding, NULL);
   encoding = rep->atom;
   free (rep);
 
-  /* ICCCM */
-/*   SetWMName (f->xcb.c, f->xcb.draw.window, encoding, strlen (title), 
title); */
+  rep = XCBInternAtomReply (c, cookie_property, NULL);
 
-  /* NETWM */
-  atom_name = "_NET_WM_NAME";
-  rep = XCBInternAtomReply (conn,
-                            XCBInternAtom (conn,
-                                           0,
-                                           strlen (atom_name),
-                                           atom_name),
-                            NULL);
-  XCBChangeProperty(conn, PropModeReplace,
-                    window,
-                    rep->atom, encoding, 8, strlen (title), title);
+  XCBChangeProperty(c, XCBPropModeReplace,
+                    win,
+                    rep->atom, encoding, 8, strlen (class_str), class_str);
   free (rep);
 }
 
 int
 main(int argc, char **argv)
 {
-   int              pause_me = 0;
-   XCBConnection   *conn;
-   XCBSCREEN       *screen;
-   XCBDRAWABLE      win;
-   XCBGenericEvent *e;
-   CARD32           mask;
-   CARD32           value[6];
-   int              screen_nbr;
+   int                         pause_me = 0;
+   XCBConnection              *conn;
+   const XCBQueryExtensionRep *rep_shm;
+   const XCBQueryExtensionRep *rep_xrender;
+   XCBSCREEN                  *screen;
+   XCBDRAWABLE                 win;
+   XCBGenericEvent            *e;
+   CARD32                      mask;
+   CARD32                      value[6];
+   int                         screen_nbr;
 
    conn = XCBConnect (NULL, &screen_nbr);
    if (!conn)
@@ -97,31 +115,37 @@
        exit(-1);
      }
 
-   screen = get_screen (conn, screen_nbr);
+   XCBPrefetchExtensionData (conn, &XCBShmId);
+   XCBPrefetchExtensionData (conn, &XCBRenderId);
+   rep_shm = XCBGetExtensionData(conn, &XCBShmId);
+   rep_xrender = XCBGetExtensionData(conn, &XCBRenderId);
+
+   screen = XCBAuxGetScreen (conn, screen_nbr);
 
    mask =
-     XCBCWBackingStore | XCBCWColormap |
-     XCBCWBackPixmap   | XCBCWBorderPixel |
-     XCBCWBitGravity   | XCBCWEventMask;
+     XCBCWBackPixmap | XCBCWBorderPixel |
+     XCBCWBitGravity | XCBCWBackingStore |
+     XCBCWEventMask  | XCBCWColormap;
 
-   value[0] = None;
+   value[0] = XCBBackPixmapNone;
    value[1] = 0;
-   value[2] = ForgetGravity;
-   value[3] = NotUseful;
-   value[4] = ExposureMask | ButtonPressMask | ButtonReleaseMask | 
PointerMotionMask | StructureNotifyMask;
+   value[2] = XCBGravityBitForget;
+   value[3] = XCBBackingStoreNotUseful;
+   value[4] = XCBEventMaskExposure | XCBEventMaskButtonPress | 
XCBEventMaskButtonRelease | XCBEventMaskPointerMotion | 
XCBEventMaskStructureNotify;
    value[5] = screen->default_colormap.xid;
 
    win.window = XCBWINDOWNew(conn);
    XCBCreateWindow (conn,
-                   get_depth(conn, screen),
+                   XCBAuxGetDepth(conn, screen),
                    win.window, screen->root,
                    0, 0,
                    win_w, win_h,
                    0,
-                   InputOutput,
+                   XCBWindowClassInputOutput,
                    screen->root_visual,
                    mask, value);
    title_set (conn, win.window, "Evas XRender Xcb Test");
+   class_set (conn, win.window, "Evas_XRender_XCB_Test", "Main");
 #if 0
    szhints.flags = PMinSize | PMaxSize | PSize | USSize;
    szhints.min_width = szhints.max_width = win_w;
@@ -196,7 +220,7 @@
             evas_event_feed_mouse_move(evas, ev->event_x, ev->event_y, 0, 
NULL);
             break;
           }
-          case Expose: {
+          case XCBExpose: {
             XCBExposeEvent *ev = (XCBExposeEvent *)e;
 
             evas_damage_rectangle_add(evas,
@@ -206,7 +230,7 @@
                                       ev->height);
             break;
           }
-          case ConfigureNotify: {
+          case XCBConfigureNotify: {
             XCBConfigureNotifyEvent *ev = (XCBConfigureNotifyEvent *)e;
 
             evas_output_size_set(evas,




-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to