⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 servermd.h

📁 远程桌面连接工具
💻 H
📖 第 1 页 / 共 2 页
字号:
# define BITMAP_SCANLINE_PAD 			64# define LOG2_BITMAP_PAD			6# define LOG2_BYTES_PER_SCANLINE_PAD		3# define GLYPHPADBYTES		4# define GETLEFTBITS_ALIGNMENT	1# define FAST_CONSTANT_OFFSET_MODE# define LARGE_INSTRUCTION_CACHE# define PLENTIFUL_REGISTERS/* Add for handling protocol XPutImage and XGetImage; see comment below */#define INTERNAL_VS_EXTERNAL_PADDING#define BITMAP_SCANLINE_UNIT_PROTO		32#define BITMAP_SCANLINE_PAD_PROTO 	 	32#define LOG2_BITMAP_PAD_PROTO			5#define LOG2_BYTES_PER_SCANLINE_PAD_PROTO	2#endif /* alpha */#ifdef stellar#define IMAGE_BYTE_ORDER	MSBFirst       /* Values for the stellar only*/#define BITMAP_BIT_ORDER	MSBFirst#define	GLYPHPADBYTES		4#define GETLEFTBITS_ALIGNMENT	4#define IMAGE_BUFSIZE		(64*1024)/* * Use SysV random number generator. */#define random rand#endif /* stellar */#ifdef luna#define IMAGE_BYTE_ORDER        MSBFirst   	/* Values for the OMRON only*/#define BITMAP_BIT_ORDER	MSBFirst#define	GLYPHPADBYTES		4#define GETLEFTBITS_ALIGNMENT	1#ifndef mc68000#define FAST_CONSTANT_OFFSET_MODE#define AVOID_MEMORY_READ#define LARGE_INSTRUCTION_CACHE#define PLENTIFUL_REGISTERS#endif#endif /* luna */#if ((defined(__s390__) || defined(__s390x__)) && defined(linux))#define IMAGE_BYTE_ORDER   MSBFirst#define BITMAP_BIT_ORDER   MSBFirst#endif /* (__s390__ || __s390x__) && linux */    #if (defined(i386) && (defined(SVR4) || defined(SYSV) || (defined(sun) && defined(SVR4))) || defined(__bsdi__) || (defined(__NetBSD__) && defined(__i386__)) || (defined(__OpenBSD__) && defined(__i386__)) || defined(__FreeBSD__) || defined(MACH386) || (defined(linux) && !defined(__mc68000__)) || (defined(AMOEBA) && defined(i80386)) || defined(MINIX) || defined(__EMX__) || (defined(Lynx) && defined(__i386__)))#ifndef IMAGE_BYTE_ORDER#define IMAGE_BYTE_ORDER	LSBFirst#endif#ifndef BITMAP_BIT_ORDER# if defined(XF86MONOVGA) || defined(XF86VGA16) || defined(XF86MONO)#  define BITMAP_BIT_ORDER      MSBFirst# else#  define BITMAP_BIT_ORDER      LSBFirst# endif#endif#ifndef BITMAP_SCANLINE_UNIT# if defined(XF86MONOVGA) || defined(XF86VGA16)#  define BITMAP_SCANLINE_UNIT  8# endif#endif#ifndef GLYPHPADBYTES#define GLYPHPADBYTES           4#endif#define GETLEFTBITS_ALIGNMENT	1#define AVOID_MEMORY_READ#ifdef XSVGA#define AVOID_GLYPHBLT#define FAST_CONSTANT_OFFSET_MODE#define FAST_MEMCPY#define NO_ONE_RECT#endif/* Values for AMD Opteron and Intel 64 bit extensions. Copied from Alpha. */#ifdef __x86_64__#  define BITMAP_SCANLINE_UNIT			64# define BITMAP_SCANLINE_PAD 			64# define LOG2_BITMAP_PAD			6# define LOG2_BYTES_PER_SCANLINE_PAD		3/* Add for handling protocol XPutImage and XGetImage; see comment in * Alpha section. */#define INTERNAL_VS_EXTERNAL_PADDING#define BITMAP_SCANLINE_UNIT_PROTO		32#define BITMAP_SCANLINE_PAD_PROTO 	 	32#define LOG2_BITMAP_PAD_PROTO			5#define LOG2_BYTES_PER_SCANLINE_PAD_PROTO	2#endif#endif /* SVR4 / BSD / i386 */#if defined (linux) && defined (__mc68000__)#define IMAGE_BYTE_ORDER       MSBFirst#define BITMAP_BIT_ORDER       MSBFirst#define FAST_UNALIGNED_READS#define GLYPHPADBYTES          4#define GETLEFTBITS_ALIGNMENT  1#endif /* linux/m68k */#if defined (linux) && defined(__powerpc__)#define IMAGE_BYTE_ORDER       MSBFirst#define BITMAP_BIT_ORDER       MSBFirst#define GLYPHPADBYTES          4#define GETLEFTBITS_ALIGNMENT  1#define LARGE_INSTRUCTION_CACHE  #define FAST_CONSTANT_OFFSET_MODE#define PLENTIFUL_REGISTERS#define AVOID_MEMORY_READ#define FAST_MEMCPY#endif /* Linux/PPC */#if defined(__MACH__) && defined(__POWERPC__)#define IMAGE_BYTE_ORDER       MSBFirst#define BITMAP_BIT_ORDER       MSBFirst#define GLYPHPADBYTES          4#define GETLEFTBITS_ALIGNMENT  1#define LARGE_INSTRUCTION_CACHE  #define FAST_CONSTANT_OFFSET_MODE#define PLENTIFUL_REGISTERS#define AVOID_MEMORY_READ#define FAST_MEMCPY#endif /* MACH/PPC */#ifdef sgi#define IMAGE_BYTE_ORDER	MSBFirst#define BITMAP_BIT_ORDER	MSBFirst#if (_MIPS_SZLONG == 64)# define GLYPHPADBYTES		4# define GETLEFTBITS_ALIGNMENT	1/* pad scanline to a longword */#define BITMAP_SCANLINE_UNIT			64#define BITMAP_SCANLINE_PAD 			64#define LOG2_BITMAP_PAD				6#define LOG2_BYTES_PER_SCANLINE_PAD		3/* Add for handling protocol XPutImage and XGetImage; see comment below */#define INTERNAL_VS_EXTERNAL_PADDING#define BITMAP_SCANLINE_UNIT_PROTO		32#define BITMAP_SCANLINE_PAD_PROTO 	 	32#define LOG2_BITMAP_PAD_PROTO			5#define LOG2_BYTES_PER_SCANLINE_PAD_PROTO	2#else#define GLYPHPADBYTES		2#define GETLEFTBITS_ALIGNMENT	4#endif#define AVOID_MEMORY_READ#define FAST_CONSTANT_OFFSET_MODE#define LARGE_INSTRUCTION_CACHE#define PLENTIFUL_REGISTERS#endif/* size of buffer to use with GetImage, measured in bytes. There's obviously * a trade-off between the amount of stack (or whatever ALLOCATE_LOCAL gives * you) used and the number of times the ddx routine has to be called. *  * for a 1024 x 864 bit monochrome screen  with a 32 bit word we get  * 8192/4 words per buffer  * (1024/32) = 32 words per scanline * 2048 words per buffer / 32 words per scanline = 64 scanlines per buffer * 864 scanlines / 64 scanlines = 14 buffers to draw a full screen */#ifndef IMAGE_BUFSIZE#define IMAGE_BUFSIZE		8192#endif/* pad scanline to a longword */#ifndef BITMAP_SCANLINE_UNIT#define BITMAP_SCANLINE_UNIT	32#endif#ifndef BITMAP_SCANLINE_PAD#define BITMAP_SCANLINE_PAD  32#define LOG2_BITMAP_PAD		5#define LOG2_BYTES_PER_SCANLINE_PAD	2#endif/*  *   This returns the number of padding units, for depth d and width w. * For bitmaps this can be calculated with the macros above. * Other depths require either grovelling over the formats field of the * screenInfo or hardwired constants. */typedef struct _PaddingInfo {	int     padRoundUp;	/* pixels per pad unit - 1 */	int	padPixelsLog2;	/* log 2 (pixels per pad unit) */	int     padBytesLog2;	/* log 2 (bytes per pad unit) */	int	notPower2;	/* bitsPerPixel not a power of 2 */	int	bytesPerPixel;	/* only set when notPower2 is TRUE */} PaddingInfo;extern PaddingInfo PixmapWidthPaddingInfo[];#define PixmapWidthInPadUnits(w, d) \    (PixmapWidthPaddingInfo[d].notPower2 ? \    (((int)(w) * PixmapWidthPaddingInfo[d].bytesPerPixel +  \	         PixmapWidthPaddingInfo[d].bytesPerPixel) >> \	PixmapWidthPaddingInfo[d].padBytesLog2) : \    ((int)((w) + PixmapWidthPaddingInfo[d].padRoundUp) >> \	PixmapWidthPaddingInfo[d].padPixelsLog2))/* *	Return the number of bytes to which a scanline of the given * depth and width will be padded. */#define PixmapBytePad(w, d) \    (PixmapWidthInPadUnits(w, d) << PixmapWidthPaddingInfo[d].padBytesLog2)#define BitmapBytePad(w) \    (((int)((w) + BITMAP_SCANLINE_PAD - 1) >> LOG2_BITMAP_PAD) << LOG2_BYTES_PER_SCANLINE_PAD)#ifdef INTERNAL_VS_EXTERNAL_PADDING/*  This is defined if the server's internal padding is different from the padding *  advertised in the protocol.  The protocol does not allow for padding to *  64 bits, for example, so if the server wants to use 64 bit padding internally, *  it has to advertise 32 bit padding and do padding fixups whenever images *  cross the wire.  (See ProcGetImage and ProcPutImage.) * *  The macros and constants that end in Proto or PROTO refer to the advertised *  padding, and the ones without Proto are for internal padding. */extern PaddingInfo PixmapWidthPaddingInfoProto[];#define PixmapWidthInPadUnitsProto(w, d) \    (PixmapWidthPaddingInfoProto[d].notPower2 ? \    (((int)(w) * PixmapWidthPaddingInfoProto[d].bytesPerPixel +  \	         PixmapWidthPaddingInfoProto[d].bytesPerPixel) >> \	PixmapWidthPaddingInfoProto[d].padBytesLog2) : \    ((int)((w) + PixmapWidthPaddingInfoProto[d].padRoundUp) >> \	PixmapWidthPaddingInfoProto[d].padPixelsLog2))#define PixmapBytePadProto(w, d) \    (PixmapWidthInPadUnitsProto(w, d) << \    PixmapWidthPaddingInfoProto[d].padBytesLog2)#define BitmapBytePadProto(w) \    ((((w) + BITMAP_SCANLINE_PAD_PROTO - 1) >> LOG2_BITMAP_PAD_PROTO) \    << LOG2_BYTES_PER_SCANLINE_PAD_PROTO)#else /* protocol and internal padding is the same */#define PixmapWidthInPadUnitsProto(w, d) PixmapWidthInPadUnits(w, d)#define PixmapBytePadProto(w, d) PixmapBytePad(w, d)#define BitmapBytePadProto(w) BitmapBytePad(w)#endif /* protocol vs. internal padding  */#endif /* SERVERMD_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -