\hypertarget{group__Eina__Rectangle__Group}{\section{Rectangle}
\label{group__Eina__Rectangle__Group}\index{Rectangle@{Rectangle}}
}


These functions provide rectangle management.  


\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct__Eina__Rectangle}{\-\_\-\-Eina\-\_\-\-Rectangle}
\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Eina__Rectangle__Group_gab43541e02b6f424833e4c80a1f8e95b2}{\#define {\bfseries E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-I\-N\-I\-T}~\{ 0, 0, 0, 0\}}\label{group__Eina__Rectangle__Group_gab43541e02b6f424833e4c80a1f8e95b2}

\item 
\hypertarget{group__Eina__Rectangle__Group_ga19aa6849720f79d346c870a9171a7eb5}{\#define {\bfseries E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-F\-O\-R\-M\-A\-T}~\char`\"{}dx\%d -\/ \%dx\%d\char`\"{}}\label{group__Eina__Rectangle__Group_ga19aa6849720f79d346c870a9171a7eb5}

\item 
\hypertarget{group__Eina__Rectangle__Group_ga36d062c01320537481343cfe0335301b}{\#define {\bfseries E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-A\-R\-G\-S}(r)~(r)-\/$>$x, (r)-\/$>$y, (r)-\/$>$w, (r)-\/$>$h}\label{group__Eina__Rectangle__Group_ga36d062c01320537481343cfe0335301b}

\item 
\#define \hyperlink{group__Eina__Rectangle__Group_gaaceb5b08727a052cc814a92569fcf8da}{E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-S\-E\-T}(Rectangle, X, Y, W, H)
\begin{DoxyCompactList}\small\item\em Macro to set the values of a \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{typedef struct \hyperlink{struct__Eina__Rectangle}{\-\_\-\-Eina\-\_\-\-Rectangle} \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle}}\label{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}

\begin{DoxyCompactList}\small\item\em Simple rectangle structure. \end{DoxyCompactList}\item 
\hypertarget{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}{typedef struct \-\_\-\-Eina\-\_\-\-Rectangle\-\_\-\-Pool \hyperlink{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}{Eina\-\_\-\-Rectangle\-\_\-\-Pool}}\label{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}

\begin{DoxyCompactList}\small\item\em Type for an opaque pool of rectangle. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
static int \hyperlink{group__Eina__Rectangle__Group_ga5ff97140fd94411786c96052800a9d7f}{eina\-\_\-spans\-\_\-intersect} (int c1, int l1, int c2, int l2)
\begin{DoxyCompactList}\small\item\em Check if the given spans intersect. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Rectangle__Group_gaa67787388b344ac41ca5913239fe9801}{eina\-\_\-rectangle\-\_\-is\-\_\-empty} (const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$r)
\begin{DoxyCompactList}\small\item\em Check if the given rectangle is empty. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Rectangle__Group_ga0d0d420cd2c042910c20be6df5b24e86}{eina\-\_\-rectangle\-\_\-coords\-\_\-from} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$r, int x, int y, int w, int h)
\begin{DoxyCompactList}\small\item\em Set the coordinates and size of the given rectangle. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Rectangle__Group_gabd87a3a2ea93634fa95d45342990d8e1}{eina\-\_\-rectangles\-\_\-intersect} (const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$r1, const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$r2)
\begin{DoxyCompactList}\small\item\em Check if the given rectangles intersect. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Rectangle__Group_ga14f14fe9becb5f4ea29256d298fc8f48}{eina\-\_\-rectangle\-\_\-xcoord\-\_\-inside} (const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$r, int x)
\begin{DoxyCompactList}\small\item\em Check if the given x-\/coordinate is in the rectangle . \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Rectangle__Group_ga8036bf5c850fca4ffb16c6a16e818874}{eina\-\_\-rectangle\-\_\-ycoord\-\_\-inside} (const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$r, int y)
\begin{DoxyCompactList}\small\item\em Check if the given y-\/coordinate is in the rectangle . \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Rectangle__Group_ga556ecddcc4d87e6d019e8940a299ffc1}{eina\-\_\-rectangle\-\_\-coords\-\_\-inside} (const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$r, int x, int y)
\begin{DoxyCompactList}\small\item\em Check if the given point is in the rectangle . \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Rectangle__Group_ga1a42c32d36c2350f3786923de67b07a8}{eina\-\_\-rectangle\-\_\-union} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$dst, const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$src)
\begin{DoxyCompactList}\small\item\em Get the union of two rectangles. \end{DoxyCompactList}\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Rectangle__Group_ga563ffb826d1e5002d01a72a3b5187bb8}{eina\-\_\-rectangle\-\_\-intersection} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$dst, const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$src)
\begin{DoxyCompactList}\small\item\em Get the intersection of two rectangles. \end{DoxyCompactList}\item 
\hypertarget{group__Eina__Rectangle__Group_ga107111b395a246367f75e94184651fed}{static void {\bfseries eina\-\_\-rectangle\-\_\-rescale\-\_\-in} (const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$out, const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$in, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$res)}\label{group__Eina__Rectangle__Group_ga107111b395a246367f75e94184651fed}

\item 
\hypertarget{group__Eina__Rectangle__Group_ga8bfbad1750fff92db1aabeda68f513e7}{static void {\bfseries eina\-\_\-rectangle\-\_\-rescale\-\_\-out} (const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$out, const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$in, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$res)}\label{group__Eina__Rectangle__Group_ga8bfbad1750fff92db1aabeda68f513e7}

