\hypertarget{classTransformComponent}{}\doxysection{Transform\+Component Class Reference}
\label{classTransformComponent}\index{TransformComponent@{TransformComponent}}


{\ttfamily \#include $<$Transform\+Component.\+hpp$>$}



Inheritance diagram for Transform\+Component\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=202pt]{d0/d01/classTransformComponent__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for Transform\+Component\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=220pt]{d9/dab/classTransformComponent__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classTransformComponent_a461808701b999d0e0e14c856f7ab41c1}{Transform\+Component}} (int \+\_\+x, int \+\_\+y)
\item 
\mbox{\hyperlink{classTransformComponent_a37d5d34a3695eafc8b8cbf37905e756f}{$\sim$\+Transform\+Component}} ()
\item 
void \mbox{\hyperlink{classTransformComponent_aa3cd2785878a82d02103778d04761a32}{Set\+Transform}} (\mbox{\hyperlink{structVec2D}{Vec2D}} \+\_\+pos)
\item 
void \mbox{\hyperlink{classTransformComponent_a9cfb03b06888fc489be5d2751a6d4543}{Set\+Transform}} (int \+\_\+x, int \+\_\+y)
\item 
void \mbox{\hyperlink{classTransformComponent_ae808ac3be0106babc97e92afb8f93a96}{Update}} (SDL\+\_\+\+Event e, int frame, std\+::vector$<$ std\+::string $>$ broadcast\+List) override
\item 
void \mbox{\hyperlink{classTransformComponent_aedc094eb1922c3cfe116e6d67191400e}{Render}} (SDL\+\_\+\+Renderer $\ast$ren) override
\item 
void \mbox{\hyperlink{classTransformComponent_a2db75c6b70fcf13c086f02ac41953057}{Show\+Component\+Editor}} (bool $\ast$show\+Editor) override
\item 
\mbox{\hyperlink{structVec2D}{Vec2D}} \mbox{\hyperlink{classTransformComponent_a5452c308a26521441745d3edc1ab5d4d}{get\+Pos}} () const
\item 
const char $\ast$ \mbox{\hyperlink{classTransformComponent_aebd4b99e08cce915dd3929ad54befcbc}{Component\+Type\+Name}} () override
\end{DoxyCompactItemize}
\doxysubsubsection*{Public Member Functions inherited from \mbox{\hyperlink{classComponent}{Component}}}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classComponent_a8775db6d1a2c1afc2e77cd3c8f39da6f}{Component}} ()
\item 
\mbox{\hyperlink{classComponent_ab8378fa275af98e568a7e91d33d867af}{$\sim$\+Component}} ()
\item 
virtual void \mbox{\hyperlink{classComponent_a9c764c2a5607ef52629458d361ebf16e}{Update}} (SDL\+\_\+\+Event e, int frame, std\+::vector$<$ std\+::string $>$ broadcast\+List)
\item 
virtual void \mbox{\hyperlink{classComponent_ab856bdb8c4357a080d7abcf99871a573}{Render}} (SDL\+\_\+\+Renderer $\ast$ren)
\item 
virtual void \mbox{\hyperlink{classComponent_a92af5bb942ea9633515a0c0e16a0bb8c}{Show\+Component\+Editor}} (bool $\ast$show\+Editor)
\item 
virtual bool \mbox{\hyperlink{classComponent_aed93a0ec70ebc71f34f02eb0a3ad4006}{Has\+Tag}} (Component\+Tag t)
\item 
virtual const char $\ast$ \mbox{\hyperlink{classComponent_a6ad359e7f57daa4ba249aaf5c88da052}{Component\+Type\+Name}} ()
\item 
void \mbox{\hyperlink{classComponent_aea8f0f460a62d86183020bd667b6cbf0}{Parse\+And\+Update\+Broadcast}} (std\+::vector$<$ std\+::string $>$ broadcast\+List)
\end{DoxyCompactItemize}
\doxysubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classTransformComponent_ae464529a05665d3f6f35371e7a8947fd}\label{classTransformComponent_ae464529a05665d3f6f35371e7a8947fd} 
\mbox{\hyperlink{structVec2D}{Vec2D}} {\bfseries position}
\item 
\Hypertarget{classTransformComponent_a180638d1c113c045644a1d99bb101c46}\label{classTransformComponent_a180638d1c113c045644a1d99bb101c46} 
std\+::vector$<$ Component\+Tag $>$ {\bfseries tags} = \{Component\+Tag\+::\+Position\}
\end{DoxyCompactItemize}
\doxysubsection*{Additional Inherited Members}
\doxysubsubsection*{Protected Attributes inherited from \mbox{\hyperlink{classComponent}{Component}}}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classComponent_ab9b45a6a11e943c86770a1b3e085c25c}\label{classComponent_ab9b45a6a11e943c86770a1b3e085c25c} 
std\+::vector$<$ Component\+Tag $>$ {\bfseries tags}
\item 
\Hypertarget{classComponent_a929d29b8cdb9447b70f5e7d990c7d0f0}\label{classComponent_a929d29b8cdb9447b70f5e7d990c7d0f0} 
std\+::vector$<$ std\+::string $>$ {\bfseries previous\+Broadcasts}
\item 
\Hypertarget{classComponent_a7d03b8c23a6fa95fd83f08ad88cd59ee}\label{classComponent_a7d03b8c23a6fa95fd83f08ad88cd59ee} 
std\+::vector$<$ std\+::string $>$ {\bfseries pending\+Broadcasts}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
A \doxylink{classComponent}{Component} implementation to hold the position of a \doxylink{classGameObject}{Game\+Object}. Used by every other \doxylink{classComponent}{Component} that needs a position. 

