<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>vrq: CAttr Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> <table border="0" cellspacing="0" cellpadding="0" width="100%"> <tr> <td width="180"><a href="index.html"><img src="vrq.png" width="150" height="100" border="0" alt="vrq"></a></td> <td background="top_bg.png" align="right" width="100%"> <img src="glyth.png" width="500" height="100" border="0" alt=""> </td> </tr> <tr> <td background="#FFFFFF" align="right" width="50" height="4"></td> </tr> </table> </head><body> <!-- Generated by Doxygen 1.7.1 --> <div class="navigation" id="top"> <div class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</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> </ul> </div> <div class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</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="#nested-classes">Classes</a> | <a href="#pub-methods">Public Member Functions</a> </div> <div class="headertitle"> <h1>CAttr Class Reference</h1> </div> </div> <div class="contents"> <!-- doxytag: class="CAttr" --><!-- doxytag: inherits="CDecl" --> <p>Declaration object for holding lists of verilog attributes and their corresponding expressions. <a href="#_details">More...</a></p> <p><code>#include <<a class="el" href="cattr_8h_source.html">cattr.h</a>></code></p> <div class="dynheader"> Inheritance diagram for CAttr:</div> <div class="dyncontent"> <div class="center"> <img src="classCAttr.png" usemap="#CAttr_map" alt=""/> <map id="CAttr_map" name="CAttr_map"> <area href="classCDecl.html" alt="CDecl" shape="rect" coords="0,56,58,80"/> <area href="classCObject.html" alt="CObject" shape="rect" coords="0,0,58,24"/> </map> </div> <p><a href="classCAttr-members.html">List of all members.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="nested-classes"></a> Classes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><b>Entry</b></td></tr> <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="classCAttr.html#a22805c92a6dfc8cc73a65eeda2ead195">CAttr</a> (<a class="el" href="structCoord__t.html">Coord_t</a> *aLoc)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a attribute object. <a href="#a22805c92a6dfc8cc73a65eeda2ead195"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classCDecl.html">CDecl</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classCAttr.html#a59dbae3a9cb7f10003ae62cb129deb59">Clone</a> (<a class="el" href="classCObstack.html">CObstack</a> *heap)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a clone of this declaration. <a href="#a59dbae3a9cb7f10003ae62cb129deb59"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCAttr.html#aec107dcc67955b2682d5c43ddf6f8385">AddAttribute</a> (const char *name, <a class="el" href="classCNode.html">CNode</a> *aExp)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add an attribute to list. <a href="#aec107dcc67955b2682d5c43ddf6f8385"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classCAttr.html#a14d209e994875e2a541fc834a31fd1a1">GetAttributeCount</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the number of attributes in list. <a href="#a14d209e994875e2a541fc834a31fd1a1"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classCAttr.html#a814d8cbf63fc590a917022d14f725aeb">GetAttributeName</a> (int index)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get an attribute by index. <a href="#a814d8cbf63fc590a917022d14f725aeb"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCNode.html">CNode</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classCAttr.html#a550900a9e23b18fe43ee16b7579ee2e9">GetAttributeExpression</a> (int index)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get expression for attribute by index. <a href="#a550900a9e23b18fe43ee16b7579ee2e9"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCNode.html">CNode</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classCAttr.html#a6b19206672d8ccfb16de2c730c6c1d56">GetAttributeExpression</a> (const char *name)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get expression for attribute by name. <a href="#a6b19206672d8ccfb16de2c730c6c1d56"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classCAttr.html#a69ef206b35137c45d7ee29c86ce36b6c">HasAttribute</a> (const char *name)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if attribute is in list. <a href="#a69ef206b35137c45d7ee29c86ce36b6c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCAttr.html#a9c41bce746b2f1747666863a40e78d30">Dump</a> (FILE *f)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Dump attributes to file. <a href="#a9c41bce746b2f1747666863a40e78d30"></a><br/></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>Declaration object for holding lists of verilog attributes and their corresponding expressions. </p> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a22805c92a6dfc8cc73a65eeda2ead195"></a><!-- doxytag: member="CAttr::CAttr" ref="a22805c92a6dfc8cc73a65eeda2ead195" args="(Coord_t *aLoc)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">CAttr::CAttr </td> <td>(</td> <td class="paramtype"><a class="el" href="structCoord__t.html">Coord_t</a> * </td> <td class="paramname"> <em>aLoc</em></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Create a attribute object. </p> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="aec107dcc67955b2682d5c43ddf6f8385"></a><!-- doxytag: member="CAttr::AddAttribute" ref="aec107dcc67955b2682d5c43ddf6f8385" args="(const char *name, CNode *aExp)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void CAttr::AddAttribute </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classCNode.html">CNode</a> * </td> <td class="paramname"> <em>aExp</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Add an attribute to list. </p> <dl><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>attribute name. </td></tr> <tr><td valign="top"></td><td valign="top"><em>aExp</em> </td><td>attribute expression. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a59dbae3a9cb7f10003ae62cb129deb59"></a><!-- doxytag: member="CAttr::Clone" ref="a59dbae3a9cb7f10003ae62cb129deb59" args="(CObstack *heap)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classCDecl.html">CDecl</a>* CAttr::Clone </td> <td>(</td> <td class="paramtype"><a class="el" href="classCObstack.html">CObstack</a> * </td> <td class="paramname"> <em>heap</em></td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Create a clone of this declaration. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>heap</em> </td><td>heap to use for allocation. </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>new declaration. </dd></dl> <p>Implements <a class="el" href="classCDecl.html#a3d992b7f070ff86395c5eda30e0c4043">CDecl</a>.</p> </div> </div> <a class="anchor" id="a9c41bce746b2f1747666863a40e78d30"></a><!-- doxytag: member="CAttr::Dump" ref="a9c41bce746b2f1747666863a40e78d30" args="(FILE *f)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void CAttr::Dump </td> <td>(</td> <td class="paramtype">FILE * </td> <td class="paramname"> <em>f</em></td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Dump attributes to file. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>f</em> </td><td>file descriptor. </td></tr> </table> </dd> </dl> <p>Reimplemented from <a class="el" href="classCDecl.html#abf20508e80db983fc69f3bf5e3901af4">CDecl</a>.</p> </div> </div> <a class="anchor" id="a14d209e994875e2a541fc834a31fd1a1"></a><!-- doxytag: member="CAttr::GetAttributeCount" ref="a14d209e994875e2a541fc834a31fd1a1" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int CAttr::GetAttributeCount </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get the number of attributes in list. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>number of attributes in list. </dd></dl> </div> </div> <a class="anchor" id="a550900a9e23b18fe43ee16b7579ee2e9"></a><!-- doxytag: member="CAttr::GetAttributeExpression" ref="a550900a9e23b18fe43ee16b7579ee2e9" args="(int index)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classCNode.html">CNode</a>* CAttr::GetAttributeExpression </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>index</em></td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get expression for attribute by index. </p> <dl><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 attribute. </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>attribute expression. </dd></dl> </div> </div> <a class="anchor" id="a6b19206672d8ccfb16de2c730c6c1d56"></a><!-- doxytag: member="CAttr::GetAttributeExpression" ref="a6b19206672d8ccfb16de2c730c6c1d56" args="(const char *name)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classCNode.html">CNode</a>* CAttr::GetAttributeExpression </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Get expression for attribute by name. </p> <dl><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>name of attribute. </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>attribute expression. NULL if not present. </dd></dl> </div> </div> <a class="anchor" id="a814d8cbf63fc590a917022d14f725aeb"></a><!-- doxytag: member="CAttr::GetAttributeName" ref="a814d8cbf63fc590a917022d14f725aeb" args="(int index)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* CAttr::GetAttributeName </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>index</em></td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get an attribute by index. </p> <dl><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 attribute (0 based). </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>attribute name. </dd></dl> </div> </div> <a class="anchor" id="a69ef206b35137c45d7ee29c86ce36b6c"></a><!-- doxytag: member="CAttr::HasAttribute" ref="a69ef206b35137c45d7ee29c86ce36b6c" args="(const char *name)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int CAttr::HasAttribute </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Check if attribute is in list. </p> <dl><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>name of attribute. </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>non-zero if attribute is in list. </dd></dl> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>/net/fileserver/nas/home/mdh/vrq/src/<a class="el" href="cattr_8h_source.html">cattr.h</a></li> </ul> </div> <hr class="footer"/><address class="footer"><small>Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address> </body> </html>