xserver/include glyphstr.h, 1.6, 1.7 mipict.h, 1.16, 1.17 picturestr.h, 1.27, 1.28

David Reveman xserver-commit@pdx.freedesktop.org
Tue Jan 25 16:20:29 PST 2005


Committed by: davidr

Update of /cvs/xserver/xserver/include
In directory gabe:/tmp/cvs-serv26080/include

Modified Files:
	glyphstr.h mipict.h picturestr.h 
Log Message:
Add glyph privates

Index: glyphstr.h
===================================================================
RCS file: /cvs/xserver/xserver/include/glyphstr.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- glyphstr.h	11 Sep 2003 05:12:51 -0000	1.6
+++ glyphstr.h	26 Jan 2005 00:20:27 -0000	1.7
@@ -29,6 +29,7 @@
 #include <X11/extensions/renderproto.h>
 #include "picture.h"
 #include "screenint.h"
+#include "miscstruct.h"
 
 #define GlyphFormat1	0
 #define GlyphFormat4	1
@@ -39,6 +40,7 @@
 
 typedef struct _Glyph {
     CARD32	refcnt;
+    DevUnion	*devPrivates;
     CARD32	size;	/* info + bitmap */
     xGlyphInfo	info;
     /* bits follow */
@@ -79,12 +81,29 @@
 
 extern GlyphHashRec	globalGlyphs[GlyphFormatNum];
 
-GlyphHashSetPtr
-FindGlyphHashSet (CARD32 filled);
+void
+ResetGlyphPrivates (void);
+
+int
+AllocateGlyphPrivateIndex (void);
+
+Bool
+AllocateGlyphPrivate (ScreenPtr pScreen,
+		      int	index2,
+		      unsigned	amount);
 
 Bool
 GlyphInit (ScreenPtr pScreen);
 
+Bool
+GlyphFinishInit (ScreenPtr pScreen);
+
+void
+GlyphUninit (ScreenPtr pScreen);
+
+GlyphHashSetPtr
+FindGlyphHashSet (CARD32 filled);
+
 GlyphRefPtr
 FindGlyphRef (GlyphHashPtr hash, CARD32 signature, Bool match, GlyphPtr compare);
 

Index: mipict.h
===================================================================
RCS file: /cvs/xserver/xserver/include/mipict.h,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- mipict.h	5 Nov 2004 00:29:31 -0000	1.16
+++ mipict.h	26 Jan 2005 00:20:27 -0000	1.17
@@ -106,6 +106,14 @@
 Bool
 miPictureInit (ScreenPtr pScreen, PictFormatPtr formats, int nformats);
 
+Bool
+miRealizeGlyph (ScreenPtr pScreen,
+		GlyphPtr  glyph);
+
+void
+miUnrealizeGlyph (ScreenPtr pScreen,
+		  GlyphPtr  glyph);
+
 void
 miGlyphExtents (int		nlist,
 		GlyphListPtr	list,

Index: picturestr.h
===================================================================
RCS file: /cvs/xserver/xserver/include/picturestr.h,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -d -r1.27 -r1.28
--- picturestr.h	29 Jul 2004 08:10:15 -0000	1.27
+++ picturestr.h	26 Jan 2005 00:20:27 -0000	1.28
@@ -242,11 +242,22 @@
 					     int	    ntri,
 					     xTriangle	    *tris);
 
+typedef Bool	(*RealizeGlyphProcPtr)	    (ScreenPtr	    pScreen,
+					     GlyphPtr	    glyph);
+
+typedef void	(*UnrealizeGlyphProcPtr)    (ScreenPtr	    pScreen,
+					     GlyphPtr	    glyph);
+
 typedef struct _PictureScreen {
     int				totalPictureSize;
     unsigned int		*PicturePrivateSizes;
     int				PicturePrivateLen;
 
+    int			  	totalGlyphPrivateSize;
+    unsigned int	  	*glyphPrivateSizes;
+    int			  	glyphPrivateLen;
+    int			  	glyphPrivateOffset;
+
     PictFormatPtr		formats;
     PictFormatPtr		fallback;
     int				nformats;
@@ -272,6 +283,9 @@
     CloseIndexedProcPtr		CloseIndexed;
     UpdateIndexedProcPtr	UpdateIndexed;
 
+    RealizeGlyphProcPtr   	RealizeGlyph;
+    UnrealizeGlyphProcPtr 	UnrealizeGlyph;
+
     int				subpixel;
     
     PictFilterPtr		filters;
@@ -308,6 +322,9 @@
 #define GetPictureWindow(w) ((PicturePtr) ((w)->devPrivates[PictureWindowPrivateIndex].ptr))
 #define SetPictureWindow(w,p) ((w)->devPrivates[PictureWindowPrivateIndex].ptr = (pointer) (p))
 
+#define GetGlyphPrivatesForScreen(glyph, s)				\
+    ((glyph)->devPrivates + (GetPictureScreen (s))->glyphPrivateOffset)
+
 #define VERIFY_PICTURE(pPicture, pid, client, mode, err) {\
     pPicture = SecurityLookupIDByType(client, pid, PictureType, mode);\
     if (!pPicture) { \



More information about the xserver-commit mailing list