\item 
\hypertarget{group__Eina__Rectangle__Group_ga0508c22d9be2ff9ee003b5bf724cc8b3}{static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} {\bfseries eina\-\_\-rectangle\-\_\-is\-\_\-valid} (const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$r)}\label{group__Eina__Rectangle__Group_ga0508c22d9be2ff9ee003b5bf724cc8b3}

\item 
\hypertarget{group__Eina__Rectangle__Group_ga379a61ccee5efc2f251c79e6f1d394f3}{static int {\bfseries eina\-\_\-rectangle\-\_\-max\-\_\-x} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$thiz)}\label{group__Eina__Rectangle__Group_ga379a61ccee5efc2f251c79e6f1d394f3}

\item 
\hypertarget{group__Eina__Rectangle__Group_gaa3f3b8f4321e0ddcfdac8ce301dde0b6}{static int {\bfseries eina\-\_\-rectangle\-\_\-max\-\_\-y} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$thiz)}\label{group__Eina__Rectangle__Group_gaa3f3b8f4321e0ddcfdac8ce301dde0b6}

\item 
\hypertarget{group__Eina__Rectangle__Group_ga7badf82aadbe126f1a96c29ea65d026d}{static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} {\bfseries eina\-\_\-rectangle\-\_\-x\-\_\-cut} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$thiz, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$slice, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$leftover, int amount)}\label{group__Eina__Rectangle__Group_ga7badf82aadbe126f1a96c29ea65d026d}

\item 
\hypertarget{group__Eina__Rectangle__Group_ga3875a453ea5c86eb3f734f5eaa155cd6}{static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} {\bfseries eina\-\_\-rectangle\-\_\-y\-\_\-cut} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$thiz, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$slice, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$leftover, int amount)}\label{group__Eina__Rectangle__Group_ga3875a453ea5c86eb3f734f5eaa155cd6}

\item 
\hypertarget{group__Eina__Rectangle__Group_ga069d05f0f6135b7b19a4c4e045f8596a}{static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} {\bfseries eina\-\_\-rectangle\-\_\-width\-\_\-cut} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$thiz, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$slice, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$leftover, int amount)}\label{group__Eina__Rectangle__Group_ga069d05f0f6135b7b19a4c4e045f8596a}

\item 
\hypertarget{group__Eina__Rectangle__Group_ga39eb564a84b23f9ceb5449e04a506c84}{static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} {\bfseries eina\-\_\-rectangle\-\_\-height\-\_\-cut} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$thiz, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$slice, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$leftover, int amount)}\label{group__Eina__Rectangle__Group_ga39eb564a84b23f9ceb5449e04a506c84}

\item 
static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Rectangle__Group_ga0827c8a72f861591de261396a64b21fb}{eina\-\_\-rectangle\-\_\-subtract} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$thiz, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$other, \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} out\mbox{[}4\mbox{]})
\begin{DoxyCompactList}\small\item\em Subtract two rectangles. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}{Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$ \hyperlink{group__Eina__Rectangle__Group_gaa41916af6d8a14b8f6035bd72702d1d9}{eina\-\_\-rectangle\-\_\-pool\-\_\-new} (int w, int h) \hyperlink{group__Eina__Types__Group_gaabeaa41dd47f4b4d3991b10ba00bc59c}{E\-I\-N\-A\-\_\-\-M\-A\-L\-L\-O\-C} \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}
\begin{DoxyCompactList}\small\item\em Add a rectangle in a new pool. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}{Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$ \hyperlink{group__Eina__Rectangle__Group_ga3a46e1548409456cb4af311e54db31e8}{eina\-\_\-rectangle\-\_\-pool\-\_\-get} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$rect) \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T} \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Return the pool of the given rectangle. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} \hyperlink{group__Eina__Rectangle__Group_gac44127a5c03b3f0e13d753f380b5dfb3}{eina\-\_\-rectangle\-\_\-pool\-\_\-geometry\-\_\-get} (\hyperlink{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}{Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$pool, int $\ast$w, int $\ast$h) \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T} \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1) \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}
\begin{DoxyCompactList}\small\item\em Return the width and height of the given pool. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void $\ast$ \hyperlink{group__Eina__Rectangle__Group_gadbae5f0ad1f7be71d0d95e7b67331d2b}{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-get} (\hyperlink{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}{Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$pool) \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T} \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Get the data from the given pool. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Eina__Rectangle__Group_ga0e9e1304e9d8ecf488f8810313318380}{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-set} (\hyperlink{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}{Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$pool, const void $\ast$data) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Set the data to the given pool. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Eina__Rectangle__Group_ga390d4acd0cdd6dd0ff05a2d0be01bee9}{eina\-\_\-rectangle\-\_\-pool\-\_\-free} (\hyperlink{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}{Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$pool) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Free the given pool. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} int \hyperlink{group__Eina__Rectangle__Group_ga010d0b19c8747765a512676e3140deee}{eina\-\_\-rectangle\-\_\-pool\-\_\-count} (\hyperlink{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}{Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$pool) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1) \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}
\begin{DoxyCompactList}\small\item\em Return the number of rectangles in the given pool. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$ \hyperlink{group__Eina__Rectangle__Group_gac8261ac109cd530514dd4e9c8b8dcbca}{eina\-\_\-rectangle\-\_\-pool\-\_\-request} (\hyperlink{group__Eina__Rectangle__Group_ga2b3b9a89a129503c7378827498353955}{Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$pool, int w, int h) \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T} \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Request a rectangle of given size in the given pool. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Eina__Rectangle__Group_ga98f5a390a95123ba90e95677d7ea754b}{eina\-\_\-rectangle\-\_\-pool\-\_\-release} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$rect) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Remove the given rectangle from the pool. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$ \hyperlink{group__Eina__Rectangle__Group_ga82f5db08ef3c816896c67d44462aa572}{eina\-\_\-rectangle\-\_\-new} (int x, int y, int w, int h) \hyperlink{group__Eina__Types__Group_gaabeaa41dd47f4b4d3991b10ba00bc59c}{E\-I\-N\-A\-\_\-\-M\-A\-L\-L\-O\-C} \hyperlink{group__Eina__Types__Group_ga4ba89e4b58eff707a6cf05ffe0cd4dea}{E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}
\begin{DoxyCompactList}\small\item\em Create a new rectangle. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\-A\-P\-I} void \hyperlink{group__Eina__Rectangle__Group_ga01edb0fdde2b9534febb3124126c4b1e}{eina\-\_\-rectangle\-\_\-free} (\hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle} $\ast$rect) \hyperlink{group__Eina__Types__Group_ga1a066aa3069f7e43279021cc1e378fac}{E\-I\-N\-A\-\_\-\-A\-R\-G\-\_\-\-N\-O\-N\-N\-U\-L\-L}(1)
\begin{DoxyCompactList}\small\item\em Free the given rectangle. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Eina__Rectangle__Group_gabb6d997e6f2f5ad75762b9d1f9efe617}{static \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\-\_\-\-Bool} {\bfseries E\-I\-N\-A\-\_\-\-W\-A\-R\-N\-\_\-\-U\-N\-U\-S\-E\-D\-\_\-\-R\-E\-S\-U\-L\-T}}\label{group__Eina__Rectangle__Group_gabb6d997e6f2f5ad75762b9d1f9efe617}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
These functions provide rectangle management. 

