\hypertarget{classIVideo}{
\section{IVideo Class Reference}
\label{d1/dba/classIVideo}\index{IVideo@{IVideo}}
}


{\ttfamily \#include $<$hardware.h$>$}

Inheritance diagram for IVideo:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{d1/dba/classIVideo}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual \hyperlink{classIVideo_a1e9a1df89189cfe486cf864e1b1be45a}{$\sim$IVideo} ()
\item 
virtual \hyperlink{sv__main_8cpp_a77792b18743abf1ff3aeeffa24aa45ec}{std::string} \hyperlink{classIVideo_a263e5ed67376e5e41a6da1b09d7f1225}{GetVideoDriverName} ()
\item 
virtual \hyperlink{i__video_8h_ac6d9f7ec92d3c158c00a3b1611f33380}{EDisplayType} \hyperlink{classIVideo_a94e0aefb5e331dae228a1d37fb12c01d}{GetDisplayType} ()
\item 
virtual bool \hyperlink{classIVideo_a1e326b42b03036c06f38bb89e1e76b72}{FullscreenChanged} (bool fs)
\item 
virtual void \hyperlink{classIVideo_aa41f73d86e0fdc6075b93a99d2503f33}{SetWindowedScale} (float scale)
\item 
virtual bool \hyperlink{classIVideo_a97efc502ea8d1bbd2b0d4fd16d775849}{CanBlit} ()
\item 
virtual bool \hyperlink{classIVideo_adb2b3b6ca43b2cd6361152e82201ddd9}{SetOverscan} (float scale)
\item 
virtual bool \hyperlink{classIVideo_ae60268d5c96a299b8081c1cd0d01954d}{SetMode} (int \hyperlink{v__video_8cpp_a3b50f600cf383dfc5511a5ec9d73fdff}{width}, int height, int bits, bool fs)
\item 
virtual void \hyperlink{classIVideo_a14cbe1fac9bfe2cf2567ef7a9825ae1b}{SetPalette} (\hyperlink{doomtype_8h_ad342ac907eb044443153a22f964bf0af}{DWORD} $\ast$palette)
\item 
virtual void \hyperlink{classIVideo_a7aeb72f82049aa5090dd74ffde55be62}{SetOldPalette} (\hyperlink{doomtype_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$doompalette)
\item 
virtual void \hyperlink{classIVideo_afae7436279df6fd22453dcc961759831}{UpdateScreen} (\hyperlink{classDCanvas}{DCanvas} $\ast$canvas)
\item 
virtual void \hyperlink{classIVideo_afa3d36d5f29500e5192ae3aefafe390f}{ReadScreen} (\hyperlink{doomtype_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$block)
\item 
virtual int \hyperlink{classIVideo_a47233516a94db89571c65973298f0784}{GetModeCount} ()
\item 
virtual void \hyperlink{classIVideo_ad8bbc441c429843ff692583aeaa086f2}{StartModeIterator} (int bits)
\item 
virtual bool \hyperlink{classIVideo_a25c671a2c74c6cacaaa9db3180b13a81}{NextMode} (int $\ast$\hyperlink{v__video_8cpp_a3b50f600cf383dfc5511a5ec9d73fdff}{width}, int $\ast$height)
\item 
virtual \hyperlink{classDCanvas}{DCanvas} $\ast$ \hyperlink{classIVideo_a4f4826ee32d74aa36ab35ce54596d5d5}{AllocateSurface} (int \hyperlink{v__video_8cpp_a3b50f600cf383dfc5511a5ec9d73fdff}{width}, int height, int bits, bool primary=false)
\item 
virtual void \hyperlink{classIVideo_a285129234ddf5736daaab3c82ea9a834}{ReleaseSurface} (\hyperlink{classDCanvas}{DCanvas} $\ast$scrn)
\item 
virtual void \hyperlink{classIVideo_a330f846b246fe4c484415e7e119295f7}{LockSurface} (\hyperlink{classDCanvas}{DCanvas} $\ast$scrn)
\item 
virtual void \hyperlink{classIVideo_ae51450146704407be3193c01835f59f2}{UnlockSurface} (\hyperlink{classDCanvas}{DCanvas} $\ast$scrn)
\item 
virtual bool \hyperlink{classIVideo_a84c1c9676f9adc9828d210857d995be9}{Blit} (\hyperlink{classDCanvas}{DCanvas} $\ast$\hyperlink{minilzo_8cpp_a0e9117de7e6a340559202f88a1dbd9c6}{src}, int sx, int sy, int sw, int sh, \hyperlink{classDCanvas}{DCanvas} $\ast$\hyperlink{lzoconf_8h_a5b862d67225176b67f9ccdb91e92c4f3}{dst}, int dx, int dy, int dw, int dh)
\end{DoxyCompactItemize}


\subsection{Constructor \& Destructor Documentation}
\hypertarget{classIVideo_a1e9a1df89189cfe486cf864e1b1be45a}{
\index{IVideo@{IVideo}!$\sim$IVideo@{$\sim$IVideo}}
\index{$\sim$IVideo@{$\sim$IVideo}!IVideo@{IVideo}}
\subsubsection[{$\sim$IVideo}]{\setlength{\rightskip}{0pt plus 5cm}virtual IVideo::$\sim$IVideo (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a1e9a1df89189cfe486cf864e1b1be45a}


\subsection{Member Function Documentation}
\hypertarget{classIVideo_a4f4826ee32d74aa36ab35ce54596d5d5}{
\index{IVideo@{IVideo}!AllocateSurface@{AllocateSurface}}
\index{AllocateSurface@{AllocateSurface}!IVideo@{IVideo}}
\subsubsection[{AllocateSurface}]{\setlength{\rightskip}{0pt plus 5cm}{\bf DCanvas} $\ast$ IVideo::AllocateSurface (
\begin{DoxyParamCaption}
\item[{int}]{width, }
\item[{int}]{height, }
\item[{int}]{bits, }
\item[{bool}]{primary = {\ttfamily false}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a4f4826ee32d74aa36ab35ce54596d5d5}


Reimplemented in \hyperlink{classSDLVideo_ab86b572148c6d643254ade2215b6a213}{SDLVideo}.

\hypertarget{classIVideo_a84c1c9676f9adc9828d210857d995be9}{
\index{IVideo@{IVideo}!Blit@{Blit}}
\index{Blit@{Blit}!IVideo@{IVideo}}
\subsubsection[{Blit}]{\setlength{\rightskip}{0pt plus 5cm}bool IVideo::Blit (
\begin{DoxyParamCaption}
\item[{{\bf DCanvas} $\ast$}]{src, }
\item[{int}]{sx, }
\item[{int}]{sy, }
\item[{int}]{sw, }
\item[{int}]{sh, }
\item[{{\bf DCanvas} $\ast$}]{dst, }
\item[{int}]{dx, }
\item[{int}]{dy, }
\item[{int}]{dw, }
\item[{int}]{dh}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a84c1c9676f9adc9828d210857d995be9}


Reimplemented in \hyperlink{classSDLVideo_abc4051a284866ee2c5f160f0c02e5c34}{SDLVideo}.

\hypertarget{classIVideo_a97efc502ea8d1bbd2b0d4fd16d775849}{
\index{IVideo@{IVideo}!CanBlit@{CanBlit}}
\index{CanBlit@{CanBlit}!IVideo@{IVideo}}
\subsubsection[{CanBlit}]{\setlength{\rightskip}{0pt plus 5cm}bool IVideo::CanBlit (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a97efc502ea8d1bbd2b0d4fd16d775849}


Reimplemented in \hyperlink{classSDLVideo_a900daac258a75c6610e9ca11ef16b2d3}{SDLVideo}.

\hypertarget{classIVideo_a1e326b42b03036c06f38bb89e1e76b72}{
\index{IVideo@{IVideo}!FullscreenChanged@{FullscreenChanged}}
\index{FullscreenChanged@{FullscreenChanged}!IVideo@{IVideo}}
\subsubsection[{FullscreenChanged}]{\setlength{\rightskip}{0pt plus 5cm}bool IVideo::FullscreenChanged (
\begin{DoxyParamCaption}
\item[{bool}]{fs}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a1e326b42b03036c06f38bb89e1e76b72}


Reimplemented in \hyperlink{classSDLVideo_aea08a8fd74b9516e227231c1c8318b54}{SDLVideo}.

\hypertarget{classIVideo_a94e0aefb5e331dae228a1d37fb12c01d}{
\index{IVideo@{IVideo}!GetDisplayType@{GetDisplayType}}
\index{GetDisplayType@{GetDisplayType}!IVideo@{IVideo}}
\subsubsection[{GetDisplayType}]{\setlength{\rightskip}{0pt plus 5cm}{\bf EDisplayType} IVideo::GetDisplayType (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a94e0aefb5e331dae228a1d37fb12c01d}


Reimplemented in \hyperlink{classSDLVideo_a73813281be909d522d70c7c5006060f2}{SDLVideo}.

\hypertarget{classIVideo_a47233516a94db89571c65973298f0784}{
\index{IVideo@{IVideo}!GetModeCount@{GetModeCount}}
\index{GetModeCount@{GetModeCount}!IVideo@{IVideo}}
\subsubsection[{GetModeCount}]{\setlength{\rightskip}{0pt plus 5cm}int IVideo::GetModeCount (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a47233516a94db89571c65973298f0784}


Reimplemented in \hyperlink{classSDLVideo_a042d1e6b37a96dcb1cf9ea9377d095bd}{SDLVideo}.

\hypertarget{classIVideo_a263e5ed67376e5e41a6da1b09d7f1225}{
\index{IVideo@{IVideo}!GetVideoDriverName@{GetVideoDriverName}}
\index{GetVideoDriverName@{GetVideoDriverName}!IVideo@{IVideo}}
\subsubsection[{GetVideoDriverName}]{\setlength{\rightskip}{0pt plus 5cm}{\bf std::string} IVideo::GetVideoDriverName (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a263e5ed67376e5e41a6da1b09d7f1225}


Reimplemented in \hyperlink{classSDLVideo_a8f970ebb173334fc2e07dba714a53d8c}{SDLVideo}.

\hypertarget{classIVideo_a330f846b246fe4c484415e7e119295f7}{
\index{IVideo@{IVideo}!LockSurface@{LockSurface}}
\index{LockSurface@{LockSurface}!IVideo@{IVideo}}
\subsubsection[{LockSurface}]{\setlength{\rightskip}{0pt plus 5cm}void IVideo::LockSurface (
\begin{DoxyParamCaption}
\item[{{\bf DCanvas} $\ast$}]{scrn}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a330f846b246fe4c484415e7e119295f7}


Reimplemented in \hyperlink{classSDLVideo_a074ed32d69de180faefab9f77f113a76}{SDLVideo}.

\hypertarget{classIVideo_a25c671a2c74c6cacaaa9db3180b13a81}{
\index{IVideo@{IVideo}!NextMode@{NextMode}}
\index{NextMode@{NextMode}!IVideo@{IVideo}}
\subsubsection[{NextMode}]{\setlength{\rightskip}{0pt plus 5cm}bool IVideo::NextMode (
\begin{DoxyParamCaption}
\item[{int $\ast$}]{width, }
\item[{int $\ast$}]{height}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a25c671a2c74c6cacaaa9db3180b13a81}


Reimplemented in \hyperlink{classSDLVideo_a515cb1bacdd2ffb8f2f9d3b2c085a08a}{SDLVideo}.

\hypertarget{classIVideo_afa3d36d5f29500e5192ae3aefafe390f}{
\index{IVideo@{IVideo}!ReadScreen@{ReadScreen}}
\index{ReadScreen@{ReadScreen}!IVideo@{IVideo}}
\subsubsection[{ReadScreen}]{\setlength{\rightskip}{0pt plus 5cm}void IVideo::ReadScreen (
\begin{DoxyParamCaption}
\item[{{\bf byte} $\ast$}]{block}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_afa3d36d5f29500e5192ae3aefafe390f}


Reimplemented in \hyperlink{classSDLVideo_ad90b79ee6dc1c410f02d2f04cf98c3e7}{SDLVideo}.

\hypertarget{classIVideo_a285129234ddf5736daaab3c82ea9a834}{
\index{IVideo@{IVideo}!ReleaseSurface@{ReleaseSurface}}
\index{ReleaseSurface@{ReleaseSurface}!IVideo@{IVideo}}
\subsubsection[{ReleaseSurface}]{\setlength{\rightskip}{0pt plus 5cm}void IVideo::ReleaseSurface (
\begin{DoxyParamCaption}
\item[{{\bf DCanvas} $\ast$}]{scrn}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a285129234ddf5736daaab3c82ea9a834}


Reimplemented in \hyperlink{classSDLVideo_aab751039a1364f590dd9d1679e5c804c}{SDLVideo}.

\hypertarget{classIVideo_ae60268d5c96a299b8081c1cd0d01954d}{
\index{IVideo@{IVideo}!SetMode@{SetMode}}
\index{SetMode@{SetMode}!IVideo@{IVideo}}
\subsubsection[{SetMode}]{\setlength{\rightskip}{0pt plus 5cm}bool IVideo::SetMode (
\begin{DoxyParamCaption}
\item[{int}]{width, }
\item[{int}]{height, }
\item[{int}]{bits, }
\item[{bool}]{fs}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_ae60268d5c96a299b8081c1cd0d01954d}


Reimplemented in \hyperlink{classSDLVideo_a08082cd959a57dce2f16044c63222e1e}{SDLVideo}.

\hypertarget{classIVideo_a7aeb72f82049aa5090dd74ffde55be62}{
\index{IVideo@{IVideo}!SetOldPalette@{SetOldPalette}}
\index{SetOldPalette@{SetOldPalette}!IVideo@{IVideo}}
\subsubsection[{SetOldPalette}]{\setlength{\rightskip}{0pt plus 5cm}void IVideo::SetOldPalette (
\begin{DoxyParamCaption}
\item[{{\bf byte} $\ast$}]{doompalette}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a7aeb72f82049aa5090dd74ffde55be62}


Reimplemented in \hyperlink{classSDLVideo_a708dd539bb247db644d9a51474ef414f}{SDLVideo}.

\hypertarget{classIVideo_adb2b3b6ca43b2cd6361152e82201ddd9}{
\index{IVideo@{IVideo}!SetOverscan@{SetOverscan}}
\index{SetOverscan@{SetOverscan}!IVideo@{IVideo}}
\subsubsection[{SetOverscan}]{\setlength{\rightskip}{0pt plus 5cm}bool IVideo::SetOverscan (
\begin{DoxyParamCaption}
\item[{float}]{scale}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_adb2b3b6ca43b2cd6361152e82201ddd9}


Reimplemented in \hyperlink{classSDLVideo_a51863b616717780cc14b9c623932a244}{SDLVideo}.

\hypertarget{classIVideo_a14cbe1fac9bfe2cf2567ef7a9825ae1b}{
\index{IVideo@{IVideo}!SetPalette@{SetPalette}}
\index{SetPalette@{SetPalette}!IVideo@{IVideo}}
\subsubsection[{SetPalette}]{\setlength{\rightskip}{0pt plus 5cm}void IVideo::SetPalette (
\begin{DoxyParamCaption}
\item[{{\bf DWORD} $\ast$}]{palette}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_a14cbe1fac9bfe2cf2567ef7a9825ae1b}


Reimplemented in \hyperlink{classSDLVideo_ac9e8b83e2388ccf5570275ccc5a91ceb}{SDLVideo}.

\hypertarget{classIVideo_aa41f73d86e0fdc6075b93a99d2503f33}{
\index{IVideo@{IVideo}!SetWindowedScale@{SetWindowedScale}}
\index{SetWindowedScale@{SetWindowedScale}!IVideo@{IVideo}}
\subsubsection[{SetWindowedScale}]{\setlength{\rightskip}{0pt plus 5cm}void IVideo::SetWindowedScale (
\begin{DoxyParamCaption}
\item[{float}]{scale}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_aa41f73d86e0fdc6075b93a99d2503f33}


Reimplemented in \hyperlink{classSDLVideo_a86f4b59d76f807d3453ace79c0d6f4b1}{SDLVideo}.

\hypertarget{classIVideo_ad8bbc441c429843ff692583aeaa086f2}{
\index{IVideo@{IVideo}!StartModeIterator@{StartModeIterator}}
\index{StartModeIterator@{StartModeIterator}!IVideo@{IVideo}}
\subsubsection[{StartModeIterator}]{\setlength{\rightskip}{0pt plus 5cm}void IVideo::StartModeIterator (
\begin{DoxyParamCaption}
\item[{int}]{bits}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_ad8bbc441c429843ff692583aeaa086f2}


Reimplemented in \hyperlink{classSDLVideo_a4040119752883664fcf77ef69d1fd8ae}{SDLVideo}.

\hypertarget{classIVideo_ae51450146704407be3193c01835f59f2}{
\index{IVideo@{IVideo}!UnlockSurface@{UnlockSurface}}
\index{UnlockSurface@{UnlockSurface}!IVideo@{IVideo}}
\subsubsection[{UnlockSurface}]{\setlength{\rightskip}{0pt plus 5cm}void IVideo::UnlockSurface (
\begin{DoxyParamCaption}
\item[{{\bf DCanvas} $\ast$}]{scrn}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_ae51450146704407be3193c01835f59f2}


Reimplemented in \hyperlink{classSDLVideo_a270a7f07ca71144c5b05d2798ca55539}{SDLVideo}.

\hypertarget{classIVideo_afae7436279df6fd22453dcc961759831}{
\index{IVideo@{IVideo}!UpdateScreen@{UpdateScreen}}
\index{UpdateScreen@{UpdateScreen}!IVideo@{IVideo}}
\subsubsection[{UpdateScreen}]{\setlength{\rightskip}{0pt plus 5cm}void IVideo::UpdateScreen (
\begin{DoxyParamCaption}
\item[{{\bf DCanvas} $\ast$}]{canvas}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{d1/dba/classIVideo_afae7436279df6fd22453dcc961759831}


Reimplemented in \hyperlink{classSDLVideo_a1188a233a81df81430e7b2ef54f0e2bc}{SDLVideo}.



The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
client/sdl/\hyperlink{hardware_8h}{hardware.h}\item 
client/sdl/\hyperlink{hardware_8cpp}{hardware.cpp}\end{DoxyCompactItemize}