\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{classTransformComponent_a461808701b999d0e0e14c856f7ab41c1}\label{classTransformComponent_a461808701b999d0e0e14c856f7ab41c1} 
\index{TransformComponent@{TransformComponent}!TransformComponent@{TransformComponent}}
\index{TransformComponent@{TransformComponent}!TransformComponent@{TransformComponent}}
\doxysubsubsection{\texorpdfstring{TransformComponent()}{TransformComponent()}}
{\footnotesize\ttfamily Transform\+Component\+::\+Transform\+Component (\begin{DoxyParamCaption}\item[{int}]{\+\_\+x,  }\item[{int}]{\+\_\+y }\end{DoxyParamCaption})}

Construct a new Transform \doxylink{classComponent}{Component} object.


\begin{DoxyParams}{Parameters}
{\em \+\_\+x} & the x position of the \doxylink{classTransformComponent}{Transform\+Component} \\
\hline
{\em \+\_\+y} & the y position of the \doxylink{classTransformComponent}{Transform\+Component} \\
\hline
\end{DoxyParams}
\Hypertarget{classTransformComponent_a37d5d34a3695eafc8b8cbf37905e756f}\label{classTransformComponent_a37d5d34a3695eafc8b8cbf37905e756f} 
\index{TransformComponent@{TransformComponent}!````~TransformComponent@{$\sim$TransformComponent}}
\index{````~TransformComponent@{$\sim$TransformComponent}!TransformComponent@{TransformComponent}}
\doxysubsubsection{\texorpdfstring{$\sim$TransformComponent()}{\string~TransformComponent()}}
{\footnotesize\ttfamily Transform\+Component\+::$\sim$\+Transform\+Component (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}

Destroy the Transform \doxylink{classComponent}{Component} object. 

\doxysubsection{Member Function Documentation}
\Hypertarget{classTransformComponent_aebd4b99e08cce915dd3929ad54befcbc}\label{classTransformComponent_aebd4b99e08cce915dd3929ad54befcbc} 
\index{TransformComponent@{TransformComponent}!ComponentTypeName@{ComponentTypeName}}
\index{ComponentTypeName@{ComponentTypeName}!TransformComponent@{TransformComponent}}
\doxysubsubsection{\texorpdfstring{ComponentTypeName()}{ComponentTypeName()}}
{\footnotesize\ttfamily const char $\ast$ Transform\+Component\+::\+Component\+Type\+Name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}, {\ttfamily [virtual]}}