\subsection{Macro Definition Documentation}
\hypertarget{group__Eina__Rectangle__Group_gaaceb5b08727a052cc814a92569fcf8da}{\index{Rectangle@{Rectangle}!E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-S\-E\-T@{E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-S\-E\-T}}
\index{E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-S\-E\-T@{E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-S\-E\-T}!Rectangle@{Rectangle}}
\subsubsection[{E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-S\-E\-T}]{\setlength{\rightskip}{0pt plus 5cm}\#define E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-S\-E\-T(
\begin{DoxyParamCaption}
\item[{}]{Rectangle, }
\item[{}]{X, }
\item[{}]{Y, }
\item[{}]{W, }
\item[{}]{H}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_gaaceb5b08727a052cc814a92569fcf8da}
{\bfseries Value\-:}
\begin{DoxyCode}
\{                                                 \(\backslash\)
      (Rectangle)->x = X;                         \(\backslash\)
      (Rectangle)->y = Y;                         \(\backslash\)
      (Rectangle)->w = W;                         \(\backslash\)
      (Rectangle)->h = H;                         \(\backslash\)
    \}
\end{DoxyCode}


Macro to set the values of a \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\-\_\-\-Rectangle}. 


\begin{DoxyParams}{Parameters}
{\em Rectangle} & The rectangle to set the values. \\
\hline
{\em X} & The X coordinate of the top left corner of the rectangle. \\
\hline
{\em Y} & The Y coordinate of the top left corner of the rectangle. \\
\hline
{\em W} & The width of the rectangle. \\
\hline
{\em H} & The height of the rectangle.\\
\hline
\end{DoxyParams}
This macro set the values of {\ttfamily Rectangle}. ({\ttfamily X}, {\ttfamily Y}) is the coordinates of the top left corner of {\ttfamily Rectangle}, {\ttfamily W} is its width and {\ttfamily H} is its height. 

Referenced by eina\-\_\-rectangle\-\_\-new().



\subsection{Function Documentation}
\hypertarget{group__Eina__Rectangle__Group_ga5ff97140fd94411786c96052800a9d7f}{\index{Rectangle@{Rectangle}!eina\-\_\-spans\-\_\-intersect@{eina\-\_\-spans\-\_\-intersect}}
\index{eina\-\_\-spans\-\_\-intersect@{eina\-\_\-spans\-\_\-intersect}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-spans\-\_\-intersect}]{\setlength{\rightskip}{0pt plus 5cm}static int eina\-\_\-spans\-\_\-intersect (
\begin{DoxyParamCaption}
\item[{int}]{c1, }
\item[{int}]{l1, }
\item[{int}]{c2, }
\item[{int}]{l2}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Rectangle__Group_ga5ff97140fd94411786c96052800a9d7f}


Check if the given spans intersect. 


\begin{DoxyParams}{Parameters}
{\em c1} & The column of the first span. \\
\hline
{\em l1} & The length of the first span. \\
\hline
{\em c2} & The column of the second span. \\
\hline
{\em l2} & The length of the second span. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise.
\end{DoxyReturn}
This function returns \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} if the given spans intersect, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise. 

Referenced by eina\-\_\-rectangles\-\_\-intersect().

\hypertarget{group__Eina__Rectangle__Group_gaa67787388b344ac41ca5913239fe9801}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-is\-\_\-empty@{eina\-\_\-rectangle\-\_\-is\-\_\-empty}}
\index{eina\-\_\-rectangle\-\_\-is\-\_\-empty@{eina\-\_\-rectangle\-\_\-is\-\_\-empty}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-is\-\_\-empty}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-rectangle\-\_\-is\-\_\-empty (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Rectangle} $\ast$}]{r}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Rectangle__Group_gaa67787388b344ac41ca5913239fe9801}


Check if the given rectangle is empty. 


\begin{DoxyParams}{Parameters}
{\em r} & The rectangle to check. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} if the rectangle is empty, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise.
\end{DoxyReturn}
This function returns \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} if {\ttfamily r} is empty, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise. No check is done on {\ttfamily r}, so it must be a valid rectangle. 

References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, E\-I\-N\-A\-\_\-\-T\-R\-U\-E, \-\_\-\-Eina\-\_\-\-Rectangle\-::h, and \-\_\-\-Eina\-\_\-\-Rectangle\-::w.

\hypertarget{group__Eina__Rectangle__Group_ga0d0d420cd2c042910c20be6df5b24e86}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-coords\-\_\-from@{eina\-\_\-rectangle\-\_\-coords\-\_\-from}}
\index{eina\-\_\-rectangle\-\_\-coords\-\_\-from@{eina\-\_\-rectangle\-\_\-coords\-\_\-from}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-coords\-\_\-from}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\-\_\-rectangle\-\_\-coords\-\_\-from (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle} $\ast$}]{r, }
\item[{int}]{x, }
\item[{int}]{y, }
\item[{int}]{w, }
\item[{int}]{h}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Rectangle__Group_ga0d0d420cd2c042910c20be6df5b24e86}


Set the coordinates and size of the given rectangle. 


\begin{DoxyParams}{Parameters}
{\em r} & The rectangle. \\
\hline
{\em x} & The top-\/left x coordinate of the rectangle. \\
\hline
{\em y} & The top-\/left y coordinate of the rectangle. \\
\hline
{\em w} & The width of the rectangle. \\
\hline
{\em h} & The height of the rectangle.\\
\hline
\end{DoxyParams}
This function sets its top-\/left x coordinate to {\ttfamily x}, its top-\/left y coordinate to {\ttfamily y}, its width to {\ttfamily w} and its height to {\ttfamily h}. No check is done on {\ttfamily r}, so it must be a valid rectangle. 

References \-\_\-\-Eina\-\_\-\-Rectangle\-::h, \-\_\-\-Eina\-\_\-\-Rectangle\-::w, \-\_\-\-Eina\-\_\-\-Rectangle\-::x, and \-\_\-\-Eina\-\_\-\-Rectangle\-::y.



Referenced by eina\-\_\-rectangle\-\_\-pool\-\_\-request(), and eina\-\_\-rectangle\-\_\-subtract().

\hypertarget{group__Eina__Rectangle__Group_gabd87a3a2ea93634fa95d45342990d8e1}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangles\-\_\-intersect@{eina\-\_\-rectangles\-\_\-intersect}}
\index{eina\-\_\-rectangles\-\_\-intersect@{eina\-\_\-rectangles\-\_\-intersect}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangles\-\_\-intersect}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-rectangles\-\_\-intersect (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Rectangle} $\ast$}]{r1, }
\item[{const {\bf Eina\-\_\-\-Rectangle} $\ast$}]{r2}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Rectangle__Group_gabd87a3a2ea93634fa95d45342990d8e1}


Check if the given rectangles intersect. 


\begin{DoxyParams}{Parameters}
{\em r1} & The first rectangle. \\
\hline
{\em r2} & The second rectangle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} if the rectangles intersect, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise.
\end{DoxyReturn}
This function returns \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} if {\ttfamily r1} and {\ttfamily r2} intersect, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise. No check is done on {\ttfamily r1} and {\ttfamily r2}, so they must be valid rectangles. 

References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, eina\-\_\-spans\-\_\-intersect(), E\-I\-N\-A\-\_\-\-T\-R\-U\-E, \-\_\-\-Eina\-\_\-\-Rectangle\-::h, \-\_\-\-Eina\-\_\-\-Rectangle\-::w, \-\_\-\-Eina\-\_\-\-Rectangle\-::x, and \-\_\-\-Eina\-\_\-\-Rectangle\-::y.



Referenced by eina\-\_\-rectangle\-\_\-intersection().

\hypertarget{group__Eina__Rectangle__Group_ga14f14fe9becb5f4ea29256d298fc8f48}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-xcoord\-\_\-inside@{eina\-\_\-rectangle\-\_\-xcoord\-\_\-inside}}
\index{eina\-\_\-rectangle\-\_\-xcoord\-\_\-inside@{eina\-\_\-rectangle\-\_\-xcoord\-\_\-inside}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-xcoord\-\_\-inside}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-rectangle\-\_\-xcoord\-\_\-inside (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Rectangle} $\ast$}]{r, }
\item[{int}]{x}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Rectangle__Group_ga14f14fe9becb5f4ea29256d298fc8f48}


Check if the given x-\/coordinate is in the rectangle . 


\begin{DoxyParams}{Parameters}
{\em r} & The rectangle. \\
\hline
{\em x} & The x coordinate. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise.
\end{DoxyReturn}
This function returns \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} if {\ttfamily x} is in {\ttfamily r} with respect to the horizontal direction, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise. No check is done on {\ttfamily r}, so it must be a valid rectangle. 

References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, E\-I\-N\-A\-\_\-\-T\-R\-U\-E, \-\_\-\-Eina\-\_\-\-Rectangle\-::w, and \-\_\-\-Eina\-\_\-\-Rectangle\-::x.



Referenced by eina\-\_\-rectangle\-\_\-coords\-\_\-inside().

\hypertarget{group__Eina__Rectangle__Group_ga8036bf5c850fca4ffb16c6a16e818874}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-ycoord\-\_\-inside@{eina\-\_\-rectangle\-\_\-ycoord\-\_\-inside}}
\index{eina\-\_\-rectangle\-\_\-ycoord\-\_\-inside@{eina\-\_\-rectangle\-\_\-ycoord\-\_\-inside}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-ycoord\-\_\-inside}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-rectangle\-\_\-ycoord\-\_\-inside (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Rectangle} $\ast$}]{r, }
\item[{int}]{y}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Rectangle__Group_ga8036bf5c850fca4ffb16c6a16e818874}


Check if the given y-\/coordinate is in the rectangle . 


\begin{DoxyParams}{Parameters}
{\em r} & The rectangle. \\
\hline
{\em y} & The y coordinate. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise.
\end{DoxyReturn}
This function returns \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} if {\ttfamily y} is in {\ttfamily r} with respect to the vertical direction, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise. No check is done on {\ttfamily r}, so it must be a valid rectangle. 

References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, E\-I\-N\-A\-\_\-\-T\-R\-U\-E, \-\_\-\-Eina\-\_\-\-Rectangle\-::h, and \-\_\-\-Eina\-\_\-\-Rectangle\-::y.



Referenced by eina\-\_\-rectangle\-\_\-coords\-\_\-inside().

\hypertarget{group__Eina__Rectangle__Group_ga556ecddcc4d87e6d019e8940a299ffc1}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-coords\-\_\-inside@{eina\-\_\-rectangle\-\_\-coords\-\_\-inside}}
\index{eina\-\_\-rectangle\-\_\-coords\-\_\-inside@{eina\-\_\-rectangle\-\_\-coords\-\_\-inside}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-coords\-\_\-inside}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-rectangle\-\_\-coords\-\_\-inside (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\-\_\-\-Rectangle} $\ast$}]{r, }
\item[{int}]{x, }
\item[{int}]{y}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Rectangle__Group_ga556ecddcc4d87e6d019e8940a299ffc1}


Check if the given point is in the rectangle . 


\begin{DoxyParams}{Parameters}
{\em r} & The rectangle. \\
\hline
{\em x} & The x coordinate of the point. \\
\hline
{\em y} & The y coordinate of the point. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise.
\end{DoxyReturn}
This function returns \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} if the point of coordinate ({\ttfamily x}, {\ttfamily y}) is in {\ttfamily r}, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise. No check is done on {\ttfamily r}, so it must be a valid rectangle. 

References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, eina\-\_\-rectangle\-\_\-xcoord\-\_\-inside(), eina\-\_\-rectangle\-\_\-ycoord\-\_\-inside(), and E\-I\-N\-A\-\_\-\-T\-R\-U\-E.

\hypertarget{group__Eina__Rectangle__Group_ga1a42c32d36c2350f3786923de67b07a8}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-union@{eina\-\_\-rectangle\-\_\-union}}
\index{eina\-\_\-rectangle\-\_\-union@{eina\-\_\-rectangle\-\_\-union}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-union}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\-\_\-rectangle\-\_\-union (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle} $\ast$}]{dst, }
\item[{const {\bf Eina\-\_\-\-Rectangle} $\ast$}]{src}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Rectangle__Group_ga1a42c32d36c2350f3786923de67b07a8}


Get the union of two rectangles. 


\begin{DoxyParams}{Parameters}
{\em dst} & The first rectangle. \\
\hline
{\em src} & The second rectangle.\\
\hline
\end{DoxyParams}
This function get the union of the rectangles {\ttfamily dst} and {\ttfamily src}. The result is stored in {\ttfamily dst}. No check is done on {\ttfamily dst} or {\ttfamily src}, so they must be valid rectangles. 

References \-\_\-\-Eina\-\_\-\-Rectangle\-::h, \-\_\-\-Eina\-\_\-\-Rectangle\-::w, \-\_\-\-Eina\-\_\-\-Rectangle\-::x, and \-\_\-\-Eina\-\_\-\-Rectangle\-::y.

\hypertarget{group__Eina__Rectangle__Group_ga563ffb826d1e5002d01a72a3b5187bb8}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-intersection@{eina\-\_\-rectangle\-\_\-intersection}}
\index{eina\-\_\-rectangle\-\_\-intersection@{eina\-\_\-rectangle\-\_\-intersection}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-intersection}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-rectangle\-\_\-intersection (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle} $\ast$}]{dst, }
\item[{const {\bf Eina\-\_\-\-Rectangle} $\ast$}]{src}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Rectangle__Group_ga563ffb826d1e5002d01a72a3b5187bb8}


Get the intersection of two rectangles. 


\begin{DoxyParams}{Parameters}
{\em dst} & The first rectangle. \\
\hline
{\em src} & The second rectangle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} if the rectangles intersect, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise.
\end{DoxyReturn}
This function get the intersection of the rectangles {\ttfamily dst} and {\ttfamily src}. The result is stored in {\ttfamily dst}. No check is done on {\ttfamily dst} or {\ttfamily src}, so they must be valid rectangles. 

References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, eina\-\_\-rectangles\-\_\-intersect(), E\-I\-N\-A\-\_\-\-T\-R\-U\-E, \-\_\-\-Eina\-\_\-\-Rectangle\-::h, \-\_\-\-Eina\-\_\-\-Rectangle\-::w, \-\_\-\-Eina\-\_\-\-Rectangle\-::x, and \-\_\-\-Eina\-\_\-\-Rectangle\-::y.



Referenced by eina\-\_\-rectangle\-\_\-subtract(), eina\-\_\-tiler\-\_\-rect\-\_\-add(), and eina\-\_\-tiler\-\_\-rect\-\_\-del().

