<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>Master Commands</title> <link href="quesoglc.css" rel="stylesheet" type="text/css"> </head><body> <table> <tr valign="top"> <td width="190" align="center"> <table class="qmenu" cellspacing="0"> <tr> <td class="qglobal"> <ul class="qmenu"> <li class="mainmenu"><a href="index.html" >Main</a></li> </ul> </td> </tr> <tr> <td class="qtitle">Tutorials</td> </tr> <tr> <td class="qglobal"> <ul class="qmenu"> <li class="mainmenu"><a href="tutorial.html">First Steps</a></li> <li class="mainmenu"><a href="tutorial2.html">Measurement</a></li> </ul> </td> </tr> <tr> <td class="qtitle">Documentation</td> </tr> <tr> <td class="qglobal"> <ul class="qmenu"> <li class="mainmenu"><a href="overview.html">Overview</a></li> <li class="mainmenu"><a href="glyph.html">Glyph conventions</a></li> <li class="mainmenu"><a href="machinedef.html">Machine definition</a></li> <li class="mainmenu"><a href="group__context.html">Context State</a></li> <li class="mainmenu"><a href="group__font.html">Fonts</a></li> <li class="mainmenu"><a href="group__global.html">Global</a></li> <li class="mainmenu"><a href="group__master.html">Master</a></li> <li class="mainmenu"><a href="group__transform.html">Transformation</a></li> <li class="mainmenu"><a href="group__render.html">Render</a></li> <li class="mainmenu"><a href="group__measure.html">Measurement</a></li> </ul> </td> </tr> </table> </td> <td> <table> <tr> <td class="main"> <!-- Generated by Doxygen 1.8.3 --> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">Master Commands</div> </div> </div><!--header--> <div class="contents"> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:ga397dafe9ccebca28846af39356481742"><td class="memItemLeft" align="right" valign="top">const GLCchar * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__master.html#ga397dafe9ccebca28846af39356481742">glcGetMasterListc</a> (GLint inMaster, GLCenum inAttrib, GLint inIndex)</td></tr> <tr class="separator:ga397dafe9ccebca28846af39356481742"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga35b8d2d3caef1e56f9751261765c08dc"><td class="memItemLeft" align="right" valign="top">const GLCchar * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__master.html#ga35b8d2d3caef1e56f9751261765c08dc">glcGetMasterMap</a> (GLint inMaster, GLint inCode)</td></tr> <tr class="separator:ga35b8d2d3caef1e56f9751261765c08dc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga548f2b1cabd967d2297ea8bb5ce809a3"><td class="memItemLeft" align="right" valign="top">const GLCchar * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__master.html#ga548f2b1cabd967d2297ea8bb5ce809a3">glcGetMasterc</a> (GLint inMaster, GLCenum inAttrib)</td></tr> <tr class="separator:ga548f2b1cabd967d2297ea8bb5ce809a3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga5c8c239c416e8a879795f2e8b42699e2"><td class="memItemLeft" align="right" valign="top">GLint </td><td class="memItemRight" valign="bottom"><a class="el" href="group__master.html#ga5c8c239c416e8a879795f2e8b42699e2">glcGetMasteri</a> (GLint inMaster, GLCenum inAttrib)</td></tr> <tr class="separator:ga5c8c239c416e8a879795f2e8b42699e2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab0b37f7b9f9459aef7ec645a66bac4a7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__master.html#gab0b37f7b9f9459aef7ec645a66bac4a7">glcAppendCatalog</a> (const GLCchar *inCatalog)</td></tr> <tr class="separator:gab0b37f7b9f9459aef7ec645a66bac4a7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3974a718a1e8f2dc8ab6dbc86e446712"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__master.html#ga3974a718a1e8f2dc8ab6dbc86e446712">glcPrependCatalog</a> (const GLCchar *inCatalog)</td></tr> <tr class="separator:ga3974a718a1e8f2dc8ab6dbc86e446712"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaaeacc5b1480ec2aac9ebc2c265dfb070"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__master.html#gaaeacc5b1480ec2aac9ebc2c265dfb070">glcRemoveCatalog</a> (GLint inIndex)</td></tr> <tr class="separator:gaaeacc5b1480ec2aac9ebc2c265dfb070"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <p>Commands to create, manage and destroy masters. </p> <p>A master is a representation of a font that is stored outside QuesoGLC in a standard format such as TrueType or Type1.</p> <p>Every master has an associated character map. A character map is a table of entries that maps integer values to the name string that identifies the characters. Unlike fonts character maps, the character map of a master can not be modified.</p> <p>QuesoGLC maps the font files into master objects that are visible through the GLC API. A group of font files from a single typeface family will be mapped into a single GLC master object that has multiple faces. For example, the files <code>Courier.pfa</code>, <code>Courier-Bold.pfa</code>, <code>Courier-BoldOblique.pfa</code>, and <code>Courier-Oblique.pfa</code> are visible through the GLC API as a single master with <code>GLC_VENDOR="Adobe"</code>, <code>GLC_FAMILY="Courier"</code>, <code>GLC_MASTER_FORMAT="Type1"</code>, <code>GLC_FACE_COUNT=4</code> and <code>GLC_FACE_LIST=</code>("Regular", "Bold", "Bold Oblique", "Oblique")</p> <p>Some GLC commands have a parameter <em>inMaster</em>. This parameter is an offset from the the first element in the GLC master list. The command raises <b>GLC_PARAMETER_ERROR</b> if <em>inMaster</em> is less than zero or is greater than or equal to the value of the variable <b>GLC_MASTER_COUNT</b>. </p> <h2 class="groupheader">Function Documentation</h2> <a class="anchor" id="ga397dafe9ccebca28846af39356481742"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const GLCchar* glcGetMasterListc </td> <td>(</td> <td class="paramtype">GLint </td> <td class="paramname"><em>inMaster</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">GLCenum </td> <td class="paramname"><em>inAttrib</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">GLint </td> <td class="paramname"><em>inIndex</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>This command returns a string from a string list that is an attribute of the master identified by <em>inMaster</em>. </p> <p>The string list is identified by <em>inAttrib</em>. The command returns the string at offset <em>inIndex</em> from the first element in this string list. Below are the string list attributes associated with each GLC master and font and their element count attributes : </p> <center> <table class="doxtable"> <caption align="bottom">Master/font string list attributes</caption> <tr> <td>Name </td><td>Enumerant </td><td>Element count attribute </td></tr> <tr> <td><b>GLC_CHAR_LIST</b> </td><td>0x0050 </td><td><b>GLC_CHAR_COUNT</b> </td></tr> <tr> <td><b>GLC_FACE_LIST</b> </td><td>0x0051 </td><td><b>GLC_FACE_COUNT</b> </td></tr> </table> </center><p> <br/> The command raises <b>GLC_PARAMETER_ERROR</b> if <em>inIndex</em> is less than zero or is greater than or equal to the value of the list element count attribute. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">inMaster</td><td>Master from which an attribute is needed. </td></tr> <tr><td class="paramname">inAttrib</td><td>String list that contains the desired attribute. </td></tr> <tr><td class="paramname">inIndex</td><td>Offset from the first element of the list associated with <em>inAttrib</em>. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The string at offset <em>inIndex</em> from the first element of the string list identified by <em>inAttrib</em>. </dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__master.html#ga35b8d2d3caef1e56f9751261765c08dc" title="This command returns the string name of the character that the master identified by inMaster maps inC...">glcGetMasterMap()</a> </dd> <dd> <a class="el" href="group__master.html#ga548f2b1cabd967d2297ea8bb5ce809a3" title="This command returns a string attribute of the master identified by inMaster.">glcGetMasterc()</a> </dd> <dd> <a class="el" href="group__master.html#ga5c8c239c416e8a879795f2e8b42699e2" title="This command returns an integer attribute of the master identified by inMaster.">glcGetMasteri()</a> </dd></dl> </div> </div> <a class="anchor" id="ga35b8d2d3caef1e56f9751261765c08dc"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const GLCchar* glcGetMasterMap </td> <td>(</td> <td class="paramtype">GLint </td> <td class="paramname"><em>inMaster</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">GLint </td> <td class="paramname"><em>inCode</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>This command returns the string name of the character that the master identified by <em>inMaster</em> maps <em>inCode</em> to. </p> <p>Every master has associated with it a master map, which is a table of entries that map integer values to the name string that identifies the character.</p> <p>Every character code used in QuesoGLC is an element of the Unicode Character Database (UCD) defined by the standards ISO/IEC 10646:2003 and Unicode 4.0.1 (unless otherwise specified). A Unicode code point is denoted as <em>U+hexcode</em>, where <em>hexcode</em> is a sequence of hexadecimal digits. Each Unicode code point corresponds to a character that has a unique name string. For example, the code <em>U+41</em> corresponds to the character <em>LATIN CAPITAL LETTER A</em>.</p> <p>If the master does not map <em>inCode</em>, the command returns <b>GLC_NONE</b>. </p> <dl class="section note"><dt>Note</dt><dd>While you cannot change the map of a master, you can change the map of a font using <a class="el" href="group__font.html#gabffaeb1bae95bb7905475e3b4f6e106b" title="This command modifies the character map of the font identified by inFont such that the font maps inCo...">glcFontMap()</a>. </dd></dl> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">inMaster</td><td>The integer ID of the master from which to select the character. </td></tr> <tr><td class="paramname">inCode</td><td>The integer ID of character in the master map. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The string name of the character that <em>inCode</em> is mapped to. </dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__master.html#ga397dafe9ccebca28846af39356481742" title="This command returns a string from a string list that is an attribute of the master identified by inM...">glcGetMasterListc()</a> </dd> <dd> <a class="el" href="group__master.html#ga548f2b1cabd967d2297ea8bb5ce809a3" title="This command returns a string attribute of the master identified by inMaster.">glcGetMasterc()</a> </dd> <dd> <a class="el" href="group__master.html#ga5c8c239c416e8a879795f2e8b42699e2" title="This command returns an integer attribute of the master identified by inMaster.">glcGetMasteri()</a> </dd></dl> </div> </div> <a class="anchor" id="ga548f2b1cabd967d2297ea8bb5ce809a3"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const GLCchar* glcGetMasterc </td> <td>(</td> <td class="paramtype">GLint </td> <td class="paramname"><em>inMaster</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">GLCenum </td> <td class="paramname"><em>inAttrib</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>This command returns a string attribute of the master identified by <em>inMaster</em>. </p> <p>The table below lists the string attributes that are associated with each GLC master and font. </p> <center> <table class="doxtable"> <caption align="bottom">Master/font string attributes</caption> <tr> <td>Name </td><td>Enumerant </td></tr> <tr> <td><b>GLC_FAMILY</b> </td><td>0x0060 </td></tr> <tr> <td><b>GLC_MASTER_FORMAT</b> </td><td>0x0061 </td></tr> <tr> <td><b>GLC_VENDOR</b> </td><td>0x0062 </td></tr> <tr> <td><b>GLC_VERSION</b> </td><td>0x0063 </td></tr> <tr> <td><b>GLC_FULL_NAME_SGI</b> </td><td>0x8002 </td></tr> </table> </center> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">inMaster</td><td>The master for which an attribute value is needed. </td></tr> <tr><td class="paramname">inAttrib</td><td>The attribute for which the value is needed. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The value that is associated with the attribute <em>inAttrib</em>. </dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__master.html#ga5c8c239c416e8a879795f2e8b42699e2" title="This command returns an integer attribute of the master identified by inMaster.">glcGetMasteri()</a> </dd> <dd> <a class="el" href="group__master.html#ga35b8d2d3caef1e56f9751261765c08dc" title="This command returns the string name of the character that the master identified by inMaster maps inC...">glcGetMasterMap()</a> </dd> <dd> <a class="el" href="group__master.html#ga397dafe9ccebca28846af39356481742" title="This command returns a string from a string list that is an attribute of the master identified by inM...">glcGetMasterListc()</a> </dd></dl> </div> </div> <a class="anchor" id="ga5c8c239c416e8a879795f2e8b42699e2"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GLint glcGetMasteri </td> <td>(</td> <td class="paramtype">GLint </td> <td class="paramname"><em>inMaster</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">GLCenum </td> <td class="paramname"><em>inAttrib</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>This command returns an integer attribute of the master identified by <em>inMaster</em>. </p> <p>The attribute is identified by <em>inAttrib</em>. The table below lists the integer attributes that are associated with each GLC master and font. </p> <center> <table class="doxtable"> <caption align="bottom">Master/font integer attributes</caption> <tr> <td>Name </td><td>Enumerant </td></tr> <tr> <td><b>GLC_CHAR_COUNT</b> </td><td>0x0070 </td></tr> <tr> <td><b>GLC_FACE_COUNT</b> </td><td>0x0071 </td></tr> <tr> <td><b>GLC_IS_FIXED_PITCH</b> </td><td>0x0072 </td></tr> <tr> <td><b>GLC_MAX_MAPPED_CODE</b> </td><td>0x0073 </td></tr> <tr> <td><b>GLC_MIN_MAPPED_CODE</b> </td><td>0x0074 </td></tr> </table> </center><p> <br/> If the requested master attribute is <b>GLC_IS_FIXED_PITCH</b> then the command returns <b>GL_TRUE</b> if and only if each face of the master identified by <em>inMaster</em> has a fixed pitch. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">inMaster</td><td>The master for which an attribute value is needed. </td></tr> <tr><td class="paramname">inAttrib</td><td>The attribute for which the value is needed. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The value of the attribute <em>inAttrib</em> of the master identified by <em>inMaster</em>. </dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__master.html#ga548f2b1cabd967d2297ea8bb5ce809a3" title="This command returns a string attribute of the master identified by inMaster.">glcGetMasterc()</a> </dd> <dd> <a class="el" href="group__master.html#ga35b8d2d3caef1e56f9751261765c08dc" title="This command returns the string name of the character that the master identified by inMaster maps inC...">glcGetMasterMap()</a> </dd> <dd> <a class="el" href="group__master.html#ga397dafe9ccebca28846af39356481742" title="This command returns a string from a string list that is an attribute of the master identified by inM...">glcGetMasterListc()</a> </dd></dl> </div> </div> <a class="anchor" id="gab0b37f7b9f9459aef7ec645a66bac4a7"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void glcAppendCatalog </td> <td>(</td> <td class="paramtype">const GLCchar * </td> <td class="paramname"><em>inCatalog</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>This command appends the string <em>inCatalog</em> to the list <b>GLC_CATALOG_LIST</b>. </p> <p>The catalog is represented as a zero-terminated string. The interpretation of this string is specified by the value that has been set using <a class="el" href="group__context.html#ga78438d95f1150a00b051e2c10f683d94" title="This command assigns the value inStringType to the variable GLC_STRING_TYPE.">glcStringType()</a>.</p> <p>A catalog is a path to a list of masters. A master is a representation of a font that is stored outside QuesoGLC in a standard format such as TrueType or Type1.</p> <p>A catalog defines the list of masters that can be instantiated (that is, be used as fonts) in a GLC context.</p> <p>A font is a styllistically consistent set of glyphs that can be used to render some set of characters. Each font has a family name (for example Palatino) and a state variable that selects one of the faces (for example regular, bold, italic, bold italic) that the font contains. A typeface is the combination of a family and a face (for example Palatino Bold). </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">inCatalog</td><td>The catalog to append to the list <b>GLC_CATALOG_LIST</b> </td></tr> </table> </dd> </dl> <dl class="section see"><dt>See Also</dt><dd>glcGetList() with argument <b>GLC_CATALOG_LIST</b> </dd> <dd> <a class="el" href="group__context.html#gad9d771a80cebb0d5e346066d2636bca0" title="This command returns the value of the integer variable or constant identified by inAttrib.">glcGeti()</a> with argument <b>GLC_CATALOG_COUNT</b> </dd> <dd> <a class="el" href="group__master.html#ga3974a718a1e8f2dc8ab6dbc86e446712" title="This command prepends the string inCatalog to the list GLC_CATALOG_LIST.">glcPrependCatalog()</a> </dd> <dd> <a class="el" href="group__master.html#gaaeacc5b1480ec2aac9ebc2c265dfb070" title="This command removes a string from the list GLC_CATALOG_LIST.">glcRemoveCatalog()</a> </dd></dl> </div> </div> <a class="anchor" id="ga3974a718a1e8f2dc8ab6dbc86e446712"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void glcPrependCatalog </td> <td>(</td> <td class="paramtype">const GLCchar * </td> <td class="paramname"><em>inCatalog</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>This command prepends the string <em>inCatalog</em> to the list <b>GLC_CATALOG_LIST</b>. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">inCatalog</td><td>The catalog to prepend to the list <b>GLC_CATALOG_LIST</b> </td></tr> </table> </dd> </dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__master.html#gab0b37f7b9f9459aef7ec645a66bac4a7" title="This command appends the string inCatalog to the list GLC_CATALOG_LIST.">glcAppendCatalog()</a> </dd> <dd> <a class="el" href="group__master.html#gaaeacc5b1480ec2aac9ebc2c265dfb070" title="This command removes a string from the list GLC_CATALOG_LIST.">glcRemoveCatalog()</a> </dd></dl> </div> </div> <a class="anchor" id="gaaeacc5b1480ec2aac9ebc2c265dfb070"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void glcRemoveCatalog </td> <td>(</td> <td class="paramtype">GLint </td> <td class="paramname"><em>inIndex</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>This command removes a string from the list <b>GLC_CATALOG_LIST</b>. </p> <p>It removes the string at offset <em>inIndex</em> from the first element in the list. The command raises <b>GLC_PARAMETER_ERROR</b> if <em>inIndex</em> is less than zero or is greater than or equal to the value of the variable <b>GLC_CATALOG_COUNT</b>.</p> <p>QuesoGLC also destroys the masters that are defined in the corresponding catalog. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">inIndex</td><td>The string to remove from the catalog list <b>GLC_CATALOG_LIST</b> </td></tr> </table> </dd> </dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__master.html#gab0b37f7b9f9459aef7ec645a66bac4a7" title="This command appends the string inCatalog to the list GLC_CATALOG_LIST.">glcAppendCatalog()</a> </dd> <dd> <a class="el" href="group__master.html#ga3974a718a1e8f2dc8ab6dbc86e446712" title="This command prepends the string inCatalog to the list GLC_CATALOG_LIST.">glcPrependCatalog()</a> </dd></dl> </div> </div> </div><!-- contents --> </td> </tr> <tr> <td align="center" class="main"> <hr> <small> <font color="#cccccc">Generated on Sun Jan 13 2013 22:53:23 for QuesoGLC by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0></a> 1.8.3 written by Dimitri van Heesch © 1997-2005</font> </small> </td> </tr> </table> </td> </tr> </table> </body> </html>