<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Colorer-take5 Library: HRCParser Class Reference</title> <link href="../styles/styles.css" rel="stylesheet" type="text/css"> <link href="../styles/doc.css" rel="stylesheet" type="text/css"> <link rel="icon" href="../images/logo-small-api.png"/> </head> <body> <div align='center'> <a href="../index.html">Home</a> | <a href="modules.html">Modules</a> | <a href="hierarchy.html">Class Hierarchy</a> | <a href="classes.html">Alphabetical List</a> | <a href="annotated.html">Compound List</a> | <a href="pages.html">Related Pages</a> </div> <!-- Generated by Doxygen 1.4.6 --> <h1>HRCParser Class Reference<br> <small> [<a class="el" href="group__colorer.html">Colorer interfaces</a>]</small> </h1><!-- doxytag: class="HRCParser" --><p>Inheritance diagram for HRCParser: <p><center><img src="classHRCParser.png" usemap="#HRCParser_map" border="0" alt=""></center> <map name="HRCParser_map"> <area href="classHRCParserImpl.html" alt="HRCParserImpl" shape="rect" coords="0,56,98,80"> </map> <hr><a name="_details"></a><h2>Detailed Description</h2> Abstract template of <a class="el" href="classHRCParser.html">HRCParser</a> class implementation. <p> Defines basic operations of loading and accessing HRC information. <p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classHRCParser.html#9b2927c2112366429539dc93354e8d03">setErrorHandler</a> (<a class="el" href="classErrorHandler.html">ErrorHandler</a> *eh)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Error Handler, used to inform application about different error conditions. <a href="#9b2927c2112366429539dc93354e8d03"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classHRCParser.html#b5e47c4ae53081e541a226bfc796a113">loadSource</a> (<a class="el" href="classInputSource.html">InputSource</a> *is)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Loads HRC from specified <a class="el" href="classInputSource.html">InputSource</a> stream. <a href="#b5e47c4ae53081e541a226bfc796a113"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classFileType.html">FileType</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classHRCParser.html#1e8fb7515be2360ece79f5f321c9851c">enumerateFileTypes</a> (int index)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Enumerates sequentially all prototypes. <a href="#1e8fb7515be2360ece79f5f321c9851c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classFileType.html">FileType</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classHRCParser.html#924f2c87586e416ea630ef87d221a131">getFileType</a> (const <a class="el" href="classString.html">String</a> *name)=0</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classFileType.html">FileType</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classHRCParser.html#614c9595d63287736c3bef0753f35076">chooseFileType</a> (const <a class="el" href="classString.html">String</a> *fileName, const <a class="el" href="classString.html">String</a> *firstLine, int typeNo=0)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Searches and returns the best type for specified file. <a href="#614c9595d63287736c3bef0753f35076"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="89e93431979e822e6490a81659a9daa0"></a><!-- doxytag: member="HRCParser::getRegionCount" ref="89e93431979e822e6490a81659a9daa0" args="()=0" --> virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classHRCParser.html#89e93431979e822e6490a81659a9daa0">getRegionCount</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Total number of declared regions. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ab95c270f60b35cd6c44132e41c8a0dc"></a><!-- doxytag: member="HRCParser::getRegion" ref="ab95c270f60b35cd6c44132e41c8a0dc" args="(int id)=0" --> virtual const <a class="el" href="classRegion.html">Region</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classHRCParser.html#ab95c270f60b35cd6c44132e41c8a0dc">getRegion</a> (int id)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns region by internal id. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const <a class="el" href="classRegion.html">Region</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classHRCParser.html#09f784f0d8484c24f305d81a0a649367">getRegion</a> (const <a class="el" href="classString.html">String</a> *name)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns region by name. <a href="#09f784f0d8484c24f305d81a0a649367"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const <a class="el" href="classString.html">String</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classHRCParser.html#33df59ae01fe7e1a2a71789a26b5a8e9">getVersion</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">HRC base version. <a href="#33df59ae01fe7e1a2a71789a26b5a8e9"></a><br></td></tr> </table> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="9b2927c2112366429539dc93354e8d03"></a><!-- doxytag: member="HRCParser::setErrorHandler" ref="9b2927c2112366429539dc93354e8d03" args="(ErrorHandler *eh)=0" --><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">virtual void HRCParser::setErrorHandler </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="classErrorHandler.html">ErrorHandler</a> * </td> <td class="mdname1" valign="top" nowrap> <em>eh</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [pure virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Error Handler, used to inform application about different error conditions. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>eh</em> </td><td><a class="el" href="classErrorHandler.html">ErrorHandler</a> instance, or null to drop error handling. </td></tr> </table> </dl> </td> </tr> </table> <a class="anchor" name="b5e47c4ae53081e541a226bfc796a113"></a><!-- doxytag: member="HRCParser::loadSource" ref="b5e47c4ae53081e541a226bfc796a113" args="(InputSource *is)=0" --><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">virtual void HRCParser::loadSource </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="classInputSource.html">InputSource</a> * </td> <td class="mdname1" valign="top" nowrap> <em>is</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [pure virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Loads HRC from specified <a class="el" href="classInputSource.html">InputSource</a> stream. <p> Referred HRC file can contain prototypes and real types definitions. If it contains just prototype definition, real type load must be performed before using with loadType() method <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>is</em> </td><td><a class="el" href="classInputSource.html">InputSource</a> stream of HRC file </td></tr> </table> </dl> </td> </tr> </table> <a class="anchor" name="1e8fb7515be2360ece79f5f321c9851c"></a><!-- doxytag: member="HRCParser::enumerateFileTypes" ref="1e8fb7515be2360ece79f5f321c9851c" args="(int index)=0" --><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">virtual <a class="el" href="classFileType.html">FileType</a>* HRCParser::enumerateFileTypes </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">int </td> <td class="mdname1" valign="top" nowrap> <em>index</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [pure virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Enumerates sequentially all prototypes. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>index</em> </td><td>index of type. </td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>Requested type, or null, if index is too big </dd></dl> </td> </tr> </table> <a class="anchor" name="924f2c87586e416ea630ef87d221a131"></a><!-- doxytag: member="HRCParser::getFileType" ref="924f2c87586e416ea630ef87d221a131" args="(const String *name)=0" --><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">virtual <a class="el" href="classFileType.html">FileType</a>* HRCParser::getFileType </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="classString.html">String</a> * </td> <td class="mdname1" valign="top" nowrap> <em>name</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [pure virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>Requested type name. </td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>File type, or null, there are no type with specified name. </dd></dl> </td> </tr> </table> <a class="anchor" name="614c9595d63287736c3bef0753f35076"></a><!-- doxytag: member="HRCParser::chooseFileType" ref="614c9595d63287736c3bef0753f35076" args="(const String *fileName, const String *firstLine, int typeNo=0)=0" --><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">virtual <a class="el" href="classFileType.html">FileType</a>* HRCParser::chooseFileType </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="classString.html">String</a> * </td> <td class="mdname" nowrap> <em>fileName</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>const <a class="el" href="classString.html">String</a> * </td> <td class="mdname" nowrap> <em>firstLine</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>typeNo</em> = <code>0</code></td> </tr> <tr> <td class="md"></td> <td class="md">) </td> <td class="md" colspan="2"><code> [pure virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Searches and returns the best type for specified file. <p> This method uses fileName and firstLine parameters to perform selection of the best HRC type from database. <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>fileName</em> </td><td>Name of file </td></tr> <tr><td valign="top"></td><td valign="top"><em>firstLine</em> </td><td>First line of this file, could be null </td></tr> <tr><td valign="top"></td><td valign="top"><em>typeNo</em> </td><td>Sequential number of type, if more than one type satisfy these input parameters. </td></tr> </table> </dl> </td> </tr> </table> <a class="anchor" name="09f784f0d8484c24f305d81a0a649367"></a><!-- doxytag: member="HRCParser::getRegion" ref="09f784f0d8484c24f305d81a0a649367" args="(const String *name)=0" --><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">virtual const <a class="el" href="classRegion.html">Region</a>* HRCParser::getRegion </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="classString.html">String</a> * </td> <td class="mdname1" valign="top" nowrap> <em>name</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [pure virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Returns region by name. <p> <dl compact><dt><b>Note:</b></dt><dd>Also loads referred type, if it is not yet loaded. </dd></dl> </td> </tr> </table> <a class="anchor" name="33df59ae01fe7e1a2a71789a26b5a8e9"></a><!-- doxytag: member="HRCParser::getVersion" ref="33df59ae01fe7e1a2a71789a26b5a8e9" args="()=0" --><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">virtual const <a class="el" href="classString.html">String</a>* HRCParser::getVersion </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap><code> [pure virtual]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> HRC base version. <p> Usually this is the 'version' attribute of 'hrc' element of the first loaded HRC file. </td> </tr> </table> <br><br> <center><small> Colorer-take5 Library. Copyright © 1999-2006 Igor Russkih.<br> Generated at Fri Nov 24 17:13:13 2006 by doxygen 1.4.6. </small><center> </BODY> </HTML>