\hypertarget{group__Eina__Rectangle__Group_ga0827c8a72f861591de261396a64b21fb}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-subtract@{eina\-\_\-rectangle\-\_\-subtract}}
\index{eina\-\_\-rectangle\-\_\-subtract@{eina\-\_\-rectangle\-\_\-subtract}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-subtract}]{\setlength{\rightskip}{0pt plus 5cm}static {\bf Eina\-\_\-\-Bool} eina\-\_\-rectangle\-\_\-subtract (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle} $\ast$}]{thiz, }
\item[{{\bf Eina\-\_\-\-Rectangle} $\ast$}]{other, }
\item[{{\bf Eina\-\_\-\-Rectangle}}]{out\mbox{[}4\mbox{]}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}}\label{group__Eina__Rectangle__Group_ga0827c8a72f861591de261396a64b21fb}


Subtract two rectangles. 


\begin{DoxyParams}{Parameters}
{\em thiz} & The minuend rectangle \\
\hline
{\em other} & The subtrahend rectangle\\
\hline
\end{DoxyParams}
This function subtract two rectangles. The difference is stored on {\ttfamily out} There will be at most four differences, use eina\-\_\-rectangle\-\_\-is\-\_\-valid to confirm the number of differences. 

References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, eina\-\_\-rectangle\-\_\-coords\-\_\-from(), eina\-\_\-rectangle\-\_\-intersection(), E\-I\-N\-A\-\_\-\-T\-R\-U\-E, \-\_\-\-Eina\-\_\-\-Rectangle\-::h, \-\_\-\-Eina\-\_\-\-Rectangle\-::w, \-\_\-\-Eina\-\_\-\-Rectangle\-::x, and \-\_\-\-Eina\-\_\-\-Rectangle\-::y.

\hypertarget{group__Eina__Rectangle__Group_gaa41916af6d8a14b8f6035bd72702d1d9}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-pool\-\_\-new@{eina\-\_\-rectangle\-\_\-pool\-\_\-new}}
\index{eina\-\_\-rectangle\-\_\-pool\-\_\-new@{eina\-\_\-rectangle\-\_\-pool\-\_\-new}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-pool\-\_\-new}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Rectangle\-\_\-\-Pool}$\ast$ eina\-\_\-rectangle\-\_\-pool\-\_\-new (
\begin{DoxyParamCaption}
\item[{int}]{w, }
\item[{int}]{h}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_gaa41916af6d8a14b8f6035bd72702d1d9}


Add a rectangle in a new pool. 


\begin{DoxyParams}{Parameters}
{\em w} & The width of the rectangle. \\
\hline
{\em h} & The height of the rectangle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A newly allocated pool on success, {\ttfamily N\-U\-L\-L} otherwise.
\end{DoxyReturn}
This function adds the rectangle of size ({\ttfamily width}, {\ttfamily height}) to a new pool. If the pool can not be created, {\ttfamily N\-U\-L\-L} is returned. Otherwise the newly allocated pool is returned. 

References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, eina\-\_\-list\-\_\-append(), E\-I\-N\-A\-\_\-\-M\-A\-G\-I\-C\-\_\-\-S\-E\-T, and eina\-\_\-rectangle\-\_\-new().

\hypertarget{group__Eina__Rectangle__Group_ga3a46e1548409456cb4af311e54db31e8}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-pool\-\_\-get@{eina\-\_\-rectangle\-\_\-pool\-\_\-get}}
\index{eina\-\_\-rectangle\-\_\-pool\-\_\-get@{eina\-\_\-rectangle\-\_\-pool\-\_\-get}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-pool\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Rectangle\-\_\-\-Pool}$\ast$ eina\-\_\-rectangle\-\_\-pool\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle} $\ast$}]{rect}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_ga3a46e1548409456cb4af311e54db31e8}


Return the pool of the given rectangle. 


\begin{DoxyParams}{Parameters}
{\em rect} & The rectangle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The pool of the given rectangle.
\end{DoxyReturn}
This function returns the pool in which {\ttfamily rect} is. If {\ttfamily rect} is {\ttfamily N\-U\-L\-L}, {\ttfamily N\-U\-L\-L} is returned. \hypertarget{group__Eina__Rectangle__Group_gac44127a5c03b3f0e13d753f380b5dfb3}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-pool\-\_\-geometry\-\_\-get@{eina\-\_\-rectangle\-\_\-pool\-\_\-geometry\-\_\-get}}
\index{eina\-\_\-rectangle\-\_\-pool\-\_\-geometry\-\_\-get@{eina\-\_\-rectangle\-\_\-pool\-\_\-geometry\-\_\-get}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-pool\-\_\-geometry\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Bool} eina\-\_\-rectangle\-\_\-pool\-\_\-geometry\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$}]{pool, }
\item[{int $\ast$}]{w, }
\item[{int $\ast$}]{h}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_gac44127a5c03b3f0e13d753f380b5dfb3}


Return the width and height of the given pool. 


\begin{DoxyParams}{Parameters}
{\em pool} & The pool. \\
\hline
{\em w} & The returned width. \\
\hline
{\em h} & The returned height. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} on success, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} otherwise.
\end{DoxyReturn}
This function returns the width and height of {\ttfamily pool} and store them in respectively {\ttfamily w} and {\ttfamily h} if they are not {\ttfamily N\-U\-L\-L}. If {\ttfamily pool} is {\ttfamily N\-U\-L\-L}, \hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E} is returned. Otherwise \hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{E\-I\-N\-A\-\_\-\-T\-R\-U\-E} is returned. 

