diff options
Diffstat (limited to 'docs/html/class_info_panel.html')
-rw-r--r-- | docs/html/class_info_panel.html | 695 |
1 files changed, 695 insertions, 0 deletions
diff --git a/docs/html/class_info_panel.html b/docs/html/class_info_panel.html new file mode 100644 index 0000000..c01e1ad --- /dev/null +++ b/docs/html/class_info_panel.html @@ -0,0 +1,695 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> +<title>Rally X: InfoPanel Class Reference</title> + +<link href="tabs.css" rel="stylesheet" type="text/css"/> +<link href="doxygen.css" rel="stylesheet" type="text/css" /> + +<link href="search/search.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="jquery.js"></script> +<script type="text/javascript" src="search/search.js"></script> +<script type="text/javascript"> + $(document).ready(function() { searchBox.OnSelectItem(0); }); +</script> + +</head> +<body> +<div id="top"><!-- do not remove this div! --> + + +<div id="titlearea"> +<table cellspacing="0" cellpadding="0"> + <tbody> + <tr style="height: 56px;"> + + <td id="projectlogo"><img alt="Logo" src="car.PNG"/></td> + + + <td style="padding-left: 0.5em;"> + <div id="projectname">Rally X + + </div> + <div id="projectbrief">ELEN3009 Project by Justin Wernick and David Schneider</div> + </td> + + + + </tr> + </tbody> +</table> +</div> + +<!-- Generated by Doxygen 1.7.5.1 --> +<script type="text/javascript"> +var searchBox = new SearchBox("searchBox", "search",false,'Search'); +</script> + <div id="navrow1" class="tabs"> + <ul class="tablist"> + <li><a href="index.html"><span>Main Page</span></a></li> + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> + <li><a href="files.html"><span>Files</span></a></li> + <li> + <div id="MSearchBox" class="MSearchBoxInactive"> + <span class="left"> + <img id="MSearchSelect" src="search/mag_sel.png" + onmouseover="return searchBox.OnSearchSelectShow()" + onmouseout="return searchBox.OnSearchSelectHide()" + alt=""/> + <input type="text" id="MSearchField" value="Search" accesskey="S" + onfocus="searchBox.OnSearchFieldFocus(true)" + onblur="searchBox.OnSearchFieldFocus(false)" + onkeyup="searchBox.OnSearchFieldChange(event)"/> + </span><span class="right"> + <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> + </span> + </div> + </li> + </ul> + </div> + <div id="navrow2" class="tabs2"> + <ul class="tablist"> + <li><a href="annotated.html"><span>Class List</span></a></li> + <li><a href="classes.html"><span>Class Index</span></a></li> + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> + <li><a href="functions.html"><span>Class Members</span></a></li> + </ul> + </div> +</div> +<div class="header"> + <div class="summary"> +<a href="#pub-methods">Public Member Functions</a> | +<a href="#pri-methods">Private Member Functions</a> | +<a href="#pri-attribs">Private Attributes</a> </div> + <div class="headertitle"> +<div class="title">InfoPanel Class Reference</div> </div> +</div> +<div class="contents"> +<!-- doxytag: class="InfoPanel" --><!-- doxytag: inherits="ScreenPanel" --> +<p><a class="el" href="class_screen_panel.html" title="Parent class for panels that are drawn on the screen.">ScreenPanel</a> to be drawn on the screen to give the player information. + <a href="class_info_panel.html#details">More...</a></p> + +<p><code>#include <<a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>></code></p> +<div class="dynheader"> +Inheritance diagram for InfoPanel:</div> +<div class="dyncontent"> + <div class="center"> + <img src="class_info_panel.png" usemap="#InfoPanel_map" alt=""/> + <map id="InfoPanel_map" name="InfoPanel_map"> +<area href="class_screen_panel.html" title="Parent class for panels that are drawn on the screen." alt="ScreenPanel" shape="rect" coords="0,0,85,24"/> +</map> + </div></div> + +<p><a href="class_info_panel-members.html">List of all members.</a></p> +<table class="memberdecls"> +<tr><td colspan="2"><h2><a name="pub-methods"></a> +Public Member Functions</h2></td></tr> +<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a5a3d0afb5ebd764de04484b1817912b6">InfoPanel</a> (ALLEGRO_BITMAP *back, ALLEGRO_BITMAP *front, int x, int y, int width, int height)</td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Creates an <a class="el" href="class_info_panel.html" title="ScreenPanel to be drawn on the screen to give the player information.">InfoPanel</a> from the given back and front buffers. <a href="#a5a3d0afb5ebd764de04484b1817912b6"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a052da279d4bf0405ae3735f24cc2e2a2">~InfoPanel</a> ()</td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor that ensured that the font created is destroyed. <a href="#a052da279d4bf0405ae3735f24cc2e2a2"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#aa9628c14e08ac6573e0191d9d4afa227">draw</a> (const <a class="el" href="class_maze.html">Maze</a> &maze, const list< <a class="el" href="class_player_car.html">PlayerCar</a> > &players, const list< <a class="el" href="class_enemy_car.html">EnemyCar</a> > &enemies, const list< <a class="el" href="class_checkpoint.html">Checkpoint</a> > &checkpoints, const list< <a class="el" href="class_rock.html">Rock</a> > &rocks, const list< <a class="el" href="class_smokescreen.html">Smokescreen</a> > &smokescreens, const list< <a class="el" href="class_destroyed_object_popup.html">DestroyedObjectPopup</a> > &popups)</td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draws the <a class="el" href="class_info_panel.html" title="ScreenPanel to be drawn on the screen to give the player information.">InfoPanel</a> using the given objects. <a href="#aa9628c14e08ac6573e0191d9d4afa227"></a><br/></td></tr> +<tr><td colspan="2"><h2><a name="pri-methods"></a> +Private Member Functions</h2></td></tr> +<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a6eac5bf29b155213dffd60460d299049">InfoPanel</a> (const <a class="el" href="class_info_panel.html">InfoPanel</a> &ref)</td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor not implemented, ScreenPanels should not be copied. <a href="#a6eac5bf29b155213dffd60460d299049"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_info_panel.html">InfoPanel</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#ab70ce071b189ffe1b7e7a67a6227393f">operator=</a> (const <a class="el" href="class_info_panel.html">InfoPanel</a> &rhs)</td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator not implemented, ScreenPanels should not be copied. <a href="#ab70ce071b189ffe1b7e7a67a6227393f"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a0accb88b099f412cc3baa7d2bf4690aa">getPanelX</a> (const double &x) const </td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Converts an x game coordinate value to its equivalent in pixels. <a href="#a0accb88b099f412cc3baa7d2bf4690aa"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#ad962eab814441375a8634b67d743d7e6">getPanelY</a> (const double &y) const </td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Converts a y game coordinate value to its equivalent in pixels. <a href="#ad962eab814441375a8634b67d743d7e6"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a23a025859397c3e28bbe9dce26563d7c">draw</a> (const <a class="el" href="class_maze.html">Maze</a> &maze)</td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draws a <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a> on the panel. <a href="#a23a025859397c3e28bbe9dce26563d7c"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#abc82d5365a89b3e374dbbdda86b77703">draw</a> (const <a class="el" href="class_game_object.html">GameObject</a> &object)</td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draws a single <a class="el" href="class_game_object.html" title="Parent class for objects that are placed in the maze.">GameObject</a> on the panel. <a href="#abc82d5365a89b3e374dbbdda86b77703"></a><br/></td></tr> +<tr><td colspan="2"><h2><a name="pri-attribs"></a> +Private Attributes</h2></td></tr> +<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_allegro_drawing_init.html">AllegroDrawingInit</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a589359c67b30af50338791f8af0e05e0">_drawing</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Handles dependencies on Allegro's primitive drawing functions. <a href="#a589359c67b30af50338791f8af0e05e0"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_colour_store.html">ColourStore</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a27ac079ed1a39ae672b6ceb9e0974855">_colourStore</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">Caches colours for drawing. <a href="#a27ac079ed1a39ae672b6ceb9e0974855"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a5ab76703538ad6e396a21ea8fb47d23d">_petrolHeadingY</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">The y coordinate of the heading for the petrol guage. <a href="#a5ab76703538ad6e396a21ea8fb47d23d"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a29976100c8fc5c130be713dfb5c2807e">_petrolGuageY</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">The y coordinate of top of the petrol guage. <a href="#a29976100c8fc5c130be713dfb5c2807e"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a0c85348f8471d86da73772f86a62f84c">_petrolGuageHeight</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">The height of the rectangle that is the petrol guage. <a href="#a0c85348f8471d86da73772f86a62f84c"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a7ec514286dbf2fb43f64acd620397e21">_checkpointHeadingY</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">The y coordinate of the heading for the number of remaining checkpoints. <a href="#a7ec514286dbf2fb43f64acd620397e21"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#ad118b5f123e590a95b3f390fd9597f02">_checkpointValueY</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">The y coordinate of the text stating the number of remaining checkpoints. <a href="#ad118b5f123e590a95b3f390fd9597f02"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a7b4bb6cca8549d6a1d1deccc99994b9b">_miniMazeY</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">The y coordinate of the top of the <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a>. <a href="#a7b4bb6cca8549d6a1d1deccc99994b9b"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#ad38206daa42c82b45878e6d0c55f2860">_miniMazeHeight</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">The height of the <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a>. <a href="#ad38206daa42c82b45878e6d0c55f2860"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#abb211fac23293e41f23b86fd70df98f0">_miniMazeblockWidth</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">The width of each <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a> block being drawn. <a href="#abb211fac23293e41f23b86fd70df98f0"></a><br/></td></tr> +<tr><td class="memItemLeft" align="right" valign="top">ALLEGRO_FONT * </td><td class="memItemRight" valign="bottom"><a class="el" href="class_info_panel.html#a38d023a2b00eafa303de37550cb96817">_panelFont</a></td></tr> +<tr><td class="mdescLeft"> </td><td class="mdescRight">The font being used to write the headings and number of checkpoints remaining. <a href="#a38d023a2b00eafa303de37550cb96817"></a><br/></td></tr> +</table> +<hr/><a name="details" id="details"></a><h2>Detailed Description</h2> +<div class="textblock"><p><a class="el" href="class_screen_panel.html" title="Parent class for panels that are drawn on the screen.">ScreenPanel</a> to be drawn on the screen to give the player information. </p> +<p>This includes the minimap, a scaled down version of the entire maze that does not scroll, with icons to represent the <a class="el" href="class_player_car.html" title="A GameObject that is controlled by the player.">PlayerCar</a>, EnemyCars, and Checkpoints. Text is drawn to show the player the number of Checkpoints that needed to be collected for victory, and a rectangle is drawn representing the amount of petrol that the <a class="el" href="class_player_car.html" title="A GameObject that is controlled by the player.">PlayerCar</a> has left.</p> +<dl class="author"><dt><b>Author:</b></dt><dd>Justin Wernick </dd> +<dd> +David Schneider </dd></dl> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00030">30</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> +</div><hr/><h2>Constructor & Destructor Documentation</h2> +<a class="anchor" id="a5a3d0afb5ebd764de04484b1817912b6"></a><!-- doxytag: member="InfoPanel::InfoPanel" ref="a5a3d0afb5ebd764de04484b1817912b6" args="(ALLEGRO_BITMAP *back, ALLEGRO_BITMAP *front, int x, int y, int width, int height)" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">InfoPanel::InfoPanel </td> + <td>(</td> + <td class="paramtype">ALLEGRO_BITMAP * </td> + <td class="paramname"><em>back</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">ALLEGRO_BITMAP * </td> + <td class="paramname"><em>front</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>x</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>y</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>width</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>height</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Creates an <a class="el" href="class_info_panel.html" title="ScreenPanel to be drawn on the screen to give the player information.">InfoPanel</a> from the given back and front buffers. </p> +<p>The sub-bitmaps that <a class="el" href="class_info_panel.html" title="ScreenPanel to be drawn on the screen to give the player information.">InfoPanel</a> uses are created from a rectangular region on back and front that has its top left corner at the coordinate x,y, is width long in the x direction, and height long in the y direction.</p> +<dl><dt><b>Parameters:</b></dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">back</td><td>The current back buffer of the display being sub-bitmapped. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">front</td><td>The current front buffer (image currently being displayed) of the display being sub-bitmapped. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>The x coordinate of the left side of the sub-bitmap in pixels. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">y</td><td>The x coordinate of the top of the sub-bitmap in pixels. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">width</td><td>The length in the x direction of the new sub-bitmap in pixels. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">height</td><td>The length in the y direction of the new sub-bitmap in pixels. </td></tr> + </table> + </dd> +</dl> + +<p>Definition at line <a class="el" href="_info_panel_8cpp_source.html#l00003">3</a> of file <a class="el" href="_info_panel_8cpp_source.html">InfoPanel.cpp</a>.</p> + +</div> +</div> +<a class="anchor" id="a052da279d4bf0405ae3735f24cc2e2a2"></a><!-- doxytag: member="InfoPanel::~InfoPanel" ref="a052da279d4bf0405ae3735f24cc2e2a2" args="()" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">InfoPanel::~InfoPanel </td> + <td>(</td> + <td class="paramname"></td><td>)</td> + <td></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Destructor that ensured that the font created is destroyed. </p> +<p>The memory for the sub-bitmaps are handled by the parent class, <a class="el" href="class_screen_panel.html" title="Parent class for panels that are drawn on the screen.">ScreenPanel</a>. </p> + +<p>Definition at line <a class="el" href="_info_panel_8cpp_source.html#l00022">22</a> of file <a class="el" href="_info_panel_8cpp_source.html">InfoPanel.cpp</a>.</p> + +</div> +</div> +<a class="anchor" id="a6eac5bf29b155213dffd60460d299049"></a><!-- doxytag: member="InfoPanel::InfoPanel" ref="a6eac5bf29b155213dffd60460d299049" args="(const InfoPanel &ref)" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">InfoPanel::InfoPanel </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="class_info_panel.html">InfoPanel</a> & </td> + <td class="paramname"><em>ref</em></td><td>)</td> + <td><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Copy constructor not implemented, ScreenPanels should not be copied. </p> + +</div> +</div> +<hr/><h2>Member Function Documentation</h2> +<a class="anchor" id="aa9628c14e08ac6573e0191d9d4afa227"></a><!-- doxytag: member="InfoPanel::draw" ref="aa9628c14e08ac6573e0191d9d4afa227" args="(const Maze &maze, const list< PlayerCar > &players, const list< EnemyCar > &enemies, const list< Checkpoint > &checkpoints, const list< Rock > &rocks, const list< Smokescreen > &smokescreens, const list< DestroyedObjectPopup > &popups)" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void InfoPanel::draw </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="class_maze.html">Maze</a> & </td> + <td class="paramname"><em>maze</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const list< <a class="el" href="class_player_car.html">PlayerCar</a> > & </td> + <td class="paramname"><em>players</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const list< <a class="el" href="class_enemy_car.html">EnemyCar</a> > & </td> + <td class="paramname"><em>enemies</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const list< <a class="el" href="class_checkpoint.html">Checkpoint</a> > & </td> + <td class="paramname"><em>checkpoints</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const list< <a class="el" href="class_rock.html">Rock</a> > & </td> + <td class="paramname"><em>rocks</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const list< <a class="el" href="class_smokescreen.html">Smokescreen</a> > & </td> + <td class="paramname"><em>smokescreens</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const list< <a class="el" href="class_destroyed_object_popup.html">DestroyedObjectPopup</a> > & </td> + <td class="paramname"><em>popups</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td><code> [virtual]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Draws the <a class="el" href="class_info_panel.html" title="ScreenPanel to be drawn on the screen to give the player information.">InfoPanel</a> using the given objects. </p> +<p>Not all of the provided objects are needed for the drawing process, but they are included to give the most general drawing case. This is to support polymorphism, where the <a class="el" href="class_info_panel.html" title="ScreenPanel to be drawn on the screen to give the player information.">InfoPanel</a> can be told to draw its sub-bitmap in the same manner as any other <a class="el" href="class_screen_panel.html" title="Parent class for panels that are drawn on the screen.">ScreenPanel</a>.</p> +<p>The scale of the minimap is determined at the beginning of each frame, so that it will always fit even if the maze is larger than on the last frame.</p> +<dl><dt><b>Parameters:</b></dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">maze</td><td>The <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a> that all of the objects are in. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">players</td><td>The list of PlayerCars to be drawn. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">enemies</td><td>The list of EnemyCars to be drawn. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">checkpoints</td><td>The list of Checkpoints to be drawn. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">rocks</td><td>Rocks are not actually drawn. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">smokescreens</td><td>Smokescreens are not actually drawn. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">popups</td><td>DestroyedObjectPopups are not actually drawn. </td></tr> + </table> + </dd> +</dl> + +<p>Implements <a class="el" href="class_screen_panel.html#ab4299f065cdf3e344c3b32b484136ada">ScreenPanel</a>.</p> + +<p>Definition at line <a class="el" href="_info_panel_8cpp_source.html#l00027">27</a> of file <a class="el" href="_info_panel_8cpp_source.html">InfoPanel.cpp</a>.</p> + +</div> +</div> +<a class="anchor" id="a23a025859397c3e28bbe9dce26563d7c"></a><!-- doxytag: member="InfoPanel::draw" ref="a23a025859397c3e28bbe9dce26563d7c" args="(const Maze &maze)" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void InfoPanel::draw </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="class_maze.html">Maze</a> & </td> + <td class="paramname"><em>maze</em></td><td>)</td> + <td><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Draws a <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a> on the panel. </p> +<p>The <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a> is constructed of coloured squares. The colour of the squares is retrieved from the <a class="el" href="class_colour_store.html" title="Class for mapping BitmapStore images to colours for use in the minimap.">ColourStore</a>.</p> +<p>Unlike in the <a class="el" href="class_game_panel.html" title="ScreenPanel to be drawn on the screen to draw the area where the game takes place.">GamePanel</a>, the entire <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a> is drawn.</p> +<dl><dt><b>Parameters:</b></dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">maze</td><td>The <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a> to be drawn. </td></tr> + </table> + </dd> +</dl> + +<p>Definition at line <a class="el" href="_info_panel_8cpp_source.html#l00071">71</a> of file <a class="el" href="_info_panel_8cpp_source.html">InfoPanel.cpp</a>.</p> + +</div> +</div> +<a class="anchor" id="abc82d5365a89b3e374dbbdda86b77703"></a><!-- doxytag: member="InfoPanel::draw" ref="abc82d5365a89b3e374dbbdda86b77703" args="(const GameObject &object)" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void InfoPanel::draw </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="class_game_object.html">GameObject</a> & </td> + <td class="paramname"><em>object</em></td><td>)</td> + <td><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Draws a single <a class="el" href="class_game_object.html" title="Parent class for objects that are placed in the maze.">GameObject</a> on the panel. </p> +<p>The <a class="el" href="class_game_object.html" title="Parent class for objects that are placed in the maze.">GameObject</a> is represented by a coloured circle in the <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a>. The colour is based on the GameObject's image and is retrieved from the <a class="el" href="class_colour_store.html" title="Class for mapping BitmapStore images to colours for use in the minimap.">ColourStore</a>.</p> +<dl><dt><b>Parameters:</b></dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">object</td><td>The <a class="el" href="class_game_object.html" title="Parent class for objects that are placed in the maze.">GameObject</a> to be drawn. </td></tr> + </table> + </dd> +</dl> + +<p>Definition at line <a class="el" href="_info_panel_8cpp_source.html#l00096">96</a> of file <a class="el" href="_info_panel_8cpp_source.html">InfoPanel.cpp</a>.</p> + +</div> +</div> +<a class="anchor" id="a0accb88b099f412cc3baa7d2bf4690aa"></a><!-- doxytag: member="InfoPanel::getPanelX" ref="a0accb88b099f412cc3baa7d2bf4690aa" args="(const double &x) const " --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">float InfoPanel::getPanelX </td> + <td>(</td> + <td class="paramtype">const double & </td> + <td class="paramname"><em>x</em></td><td>)</td> + <td> const<code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Converts an x game coordinate value to its equivalent in pixels. </p> +<p>Converting to the pixel coordinates happens for every object every frame. To increase performance, the parameters are passed in by constant reference instead of by value.</p> +<dl><dt><b>Parameters:</b></dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>The game coordinate to be converted into pixels. </td></tr> + </table> + </dd> +</dl> + +<p>Definition at line <a class="el" href="_info_panel_8cpp_source.html#l00104">104</a> of file <a class="el" href="_info_panel_8cpp_source.html">InfoPanel.cpp</a>.</p> + +</div> +</div> +<a class="anchor" id="ad962eab814441375a8634b67d743d7e6"></a><!-- doxytag: member="InfoPanel::getPanelY" ref="ad962eab814441375a8634b67d743d7e6" args="(const double &y) const " --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">float InfoPanel::getPanelY </td> + <td>(</td> + <td class="paramtype">const double & </td> + <td class="paramname"><em>y</em></td><td>)</td> + <td> const<code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Converts a y game coordinate value to its equivalent in pixels. </p> +<p>Converting to the pixel coordinates happens for every object every frame. To increase performance, the parameters are passed in by constant reference instead of by value.</p> +<dl><dt><b>Parameters:</b></dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">y</td><td>The game coordinate to be converted into pixels. </td></tr> + </table> + </dd> +</dl> + +<p>Definition at line <a class="el" href="_info_panel_8cpp_source.html#l00108">108</a> of file <a class="el" href="_info_panel_8cpp_source.html">InfoPanel.cpp</a>.</p> + +</div> +</div> +<a class="anchor" id="ab70ce071b189ffe1b7e7a67a6227393f"></a><!-- doxytag: member="InfoPanel::operator=" ref="ab70ce071b189ffe1b7e7a67a6227393f" args="(const InfoPanel &rhs)" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="class_info_panel.html">InfoPanel</a>& InfoPanel::operator= </td> + <td>(</td> + <td class="paramtype">const <a class="el" href="class_info_panel.html">InfoPanel</a> & </td> + <td class="paramname"><em>rhs</em></td><td>)</td> + <td><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Assignment operator not implemented, ScreenPanels should not be copied. </p> + +</div> +</div> +<hr/><h2>Member Data Documentation</h2> +<a class="anchor" id="a7ec514286dbf2fb43f64acd620397e21"></a><!-- doxytag: member="InfoPanel::_checkpointHeadingY" ref="a7ec514286dbf2fb43f64acd620397e21" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">float <a class="el" href="class_info_panel.html#a7ec514286dbf2fb43f64acd620397e21">InfoPanel::_checkpointHeadingY</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>The y coordinate of the heading for the number of remaining checkpoints. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00131">131</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<a class="anchor" id="ad118b5f123e590a95b3f390fd9597f02"></a><!-- doxytag: member="InfoPanel::_checkpointValueY" ref="ad118b5f123e590a95b3f390fd9597f02" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">float <a class="el" href="class_info_panel.html#ad118b5f123e590a95b3f390fd9597f02">InfoPanel::_checkpointValueY</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>The y coordinate of the text stating the number of remaining checkpoints. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00132">132</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<a class="anchor" id="a27ac079ed1a39ae672b6ceb9e0974855"></a><!-- doxytag: member="InfoPanel::_colourStore" ref="a27ac079ed1a39ae672b6ceb9e0974855" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="class_colour_store.html">ColourStore</a> <a class="el" href="class_info_panel.html#a27ac079ed1a39ae672b6ceb9e0974855">InfoPanel::_colourStore</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Caches colours for drawing. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00126">126</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<a class="anchor" id="a589359c67b30af50338791f8af0e05e0"></a><!-- doxytag: member="InfoPanel::_drawing" ref="a589359c67b30af50338791f8af0e05e0" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="class_allegro_drawing_init.html">AllegroDrawingInit</a> <a class="el" href="class_info_panel.html#a589359c67b30af50338791f8af0e05e0">InfoPanel::_drawing</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>Handles dependencies on Allegro's primitive drawing functions. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00125">125</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<a class="anchor" id="abb211fac23293e41f23b86fd70df98f0"></a><!-- doxytag: member="InfoPanel::_miniMazeblockWidth" ref="abb211fac23293e41f23b86fd70df98f0" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">float <a class="el" href="class_info_panel.html#abb211fac23293e41f23b86fd70df98f0">InfoPanel::_miniMazeblockWidth</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>The width of each <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a> block being drawn. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00135">135</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<a class="anchor" id="ad38206daa42c82b45878e6d0c55f2860"></a><!-- doxytag: member="InfoPanel::_miniMazeHeight" ref="ad38206daa42c82b45878e6d0c55f2860" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">float <a class="el" href="class_info_panel.html#ad38206daa42c82b45878e6d0c55f2860">InfoPanel::_miniMazeHeight</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>The height of the <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a>. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00134">134</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<a class="anchor" id="a7b4bb6cca8549d6a1d1deccc99994b9b"></a><!-- doxytag: member="InfoPanel::_miniMazeY" ref="a7b4bb6cca8549d6a1d1deccc99994b9b" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">float <a class="el" href="class_info_panel.html#a7b4bb6cca8549d6a1d1deccc99994b9b">InfoPanel::_miniMazeY</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>The y coordinate of the top of the <a class="el" href="class_maze.html" title="A rectangular 2D boolean array, representing where cars can drive and where they cannot.">Maze</a>. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00133">133</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<a class="anchor" id="a38d023a2b00eafa303de37550cb96817"></a><!-- doxytag: member="InfoPanel::_panelFont" ref="a38d023a2b00eafa303de37550cb96817" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">ALLEGRO_FONT* <a class="el" href="class_info_panel.html#a38d023a2b00eafa303de37550cb96817">InfoPanel::_panelFont</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>The font being used to write the headings and number of checkpoints remaining. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00137">137</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<a class="anchor" id="a0c85348f8471d86da73772f86a62f84c"></a><!-- doxytag: member="InfoPanel::_petrolGuageHeight" ref="a0c85348f8471d86da73772f86a62f84c" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">float <a class="el" href="class_info_panel.html#a0c85348f8471d86da73772f86a62f84c">InfoPanel::_petrolGuageHeight</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>The height of the rectangle that is the petrol guage. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00130">130</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<a class="anchor" id="a29976100c8fc5c130be713dfb5c2807e"></a><!-- doxytag: member="InfoPanel::_petrolGuageY" ref="a29976100c8fc5c130be713dfb5c2807e" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">float <a class="el" href="class_info_panel.html#a29976100c8fc5c130be713dfb5c2807e">InfoPanel::_petrolGuageY</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>The y coordinate of top of the petrol guage. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00129">129</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<a class="anchor" id="a5ab76703538ad6e396a21ea8fb47d23d"></a><!-- doxytag: member="InfoPanel::_petrolHeadingY" ref="a5ab76703538ad6e396a21ea8fb47d23d" args="" --> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">float <a class="el" href="class_info_panel.html#a5ab76703538ad6e396a21ea8fb47d23d">InfoPanel::_petrolHeadingY</a><code> [private]</code></td> + </tr> + </table> +</div> +<div class="memdoc"> + +<p>The y coordinate of the heading for the petrol guage. </p> + +<p>Definition at line <a class="el" href="_info_panel_8h_source.html#l00128">128</a> of file <a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a>.</p> + +</div> +</div> +<hr/>The documentation for this class was generated from the following files:<ul> +<li>source/presentation/<a class="el" href="_info_panel_8h_source.html">InfoPanel.h</a></li> +<li>source/presentation/<a class="el" href="_info_panel_8cpp_source.html">InfoPanel.cpp</a></li> +</ul> +</div> +<!-- window showing the filter options --> +<div id="MSearchSelectWindow" + onmouseover="return searchBox.OnSearchSelectShow()" + onmouseout="return searchBox.OnSearchSelectHide()" + onkeydown="return searchBox.OnSearchSelectKey(event)"> +<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a></div> + +<!-- iframe showing the search results (closed by default) --> +<div id="MSearchResultsWindow"> +<iframe src="javascript:void(0)" frameborder="0" + name="MSearchResults" id="MSearchResults"> +</iframe> +</div> + + + +<hr class="footer"/><address class="footer"><small> +Generated on Wed Oct 5 2011 20:08:31 for Rally X by  <a href="http://www.doxygen.org/index.html"> +<img class="footer" src="doxygen.png" alt="doxygen"/> +</a> 1.7.5.1 +</small></address> + +</body> +</html> |