The name of the component type. Used by the GUI

\begin{DoxySeeAlso}{See also}
\doxylink{classGameMakerGUI_a39546dd352c9c5d198f61e34011131b4}{Game\+Maker\+GUI\+::\+Create\+Component()} 
\end{DoxySeeAlso}
\begin{DoxyReturn}{Returns}
the name of the component 
\end{DoxyReturn}


Reimplemented from \mbox{\hyperlink{classComponent_a6ad359e7f57daa4ba249aaf5c88da052}{Component}}.

\Hypertarget{classTransformComponent_a5452c308a26521441745d3edc1ab5d4d}\label{classTransformComponent_a5452c308a26521441745d3edc1ab5d4d} 
\index{TransformComponent@{TransformComponent}!getPos@{getPos}}
\index{getPos@{getPos}!TransformComponent@{TransformComponent}}
\doxysubsubsection{\texorpdfstring{getPos()}{getPos()}}
{\footnotesize\ttfamily \mbox{\hyperlink{structVec2D}{Vec2D}} Transform\+Component\+::get\+Pos (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}

Get the position of the \doxylink{classTransformComponent}{Transform\+Component}.

\begin{DoxyReturn}{Returns}
the current position of the \doxylink{classTransformComponent}{Transform\+Component} 
\end{DoxyReturn}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d2/d0a/classTransformComponent_a5452c308a26521441745d3edc1ab5d4d_icgraph}
\end{center}
\end{figure}
\Hypertarget{classTransformComponent_aedc094eb1922c3cfe116e6d67191400e}\label{classTransformComponent_aedc094eb1922c3cfe116e6d67191400e} 
\index{TransformComponent@{TransformComponent}!Render@{Render}}
\index{Render@{Render}!TransformComponent@{TransformComponent}}
\doxysubsubsection{\texorpdfstring{Render()}{Render()}}
{\footnotesize\ttfamily void Transform\+Component\+::\+Render (\begin{DoxyParamCaption}\item[{SDL\+\_\+\+Renderer $\ast$}]{ren }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}

Renders the component (if it has anything to render)


\begin{DoxyParams}{Parameters}
{\em ren} & the SDL renderer to be displayed upon \\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\doxylink{classIGraphicsEngineRenderer}{IGraphics\+Engine\+Renderer} 
\end{DoxySeeAlso}


Reimplemented from \mbox{\hyperlink{classComponent_ab856bdb8c4357a080d7abcf99871a573}{Component}}.

\Hypertarget{classTransformComponent_a9cfb03b06888fc489be5d2751a6d4543}\label{classTransformComponent_a9cfb03b06888fc489be5d2751a6d4543} 
\index{TransformComponent@{TransformComponent}!SetTransform@{SetTransform}}
\index{SetTransform@{SetTransform}!TransformComponent@{TransformComponent}}
\doxysubsubsection{\texorpdfstring{SetTransform()}{SetTransform()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void Transform\+Component\+::\+Set\+Transform (\begin{DoxyParamCaption}\item[{int}]{\+\_\+x,  }\item[{int}]{\+\_\+y }\end{DoxyParamCaption})}

Set the position of the \doxylink{classTransformComponent}{Transform\+Component}.


\begin{DoxyParams}{Parameters}
{\em \+\_\+x} & the new x position of the \doxylink{classTransformComponent}{Transform\+Component} \\
\hline
{\em \+\_\+y} & the new y position of the \doxylink{classTransformComponent}{Transform\+Component} \\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\doxylink{classTransformComponent_aa3cd2785878a82d02103778d04761a32}{Set\+Transform(\+Vec2\+D)} 
\end{DoxySeeAlso}
\Hypertarget{classTransformComponent_aa3cd2785878a82d02103778d04761a32}\label{classTransformComponent_aa3cd2785878a82d02103778d04761a32} 
\index{TransformComponent@{TransformComponent}!SetTransform@{SetTransform}}
\index{SetTransform@{SetTransform}!TransformComponent@{TransformComponent}}
\doxysubsubsection{\texorpdfstring{SetTransform()}{SetTransform()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void Transform\+Component\+::\+Set\+Transform (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structVec2D}{Vec2D}}}]{\+\_\+pos }\end{DoxyParamCaption})}

Set the position of the \doxylink{classTransformComponent}{Transform\+Component}.


\begin{DoxyParams}{Parameters}
{\em \+\_\+pos} & the new position of the \doxylink{classTransformComponent}{Transform\+Component} \\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\doxylink{classTransformComponent_a9cfb03b06888fc489be5d2751a6d4543}{Set\+Transform(int, int)} 
\end{DoxySeeAlso}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d2/d0a/classTransformComponent_aa3cd2785878a82d02103778d04761a32_icgraph}
\end{center}
\end{figure}
\Hypertarget{classTransformComponent_a2db75c6b70fcf13c086f02ac41953057}\label{classTransformComponent_a2db75c6b70fcf13c086f02ac41953057} 
\index{TransformComponent@{TransformComponent}!ShowComponentEditor@{ShowComponentEditor}}
\index{ShowComponentEditor@{ShowComponentEditor}!TransformComponent@{TransformComponent}}
\doxysubsubsection{\texorpdfstring{ShowComponentEditor()}{ShowComponentEditor()}}
{\footnotesize\ttfamily void Transform\+Component\+::\+Show\+Component\+Editor (\begin{DoxyParamCaption}\item[{bool $\ast$}]{show\+Editor }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}

Using Imgui, render an editor for this component

\begin{DoxySeeAlso}{See also}
\doxylink{classGameMakerGUI_a2cc6da97c0f4b45175ddc9683308866e}{Game\+Maker\+GUI\+::\+Render\+Editor()} 
\end{DoxySeeAlso}

\begin{DoxyParams}{Parameters}
{\em show\+Editor} & \\
\hline
\end{DoxyParams}


Reimplemented from \mbox{\hyperlink{classComponent_a92af5bb942ea9633515a0c0e16a0bb8c}{Component}}.

\Hypertarget{classTransformComponent_ae808ac3be0106babc97e92afb8f93a96}\label{classTransformComponent_ae808ac3be0106babc97e92afb8f93a96} 
\index{TransformComponent@{TransformComponent}!Update@{Update}}
\index{Update@{Update}!TransformComponent@{TransformComponent}}
\doxysubsubsection{\texorpdfstring{Update()}{Update()}}
{\footnotesize\ttfamily void Transform\+Component\+::\+Update (\begin{DoxyParamCaption}\item[{SDL\+\_\+\+Event}]{e,  }\item[{int}]{frame,  }\item[{std\+::vector$<$ std\+::string $>$}]{broadcast\+List }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}

Updates the state of the component object. Called by the \doxylink{classEngine}{Engine} every tick


\begin{DoxyParams}{Parameters}
{\em e} & any inputs given by the user \\
\hline
{\em frame} & what frame is the game currently displaying \\
\hline
{\em broadcast\+List} & a list to be used to send messages between components \\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\doxylink{classComponent_aea8f0f460a62d86183020bd667b6cbf0}{Parse\+And\+Update\+Broadcast()} 
\end{DoxySeeAlso}


Reimplemented from \mbox{\hyperlink{classComponent_a9c764c2a5607ef52629458d361ebf16e}{Component}}.

Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d2/d0a/classTransformComponent_ae808ac3be0106babc97e92afb8f93a96_cgraph}
\end{center}
\end{figure}


The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
include/Transform\+Component.\+hpp\item 
src/Transform\+Component.\+cpp\end{DoxyCompactItemize}