References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, and E\-I\-N\-A\-\_\-\-T\-R\-U\-E.

\hypertarget{group__Eina__Rectangle__Group_gadbae5f0ad1f7be71d0d95e7b67331d2b}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-get@{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-get}}
\index{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-get@{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-get}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void$\ast$ eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$}]{pool}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_gadbae5f0ad1f7be71d0d95e7b67331d2b}


Get the data from the given pool. 


\begin{DoxyParams}{Parameters}
{\em pool} & The pool. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The returned data.
\end{DoxyReturn}
This function gets the data from {\ttfamily pool} set by \hyperlink{group__Eina__Rectangle__Group_ga0e9e1304e9d8ecf488f8810313318380}{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-set()}. If {\ttfamily pool} is {\ttfamily N\-U\-L\-L}, this function returns {\ttfamily N\-U\-L\-L}. \hypertarget{group__Eina__Rectangle__Group_ga0e9e1304e9d8ecf488f8810313318380}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-set@{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-set}}
\index{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-set@{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-set}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-set}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void eina\-\_\-rectangle\-\_\-pool\-\_\-data\-\_\-set (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$}]{pool, }
\item[{const void $\ast$}]{data}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_ga0e9e1304e9d8ecf488f8810313318380}


Set the data to the given pool. 


\begin{DoxyParams}{Parameters}
{\em pool} & The pool. \\
\hline
{\em data} & The data to set.\\
\hline
\end{DoxyParams}
This function sets {\ttfamily data} to {\ttfamily pool}. If {\ttfamily pool} is {\ttfamily N\-U\-L\-L}, this function does nothing. \hypertarget{group__Eina__Rectangle__Group_ga390d4acd0cdd6dd0ff05a2d0be01bee9}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-pool\-\_\-free@{eina\-\_\-rectangle\-\_\-pool\-\_\-free}}
\index{eina\-\_\-rectangle\-\_\-pool\-\_\-free@{eina\-\_\-rectangle\-\_\-pool\-\_\-free}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-pool\-\_\-free}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void eina\-\_\-rectangle\-\_\-pool\-\_\-free (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$}]{pool}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_ga390d4acd0cdd6dd0ff05a2d0be01bee9}


Free the given pool. 


\begin{DoxyParams}{Parameters}
{\em pool} & The pool to free.\\
\hline
\end{DoxyParams}
This function frees the allocated data of {\ttfamily pool}. If {\ttfamily pool} is {\ttfamily N\-U\-L\-L}, this function returned immediately. 

References E\-I\-N\-A\-\_\-\-I\-N\-L\-I\-S\-T\-\_\-\-G\-E\-T, E\-I\-N\-A\-\_\-\-M\-A\-G\-I\-C\-\_\-\-N\-O\-N\-E, E\-I\-N\-A\-\_\-\-M\-A\-G\-I\-C\-\_\-\-S\-E\-T, and eina\-\_\-mempool\-\_\-free().

\hypertarget{group__Eina__Rectangle__Group_ga010d0b19c8747765a512676e3140deee}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-pool\-\_\-count@{eina\-\_\-rectangle\-\_\-pool\-\_\-count}}
\index{eina\-\_\-rectangle\-\_\-pool\-\_\-count@{eina\-\_\-rectangle\-\_\-pool\-\_\-count}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-pool\-\_\-count}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} int eina\-\_\-rectangle\-\_\-pool\-\_\-count (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$}]{pool}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_ga010d0b19c8747765a512676e3140deee}


Return the number of rectangles in the given pool. 


\begin{DoxyParams}{Parameters}
{\em pool} & The pool. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of rectangles in the pool.
\end{DoxyReturn}
This function returns the number of rectangles in {\ttfamily pool}. \hypertarget{group__Eina__Rectangle__Group_gac8261ac109cd530514dd4e9c8b8dcbca}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-pool\-\_\-request@{eina\-\_\-rectangle\-\_\-pool\-\_\-request}}
\index{eina\-\_\-rectangle\-\_\-pool\-\_\-request@{eina\-\_\-rectangle\-\_\-pool\-\_\-request}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-pool\-\_\-request}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Rectangle}$\ast$ eina\-\_\-rectangle\-\_\-pool\-\_\-request (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle\-\_\-\-Pool} $\ast$}]{pool, }
\item[{int}]{w, }
\item[{int}]{h}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_gac8261ac109cd530514dd4e9c8b8dcbca}


Request a rectangle of given size in the given pool. 


\begin{DoxyParams}{Parameters}
{\em pool} & The pool. \\
\hline
{\em w} & The width of the rectangle to request. \\
\hline
{\em h} & The height of the rectangle to request. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The requested rectangle on success, {\ttfamily N\-U\-L\-L} otherwise.
\end{DoxyReturn}
This function retrieve from {\ttfamily pool} the rectangle of width {\ttfamily w} and height {\ttfamily h}. If {\ttfamily pool} is {\ttfamily N\-U\-L\-L}, or {\ttfamily w} or {\ttfamily h} are non-\/positive, the function returns {\ttfamily N\-U\-L\-L}. If {\ttfamily w} or {\ttfamily h} are greater than the pool size, the function returns {\ttfamily N\-U\-L\-L}. On success, the function returns the rectangle which matches the size ({\ttfamily w}, {\ttfamily h}). Otherwise it returns {\ttfamily N\-U\-L\-L}. 

