• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdenetwork API Reference
  • KDE Home
  • Contact Us
 

krfb

  • sources
  • kde-4.14
  • kdenetwork
  • krfb
  • libvncserver
  • rfb
rfbregion.h
Go to the documentation of this file.
1 #ifndef SRAREGION_H
2 #define SRAREGION_H
3 
4 /* -=- SRA - Simple Region Algorithm
5  * A simple rectangular region implementation.
6  * Copyright (c) 2001 James "Wez" Weatherall, Johannes E. Schindelin
7  */
8 
9 /* -=- sraRect */
10 
11 typedef struct _rect {
12  int x1;
13  int y1;
14  int x2;
15  int y2;
16 } sraRect;
17 
18 typedef struct sraRegion sraRegion;
19 
20 /* -=- Region manipulation functions */
21 
22 extern sraRegion *sraRgnCreate();
23 extern sraRegion *sraRgnCreateRect(int x1, int y1, int x2, int y2);
24 extern sraRegion *sraRgnCreateRgn(const sraRegion *src);
25 
26 extern void sraRgnDestroy(sraRegion *rgn);
27 extern void sraRgnMakeEmpty(sraRegion *rgn);
28 extern rfbBool sraRgnAnd(sraRegion *dst, const sraRegion *src);
29 extern void sraRgnOr(sraRegion *dst, const sraRegion *src);
30 extern rfbBool sraRgnSubtract(sraRegion *dst, const sraRegion *src);
31 
32 extern void sraRgnOffset(sraRegion *dst, int dx, int dy);
33 
34 extern rfbBool sraRgnPopRect(sraRegion *region, sraRect *rect,
35  unsigned long flags);
36 
37 extern unsigned long sraRgnCountRects(const sraRegion *rgn);
38 extern rfbBool sraRgnEmpty(const sraRegion *rgn);
39 
40 extern sraRegion *sraRgnBBox(const sraRegion *src);
41 
42 /* -=- rectangle iterator */
43 
44 typedef struct sraRectangleIterator {
45  rfbBool reverseX,reverseY;
46  int ptrSize,ptrPos;
47  struct sraSpan** sPtrs;
48 } sraRectangleIterator;
49 
50 extern sraRectangleIterator *sraRgnGetIterator(sraRegion *s);
51 extern sraRectangleIterator *sraRgnGetReverseIterator(sraRegion *s,rfbBool reverseX,rfbBool reverseY);
52 extern rfbBool sraRgnIteratorNext(sraRectangleIterator *i,sraRect *r);
53 extern void sraRgnReleaseIterator(sraRectangleIterator *i);
54 
55 void sraRgnPrint(const sraRegion *s);
56 
57 /* -=- Rectangle clipper (for speed) */
58 
59 extern rfbBool sraClipRect(int *x, int *y, int *w, int *h,
60  int cx, int cy, int cw, int ch);
61 
62 extern rfbBool sraClipRect2(int *x, int *y, int *x2, int *y2,
63  int cx, int cy, int cx2, int cy2);
64 
65 #endif
sraRgnCreate
sraRegion * sraRgnCreate()
sraRect
struct _rect sraRect
sraRgnCreateRect
sraRegion * sraRgnCreateRect(int x1, int y1, int x2, int y2)
sraRgnCreateRgn
sraRegion * sraRgnCreateRgn(const sraRegion *src)
sraRectangleIterator::reverseX
rfbBool reverseX
Definition: rfbregion.h:45
_rect
Definition: rfbregion.h:11
sraRectangleIterator::ptrPos
int ptrPos
Definition: rfbregion.h:46
_rect::y2
int y2
Definition: rfbregion.h:15
rfbBool
int8_t rfbBool
Definition: rfbproto.h:102
sraRgnCountRects
unsigned long sraRgnCountRects(const sraRegion *rgn)
sraRectangleIterator
Definition: rfbregion.h:44
sraRgnGetReverseIterator
sraRectangleIterator * sraRgnGetReverseIterator(sraRegion *s, rfbBool reverseX, rfbBool reverseY)
sraRgnIteratorNext
rfbBool sraRgnIteratorNext(sraRectangleIterator *i, sraRect *r)
_rect::y1
int y1
Definition: rfbregion.h:13
dst
lzo_uint lzo_bytep dst
Definition: lzoconf.h:240
sraRectangleIterator
struct sraRectangleIterator sraRectangleIterator
sraRectangleIterator::sPtrs
struct sraSpan ** sPtrs
Definition: rfbregion.h:47
sraRgnPrint
void sraRgnPrint(const sraRegion *s)
sraRectangleIterator::reverseY
rfbBool reverseY
Definition: rfbregion.h:45
sraRgnMakeEmpty
void sraRgnMakeEmpty(sraRegion *rgn)
sraRgnPopRect
rfbBool sraRgnPopRect(sraRegion *region, sraRect *rect, unsigned long flags)
sraClipRect
rfbBool sraClipRect(int *x, int *y, int *w, int *h, int cx, int cy, int cw, int ch)
sraRgnReleaseIterator
void sraRgnReleaseIterator(sraRectangleIterator *i)
sraRgnSubtract
rfbBool sraRgnSubtract(sraRegion *dst, const sraRegion *src)
sraRgnDestroy
void sraRgnDestroy(sraRegion *rgn)
sraRegion
struct sraRegion sraRegion
Definition: rfbregion.h:18
sraRgnAnd
rfbBool sraRgnAnd(sraRegion *dst, const sraRegion *src)
sraRgnOffset
void sraRgnOffset(sraRegion *dst, int dx, int dy)
sraRgnBBox
sraRegion * sraRgnBBox(const sraRegion *src)
sraRgnOr
void sraRgnOr(sraRegion *dst, const sraRegion *src)
sraRectangleIterator::ptrSize
int ptrSize
Definition: rfbregion.h:46
sraClipRect2
rfbBool sraClipRect2(int *x, int *y, int *x2, int *y2, int cx, int cy, int cx2, int cy2)
sraRgnEmpty
rfbBool sraRgnEmpty(const sraRegion *rgn)
_rect::x2
int x2
Definition: rfbregion.h:14
_rect::x1
int x1
Definition: rfbregion.h:12
sraRgnGetIterator
sraRectangleIterator * sraRgnGetIterator(sraRegion *s)
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:29:40 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

krfb

Skip menu "krfb"
  • Main Page
  • Namespace List
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Modules
  • Related Pages

kdenetwork API Reference

Skip menu "kdenetwork API Reference"
  • kget
  • kopete
  •   kopete
  •   libkopete
  • krdc
  • krfb

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal