Ardour  9.0-pre0-582-g084a23a80d
gdkregion-generic.h File Reference

Go to the source code of this file.

Classes

struct  _GdkRegion
 
struct  _POINTBLOCK
 

Macros

#define EXTENTCHECK(r1, r2)
 
#define EXTENTS(r, idRect)
 
#define GROWREGION(reg, nRects)
 
#define MEMCHECK(reg, rect, firstrect)
 
#define CHECK_PREVIOUS(Reg, R, Rx1, Ry1, Rx2, Ry2)
 
#define ADDRECT(reg, r, rx1, ry1, rx2, ry2)
 
#define ADDRECTNOX(reg, r, rx1, ry1, rx2, ry2)
 
#define EMPTY_REGION(pReg)   pReg->numRects = 0
 
#define REGION_NOT_EMPTY(pReg)   pReg->numRects
 
#define INBOX(r, x, y)
 
#define NUMPTSTOBUFFER   200
 

Typedefs

typedef GdkSegment GdkRegionBox
 
typedef struct _POINTBLOCK POINTBLOCK
 

Macro Definition Documentation

◆ ADDRECT

#define ADDRECT (   reg,
  r,
  rx1,
  ry1,
  rx2,
  ry2 
)
Value:
{\
if (((rx1) < (rx2)) && ((ry1) < (ry2)) &&\
CHECK_PREVIOUS((reg), (r), (rx1), (ry1), (rx2), (ry2))){\
(r)->x1 = (rx1);\
(r)->y1 = (ry1);\
(r)->x2 = (rx2);\
(r)->y2 = (ry2);\
EXTENTS((r), (reg));\
(reg)->numRects++;\
(r)++;\
}\
}
#define CHECK_PREVIOUS(Reg, R, Rx1, Ry1, Rx2, Ry2)

Definition at line 124 of file gdkregion-generic.h.

◆ ADDRECTNOX

#define ADDRECTNOX (   reg,
  r,
  rx1,
  ry1,
  rx2,
  ry2 
)
Value:
{\
if ((rx1 < rx2) && (ry1 < ry2) &&\
CHECK_PREVIOUS((reg), (r), (rx1), (ry1), (rx2), (ry2))){\
(r)->x1 = (rx1);\
(r)->y1 = (ry1);\
(r)->x2 = (rx2);\
(r)->y2 = (ry2);\
(reg)->numRects++;\
(r)++;\
}\
}

Definition at line 140 of file gdkregion-generic.h.

◆ CHECK_PREVIOUS

#define CHECK_PREVIOUS (   Reg,
  R,
  Rx1,
  Ry1,
  Rx2,
  Ry2 
)
Value:
(!(((Reg)->numRects > 0)&&\
((R-1)->y1 == (Ry1)) &&\
((R-1)->y2 == (Ry2)) &&\
((R-1)->x1 <= (Rx1)) &&\
((R-1)->x2 >= (Rx2))))

Definition at line 116 of file gdkregion-generic.h.

◆ EMPTY_REGION

#define EMPTY_REGION (   pReg)    pReg->numRects = 0

Definition at line 152 of file gdkregion-generic.h.

◆ EXTENTCHECK

#define EXTENTCHECK (   r1,
  r2 
)
Value:
((r1)->x2 > (r2)->x1 && \
(r1)->x1 < (r2)->x2 && \
(r1)->y2 > (r2)->y1 && \
(r1)->y1 < (r2)->y2)

Definition at line 66 of file gdkregion-generic.h.

◆ EXTENTS

#define EXTENTS (   r,
  idRect 
)
Value:
{\
if((r)->x1 < (idRect)->extents.x1)\
(idRect)->extents.x1 = (r)->x1;\
if((r)->y1 < (idRect)->extents.y1)\
(idRect)->extents.y1 = (r)->y1;\
if((r)->x2 > (idRect)->extents.x2)\
(idRect)->extents.x2 = (r)->x2;\
if((r)->y2 > (idRect)->extents.y2)\
(idRect)->extents.y2 = (r)->y2;\
}

Definition at line 75 of file gdkregion-generic.h.

◆ GROWREGION

#define GROWREGION (   reg,
  nRects 
)
Value:
{ \
if ((nRects) == 0) { \
if ((reg)->rects != &(reg)->extents) { \
g_free ((reg)->rects); \
(reg)->rects = &(reg)->extents; \
} \
} \
else if ((reg)->rects == &(reg)->extents) { \
(reg)->rects = g_new (GdkRegionBox, (nRects)); \
(reg)->rects[0] = (reg)->extents; \
} \
else \
(reg)->rects = g_renew (GdkRegionBox, (reg)->rects, (nRects)); \
(reg)->size = (nRects); \
}

Definition at line 86 of file gdkregion-generic.h.

◆ INBOX

#define INBOX (   r,
  x,
 
)
Value:
( ( ((r).x2 > x)) && \
( ((r).x1 <= x)) && \
( ((r).y2 > y)) && \
( ((r).y1 <= y)) )

Definition at line 156 of file gdkregion-generic.h.

◆ MEMCHECK

#define MEMCHECK (   reg,
  rect,
  firstrect 
)
Value:
{ \
if ((reg)->numRects >= ((reg)->size - 1)) { \
GROWREGION(reg,2*(reg)->size); \
(rect) = &(firstrect)[(reg)->numRects]; \
} \
}

Definition at line 105 of file gdkregion-generic.h.

◆ NUMPTSTOBUFFER

#define NUMPTSTOBUFFER   200

Definition at line 166 of file gdkregion-generic.h.

◆ REGION_NOT_EMPTY

#define REGION_NOT_EMPTY (   pReg)    pReg->numRects

Definition at line 154 of file gdkregion-generic.h.

Typedef Documentation

◆ GdkRegionBox

Definition at line 48 of file gdkregion-generic.h.

◆ POINTBLOCK

typedef struct _POINTBLOCK POINTBLOCK