References E\-I\-N\-A\-\_\-\-C\-O\-M\-P\-A\-R\-E\-\_\-\-C\-B, E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, E\-I\-N\-A\-\_\-\-I\-N\-L\-I\-S\-T\-\_\-\-G\-E\-T, eina\-\_\-inlist\-\_\-prepend(), eina\-\_\-list\-\_\-sort(), E\-I\-N\-A\-\_\-\-M\-A\-G\-I\-C\-\_\-\-S\-E\-T, eina\-\_\-mempool\-\_\-malloc(), eina\-\_\-rectangle\-\_\-coords\-\_\-from(), E\-I\-N\-A\-\_\-\-T\-R\-U\-E, and \-\_\-\-Eina\-\_\-\-Rectangle\-::w.

\hypertarget{group__Eina__Rectangle__Group_ga98f5a390a95123ba90e95677d7ea754b}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-pool\-\_\-release@{eina\-\_\-rectangle\-\_\-pool\-\_\-release}}
\index{eina\-\_\-rectangle\-\_\-pool\-\_\-release@{eina\-\_\-rectangle\-\_\-pool\-\_\-release}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-pool\-\_\-release}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void eina\-\_\-rectangle\-\_\-pool\-\_\-release (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle} $\ast$}]{rect}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_ga98f5a390a95123ba90e95677d7ea754b}


Remove the given rectangle from the pool. 


\begin{DoxyParams}{Parameters}
{\em rect} & The rectangle to remove from the pool.\\
\hline
\end{DoxyParams}
This function removes {\ttfamily rect} from the pool. If {\ttfamily rect} is {\ttfamily N\-U\-L\-L}, the function returns immediately. Otherwise it removes {\ttfamily rect} from the pool. 

References E\-I\-N\-A\-\_\-\-F\-A\-L\-S\-E, E\-I\-N\-A\-\_\-\-I\-N\-L\-I\-S\-T\-\_\-\-G\-E\-T, eina\-\_\-inlist\-\_\-remove(), E\-I\-N\-A\-\_\-\-M\-A\-G\-I\-C\-\_\-\-N\-O\-N\-E, E\-I\-N\-A\-\_\-\-M\-A\-G\-I\-C\-\_\-\-S\-E\-T, eina\-\_\-mempool\-\_\-free(), eina\-\_\-rectangle\-\_\-new(), \-\_\-\-Eina\-\_\-\-Rectangle\-::h, \-\_\-\-Eina\-\_\-\-Rectangle\-::w, \-\_\-\-Eina\-\_\-\-Rectangle\-::x, and \-\_\-\-Eina\-\_\-\-Rectangle\-::y.

\hypertarget{group__Eina__Rectangle__Group_ga82f5db08ef3c816896c67d44462aa572}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-new@{eina\-\_\-rectangle\-\_\-new}}
\index{eina\-\_\-rectangle\-\_\-new@{eina\-\_\-rectangle\-\_\-new}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-new}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} {\bf Eina\-\_\-\-Rectangle}$\ast$ eina\-\_\-rectangle\-\_\-new (
\begin{DoxyParamCaption}
\item[{int}]{x, }
\item[{int}]{y, }
\item[{int}]{w, }
\item[{int}]{h}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_ga82f5db08ef3c816896c67d44462aa572}


Create a new rectangle. 


\begin{DoxyParams}{Parameters}
{\em x} & The X coordinate of the top left corner of the rectangle. \\
\hline
{\em y} & The Y coordinate of the top left corner of the rectangle. \\
\hline
{\em w} & The width of the rectangle. \\
\hline
{\em h} & The height of the rectangle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The new rectangle on success, @ N\-U\-L\-L otherwise.
\end{DoxyReturn}
This function creates a rectangle which top left corner has the coordinates ({\ttfamily x}, {\ttfamily y}), with height {\ttfamily w} and height {\ttfamily h} and adds it to the rectangles pool. No check is done on {\ttfamily w} and {\ttfamily h}. This function returns a new rectangle on success, {\ttfamily N\-U\-L\-L} otherwhise. 

References eina\-\_\-mempool\-\_\-malloc(), and E\-I\-N\-A\-\_\-\-R\-E\-C\-T\-A\-N\-G\-L\-E\-\_\-\-S\-E\-T.



Referenced by eina\-\_\-rectangle\-\_\-pool\-\_\-new(), and eina\-\_\-rectangle\-\_\-pool\-\_\-release().

\hypertarget{group__Eina__Rectangle__Group_ga01edb0fdde2b9534febb3124126c4b1e}{\index{Rectangle@{Rectangle}!eina\-\_\-rectangle\-\_\-free@{eina\-\_\-rectangle\-\_\-free}}
\index{eina\-\_\-rectangle\-\_\-free@{eina\-\_\-rectangle\-\_\-free}!Rectangle@{Rectangle}}
\subsubsection[{eina\-\_\-rectangle\-\_\-free}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\-A\-P\-I} void eina\-\_\-rectangle\-\_\-free (
\begin{DoxyParamCaption}
\item[{{\bf Eina\-\_\-\-Rectangle} $\ast$}]{rect}
\end{DoxyParamCaption}
)}}\label{group__Eina__Rectangle__Group_ga01edb0fdde2b9534febb3124126c4b1e}


Free the given rectangle. 


\begin{DoxyParams}{Parameters}
{\em rect} & The rectangle to free.\\
\hline
\end{DoxyParams}
This function removes {\ttfamily rect} from the rectangles pool. 

References eina\-\_\-mempool\-\_\-free().



Referenced by evas\-\_\-render\-\_\-updates\-\_\-free().

