1/* 2 * Copyright © 1998 Keith Packard 3 * 4 * Permission to use, copy, modify, distribute, and sell this software and its 5 * documentation for any purpose is hereby granted without fee, provided that 6 * the above copyright notice appear in all copies and that both that 7 * copyright notice and this permission notice appear in supporting 8 * documentation, and that the name of Keith Packard not be used in 9 * advertising or publicity pertaining to distribution of the software without 10 * specific, written prior permission. Keith Packard makes no 11 * representations about the suitability of this software for any purpose. It 12 * is provided "as is" without express or implied warranty. 13 * 14 * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 15 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 16 * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR 17 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 18 * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 19 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 20 * PERFORMANCE OF THIS SOFTWARE. 21 */ 22 23#ifdef HAVE_DIX_CONFIG_H 24#include <dix-config.h> 25#endif 26 27#include "fb.h" 28 29#ifdef FB_SCREEN_PRIVATE 30static DevPrivateKeyRec fbScreenPrivateKeyRec; 31DevPrivateKey 32fbGetScreenPrivateKey(void) { return &fbScreenPrivateKeyRec; } 33#endif 34 35static DevPrivateKeyRec fbGCPrivateKeyRec; 36DevPrivateKey 37fbGetGCPrivateKey (void) { return &fbGCPrivateKeyRec; } 38 39static DevPrivateKeyRec fbWinPrivateKeyRec; 40DevPrivateKey 41fbGetWinPrivateKey (void) { return &fbWinPrivateKeyRec; } 42 43Bool 44fbAllocatePrivates(ScreenPtr pScreen, DevPrivateKey *pGCKey) 45{ 46 if (pGCKey) 47 *pGCKey = &fbGCPrivateKeyRec; 48 49 if (!dixRegisterPrivateKey(&fbGCPrivateKeyRec, PRIVATE_GC, sizeof(FbGCPrivRec))) 50 return FALSE; 51#ifdef FB_SCREEN_PRIVATE 52 if (!dixRegisterPrivateKey(&fbScreenPrivateKeyRec, PRIVATE_SCREEN, sizeof (FbScreenPrivRec))) 53 return FALSE; 54#endif 55 if (!dixRegisterPrivateKey(&fbWinPrivateKeyRec, PRIVATE_WINDOW, 0)) 56 return FALSE; 57 58 return TRUE; 59} 60 61#ifdef FB_ACCESS_WRAPPER 62ReadMemoryProcPtr wfbReadMemory; 63WriteMemoryProcPtr wfbWriteMemory; 64#endif 65