nfbScrnPriv -- no frame buffer screen private structure


#include "nfbScrStr.h"


One instance of the nfbScrnPriv structure is maintained for each screen of type nfbScrnPriv. This structure manages routines that handle colormap operations, font cache control, screen blanking and closing, and root window property hooks. If the driver uses nfbScreenInit(D3nfb), the nfbScrnPriv structure does not need to be modified except for the function pointers.

Structure definition

The following members can be accessed by an NFB driver:
typedef struct _nfbScrnPriv {
	PixmapRec pixmap;
	unsigned int numLayers;
	struct _Region *layerRegions;
	unsigned int *DIDLayers;
	unsigned long baseVID;
	void (* ValidateVisual)();
	struct _ColormapRec *installedCmap;
	struct _nfbGCPriv *protoGCPriv;
	void (* SetColor)();
	void (* LoadColormap)();
	unsigned long fontID;
	void (* ClearFont)();
	void (* InitRootWindow) ();
	Bool (* BlankScreen)();
	void (* ValidateWindowPriv)();
	unsigned int clip_count;
	NfbScrFontData *font;
	int font_private_index;
	unsigned long nfb_version;
	unsigned long nfb_options;
	void (* SaveGState)();
	void (* RestoreGState)();
} nfbScrnPriv, *nfbScrnPrivPtr;

Structure members

The members are:

used for internal debugging of nfb

used in implementing X server overlays. Untested.

used in implementing X server overlays. Untested.

used in implementing X server overlays. Untested.

number of the default Visual ID. It is initialized by nfbScreenInit(D3nfb).


(* ValidateVisual)()
routine that validates the current visual. Used by hardware that can support multiple visuals and colormaps. It is not used by nfbScreenInit(D3nfb).

pointer to the prototype GC private to be used by ValidateGC. This is initialized by nfbScreenInit(D3nfb).

(* SetColor)()
pointer and prototype for driver's SetColor(D3nfb) routine. This must be initialized in the driver's xxxInit routine.

(* LoadColormap)()
pointer and prototype for driver's genLoadColormap.D3nfb( ) routine used to quickly load an entire colormap out to the video adapter. The screen pointer can be found in the Colormap structure that is defined in Xserver/include/colormapst.h. A sample using SetColor( ) is in genCmap.c.

nfb's private count of the number font loaded by the server.

(* ClearFont)()
used by display drivers that cache glyphs with DrawMonoGlyphs(D3nfb). ClearFont is called when a font is unrealized (freed) from the server. If the display driver is caching glyphs in the adapter's memory, the glyphs that belong to the given fontid can be cleared from the cache.

(* InitRootWindow) ()
called when the root window is initialized. It can be used to hang X properties off the root window. Its use is currently unsupported.

(* BlankScreen)()
pointer and prototype for driver's BlankScreen(D3nfb) routine.

(* ValidateWindowPriv)()
pointer and prototype for driver's ValidateWindowPriv(D3nfb) routine.

number of clip regions supported by the hardware. The default is zero.

pointer to the nfbScrFontData structure that is initialized by the call made to the nfbInitializeText8 routine (in nfbProcs.h).

used by the nfb layer for all access to font privates in X11R5

this driver's version number

option bits associated with this driver. See nfbDefs.h.

(* SaveGState)()
saves the current state of the graphics adapter, if necessary. Any information that may be lost during screen switching should be saved for RestoreGState. The graphics memory itself may not need to be saved. See exposeScreen in scoScreenInfo(D4nfb)

(* RestoreGState)()
restores the state of the graphics adapter from the information saved by SaveGState.

Version applicability

This structure is supported for NFB drivers on all releases of SCO OpenServer 5, SVR5, and AIX 5L.


BlankScreen(D3nfb), DrawMonoGlyphs(D3nfb), nfbScreenInit(D3nfb), scoScreenInfo(D4nfb), ValidateWindowPriv(D3nfb)
19 June 2005
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 6 and UnixWare (SVR5) HDK - June 2005