\hypertarget{group__Ecore__X__Damage__Group}{}\section{X Damage Extension Functions}
\label{group__Ecore__X__Damage__Group}\index{X Damage Extension Functions@{X Damage Extension Functions}}


Functions related to the X Damage Extension.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
Ecore\+\_\+\+X\+\_\+\+Damage \hyperlink{group__Ecore__X__Damage__Group_gac0889af8c038e71d53475d10a217ca98}{ecore\+\_\+x\+\_\+damage\+\_\+new} (Ecore\+\_\+\+X\+\_\+\+Drawable drawable, Ecore\+\_\+\+X\+\_\+\+Damage\+\_\+\+Report\+\_\+\+Level level)
\begin{DoxyCompactList}\small\item\em Create a damage object. \end{DoxyCompactList}\item 
void \hyperlink{group__Ecore__X__Damage__Group_ga6f3b9daaf3e377f892833649f0aeb218}{ecore\+\_\+x\+\_\+damage\+\_\+free} (Ecore\+\_\+\+X\+\_\+\+Damage damage)
\begin{DoxyCompactList}\small\item\em Destroy a damage object. \end{DoxyCompactList}\item 
void \hyperlink{group__Ecore__X__Damage__Group_ga16c09a6ea631a6d255365d1ad692dad3}{ecore\+\_\+x\+\_\+damage\+\_\+subtract} (Ecore\+\_\+\+X\+\_\+\+Damage damage, Ecore\+\_\+\+X\+\_\+\+Region repair, Ecore\+\_\+\+X\+\_\+\+Region parts)
\begin{DoxyCompactList}\small\item\em Synchronously modifies the region. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Functions related to the X Damage Extension. 



\subsection{Function Documentation}
\hypertarget{group__Ecore__X__Damage__Group_gac0889af8c038e71d53475d10a217ca98}{}\index{X Damage Extension Functions@{X Damage Extension Functions}!ecore\+\_\+x\+\_\+damage\+\_\+new@{ecore\+\_\+x\+\_\+damage\+\_\+new}}
\index{ecore\+\_\+x\+\_\+damage\+\_\+new@{ecore\+\_\+x\+\_\+damage\+\_\+new}!X Damage Extension Functions@{X Damage Extension Functions}}
\subsubsection[{ecore\+\_\+x\+\_\+damage\+\_\+new}]{\setlength{\rightskip}{0pt plus 5cm}Ecore\+\_\+\+X\+\_\+\+Damage ecore\+\_\+x\+\_\+damage\+\_\+new (
\begin{DoxyParamCaption}
\item[{Ecore\+\_\+\+X\+\_\+\+Drawable}]{drawable, }
\item[{Ecore\+\_\+\+X\+\_\+\+Damage\+\_\+\+Report\+\_\+\+Level}]{level}
\end{DoxyParamCaption}
)}\label{group__Ecore__X__Damage__Group_gac0889af8c038e71d53475d10a217ca98}


Create a damage object. 


\begin{DoxyParams}{Parameters}
{\em drawable} & The drawable to monitor \\
\hline
{\em level} & The level of the damage report \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The damage object
\end{DoxyReturn}
Creates a damage object to monitor changes to {\ttfamily drawable}, with the level {\ttfamily level}. \hypertarget{group__Ecore__X__Damage__Group_ga6f3b9daaf3e377f892833649f0aeb218}{}\index{X Damage Extension Functions@{X Damage Extension Functions}!ecore\+\_\+x\+\_\+damage\+\_\+free@{ecore\+\_\+x\+\_\+damage\+\_\+free}}
\index{ecore\+\_\+x\+\_\+damage\+\_\+free@{ecore\+\_\+x\+\_\+damage\+\_\+free}!X Damage Extension Functions@{X Damage Extension Functions}}
\subsubsection[{ecore\+\_\+x\+\_\+damage\+\_\+free}]{\setlength{\rightskip}{0pt plus 5cm}void ecore\+\_\+x\+\_\+damage\+\_\+free (
\begin{DoxyParamCaption}
\item[{Ecore\+\_\+\+X\+\_\+\+Damage}]{damage}
\end{DoxyParamCaption}
)}\label{group__Ecore__X__Damage__Group_ga6f3b9daaf3e377f892833649f0aeb218}


Destroy a damage object. 


\begin{DoxyParams}{Parameters}
{\em damage} & The damage object to destroy\\
\hline
\end{DoxyParams}
Destroys the damage object {\ttfamily damage} \hypertarget{group__Ecore__X__Damage__Group_ga16c09a6ea631a6d255365d1ad692dad3}{}\index{X Damage Extension Functions@{X Damage Extension Functions}!ecore\+\_\+x\+\_\+damage\+\_\+subtract@{ecore\+\_\+x\+\_\+damage\+\_\+subtract}}
\index{ecore\+\_\+x\+\_\+damage\+\_\+subtract@{ecore\+\_\+x\+\_\+damage\+\_\+subtract}!X Damage Extension Functions@{X Damage Extension Functions}}
\subsubsection[{ecore\+\_\+x\+\_\+damage\+\_\+subtract}]{\setlength{\rightskip}{0pt plus 5cm}void ecore\+\_\+x\+\_\+damage\+\_\+subtract (
\begin{DoxyParamCaption}
\item[{Ecore\+\_\+\+X\+\_\+\+Damage}]{damage, }
\item[{Ecore\+\_\+\+X\+\_\+\+Region}]{repair, }
\item[{Ecore\+\_\+\+X\+\_\+\+Region}]{parts}
\end{DoxyParamCaption}
)}\label{group__Ecore__X__Damage__Group_ga16c09a6ea631a6d255365d1ad692dad3}


Synchronously modifies the region. 


\begin{DoxyParams}{Parameters}
{\em damage} & The damage object to destroy \\
\hline
{\em repair} & The repair region \\
\hline
{\em parts} & The parts region\\
\hline
\end{DoxyParams}
Synchronously modifies the regions in the following manner\+: If {\ttfamily repair} is {\ttfamily X\+C\+B\+\_\+\+N\+O\+N\+E\+:} 1) parts = damage 2) damage = $<$empty$>$ Otherwise\+: 1) parts = damage I\+N\+T\+E\+R\+S\+E\+C\+T repair 2) damage = damage -\/ parts 3) Generate Damage\+Notify for remaining damage areas 