\hypertarget{group__Embryo__Program__Creation__Group}{}\section{Program Creation and Destruction Functions}
\label{group__Embryo__Program__Creation__Group}\index{Program Creation and Destruction Functions@{Program Creation and Destruction Functions}}


Functions that set up programs, and destroy them.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} Embryo\+\_\+\+Program $\ast$ \mbox{\hyperlink{group__Embryo__Program__Creation__Group_ga235db2ba7ebad3eeb0b92bf8f5e6666e}{embryo\+\_\+program\+\_\+new}} (void $\ast$data, int size)
\begin{DoxyCompactList}\small\item\em Creates a new Embryo program, with bytecode data that can be freed. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} Embryo\+\_\+\+Program $\ast$ \mbox{\hyperlink{group__Embryo__Program__Creation__Group_gae3e58565672af272e613d4fbda20c769}{embryo\+\_\+program\+\_\+const\+\_\+new}} (void $\ast$data, int size)
\begin{DoxyCompactList}\small\item\em Creates a new Embryo program, with bytecode data that cannot be freed. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} Embryo\+\_\+\+Program $\ast$ \mbox{\hyperlink{group__Embryo__Program__Creation__Group_gadbef6b87b7f54360b95dfce854b6c91a}{embryo\+\_\+program\+\_\+load}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Creates a new Embryo program based on the bytecode data stored in the given file. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void \mbox{\hyperlink{group__Embryo__Program__Creation__Group_ga2f25a71ef9f2254882c841fbd5e0e68a}{embryo\+\_\+program\+\_\+free}} (Embryo\+\_\+\+Program $\ast$ep)
\begin{DoxyCompactList}\small\item\em Frees the given Embryo program. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Functions that set up programs, and destroy them. 



\subsection{Function Documentation}
\mbox{\Hypertarget{group__Embryo__Program__Creation__Group_ga235db2ba7ebad3eeb0b92bf8f5e6666e}\label{group__Embryo__Program__Creation__Group_ga235db2ba7ebad3eeb0b92bf8f5e6666e}} 
\index{Program Creation and Destruction Functions@{Program Creation and Destruction Functions}!embryo\+\_\+program\+\_\+new@{embryo\+\_\+program\+\_\+new}}
\index{embryo\+\_\+program\+\_\+new@{embryo\+\_\+program\+\_\+new}!Program Creation and Destruction Functions@{Program Creation and Destruction Functions}}
\subsubsection{\texorpdfstring{embryo\+\_\+program\+\_\+new()}{embryo\_program\_new()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} Embryo\+\_\+\+Program$\ast$ embryo\+\_\+program\+\_\+new (\begin{DoxyParamCaption}\item[{void $\ast$}]{data,  }\item[{int}]{size }\end{DoxyParamCaption})}



Creates a new Embryo program, with bytecode data that can be freed. 


\begin{DoxyParams}{Parameters}
{\em data} & Pointer to the bytecode of the program. \\
\hline
{\em size} & Number of bytes of bytecode. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A new Embryo program. 
\end{DoxyReturn}


Referenced by embryo\+\_\+program\+\_\+load().

\mbox{\Hypertarget{group__Embryo__Program__Creation__Group_gae3e58565672af272e613d4fbda20c769}\label{group__Embryo__Program__Creation__Group_gae3e58565672af272e613d4fbda20c769}} 
\index{Program Creation and Destruction Functions@{Program Creation and Destruction Functions}!embryo\+\_\+program\+\_\+const\+\_\+new@{embryo\+\_\+program\+\_\+const\+\_\+new}}
\index{embryo\+\_\+program\+\_\+const\+\_\+new@{embryo\+\_\+program\+\_\+const\+\_\+new}!Program Creation and Destruction Functions@{Program Creation and Destruction Functions}}
\subsubsection{\texorpdfstring{embryo\+\_\+program\+\_\+const\+\_\+new()}{embryo\_program\_const\_new()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} Embryo\+\_\+\+Program$\ast$ embryo\+\_\+program\+\_\+const\+\_\+new (\begin{DoxyParamCaption}\item[{void $\ast$}]{data,  }\item[{int}]{size }\end{DoxyParamCaption})}



Creates a new Embryo program, with bytecode data that cannot be freed. 


\begin{DoxyParams}{Parameters}
{\em data} & Pointer to the bytecode of the program. \\
\hline
{\em size} & Number of bytes of bytecode. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A new Embryo program. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Embryo__Program__Creation__Group_gadbef6b87b7f54360b95dfce854b6c91a}\label{group__Embryo__Program__Creation__Group_gadbef6b87b7f54360b95dfce854b6c91a}} 
\index{Program Creation and Destruction Functions@{Program Creation and Destruction Functions}!embryo\+\_\+program\+\_\+load@{embryo\+\_\+program\+\_\+load}}
\index{embryo\+\_\+program\+\_\+load@{embryo\+\_\+program\+\_\+load}!Program Creation and Destruction Functions@{Program Creation and Destruction Functions}}
\subsubsection{\texorpdfstring{embryo\+\_\+program\+\_\+load()}{embryo\_program\_load()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} Embryo\+\_\+\+Program$\ast$ embryo\+\_\+program\+\_\+load (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Creates a new Embryo program based on the bytecode data stored in the given file. 


\begin{DoxyParams}{Parameters}
{\em file} & Filename of the given file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A new Embryo program. 
\end{DoxyReturn}


References embryo\+\_\+program\+\_\+new(), and embryo\+\_\+swap\+\_\+32().

\mbox{\Hypertarget{group__Embryo__Program__Creation__Group_ga2f25a71ef9f2254882c841fbd5e0e68a}\label{group__Embryo__Program__Creation__Group_ga2f25a71ef9f2254882c841fbd5e0e68a}} 
\index{Program Creation and Destruction Functions@{Program Creation and Destruction Functions}!embryo\+\_\+program\+\_\+free@{embryo\+\_\+program\+\_\+free}}
\index{embryo\+\_\+program\+\_\+free@{embryo\+\_\+program\+\_\+free}!Program Creation and Destruction Functions@{Program Creation and Destruction Functions}}
\subsubsection{\texorpdfstring{embryo\+\_\+program\+\_\+free()}{embryo\_program\_free()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void embryo\+\_\+program\+\_\+free (\begin{DoxyParamCaption}\item[{Embryo\+\_\+\+Program $\ast$}]{ep }\end{DoxyParamCaption})}



Frees the given Embryo program. 


\begin{DoxyParams}{Parameters}
{\em ep} & The given program. \\
\hline
\end{DoxyParams}
