20 if (
r1->top <
r2->top)
24 else if (
r2->top <
r1->top)
31 if (
r1->left <
r2->left)
35 else if (
r2->left <
r1->left)
56 if (
r1->bottom <
r2->bottom)
60 else if (
r2->bottom <
r1->bottom)
67 if (
r1->left <
r2->left)
71 else if (
r2->left <
r1->left)
92 if (
r1->top <
r2->top)
96 else if (
r2->top <
r1->top)
103 if (
r1->right <
r2->right)
107 else if (
r2->right <
r1->right)
128 if (
r1->bottom <
r2->bottom)
132 else if (
r2->bottom <
r1->bottom)
139 if (
r1->right <
r2->right)
143 else if (
r2->right <
r1->right)
160 Clip->
Rects = &Clip->rclBounds;
166 if (Clip->
Rects != &Clip->rclBounds)
177 const RECTL* rcBounds)
192 Clip->rclBounds = *rcBounds;
194 if (Clip->
Rects != &Clip->rclBounds)
196 Clip->
Rects = NewRects;
203 Clip->iDComplexity = (((rcBounds->
top == rcBounds->
bottom) &&
209 Clip->rclBounds = *rcBounds;
211 if (Clip->
Rects != &Clip->rclBounds)
213 Clip->
Rects = &Clip->rclBounds;
228 TRACE(
"Created Clip Obj %p.\n", Clip);
232 ERR(
"Clip object allocation failed!\n");
291 ERR(
"Invalid iDirection %lu\n", iDirection);
306 if ((cMaxRects > 0) && (Clip->
RectCount > cMaxRects))
static INT CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
#define DBG_DEFAULT_CHANNEL(ch)
GLuint GLuint GLsizei count
#define _Post_ptr_invalid_
#define _Out_bytecap_(size)
void * EngAllocMem(int zero, unsigned long size, int tag=0)
#define FIELD_OFFSET(t, f)
#define RtlCopyMemory(Destination, Source, Length)
static __inline int CompareRightUp(const RECTL *r1, const RECTL *r2)
CLIPOBJ *APIENTRY EngCreateClip(VOID)
static __inline int CompareRightDown(const RECTL *r1, const RECTL *r2)
VOID FASTCALL IntEngUpdateClipRegion(XCLIPOBJ *Clip, ULONG count, const RECTL *pRect, const RECTL *rcBounds)
BOOL APIENTRY CLIPOBJ_bEnum(_In_ CLIPOBJ *pco, _In_ ULONG cj, _Out_bytecap_(cj) ULONG *pulEnumRects)
ULONG APIENTRY CLIPOBJ_cEnumStart(_Inout_ CLIPOBJ *pco, _In_ BOOL bAll, _In_ ULONG iType, _In_ ULONG iDirection, _In_ ULONG cMaxRects)
VOID FASTCALL IntEngFreeClipResources(XCLIPOBJ *Clip)
static __inline int CompareLeftDown(const RECTL *r1, const RECTL *r2)
VOID APIENTRY EngDeleteClip(_In_ _Post_ptr_invalid_ CLIPOBJ *pco)
VOID FASTCALL IntEngInitClipObj(XCLIPOBJ *Clip)
static __inline int CompareLeftUp(const RECTL *r1, const RECTL *r2)
ENGAPI VOID APIENTRY EngSort(_Inout_updates_bytes_(c *cjElem) PBYTE pjBuf, _In_ ULONG c, _In_ ULONG cjElem, _In_ SORTCOMP pfnComp)
_In_ SURFOBJ _In_ CLIPOBJ * pco