git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@40 331e1502-861f-0410-8da2-ba01fb791d7f
519 lines
28 KiB
HTML
519 lines
28 KiB
HTML
<!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>EO: eoParser Class Reference</title>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
|
</head><body>
|
|
<!-- Generated by Doxygen 1.3.9.1 -->
|
|
<div class="qindex"> <form class="search" action="search.php" method="get">
|
|
<a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Class Members</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
|
|
<h1>eoParser Class Reference</h1>eoParser: command line parser and configuration file reader This class is persistent, so it can be stored and reloaded to restore parameter settings.
|
|
<a href="#_details">More...</a>
|
|
<p>
|
|
<code>#include <<a class="el" href="eo_parser_8h-source.html">eoParser.h</a>></code>
|
|
<p>
|
|
<p>Inheritance diagram for eoParser:
|
|
<p><center><img src="classeo_parser.png" usemap="#eoParser_map" border="0" alt=""></center>
|
|
<map name="eoParser_map">
|
|
<area href="classeo_parameter_loader.html" alt="eoParameterLoader" shape="rect" coords="0,56,124,80">
|
|
<area href="classeo_object.html" alt="eoObject" shape="rect" coords="134,56,258,80">
|
|
<area href="classeo_persistent.html" alt="eoPersistent" shape="rect" coords="268,56,392,80">
|
|
<area href="classeo_printable.html" alt="eoPrintable" shape="rect" coords="268,0,392,24">
|
|
</map>
|
|
<a href="classeo_parser-members.html">List of all members.</a><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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a0">eoParser</a> (unsigned _argc, char **_argv, std::string _programDescription="", std::string _lFileParamName="param-file", char _shortHand= 'p')</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor a complete constructor that reads the command line an optionally reads a configuration file. <a href="#a0"></a><br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a1" doxytag="eoParser::processParam"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a1">processParam</a> (<a class="el" href="classeo_param.html">eoParam</a> &param, std::string section="")</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Processes the parameter and puts it in the appropriate section for readability. <br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a2">readFrom</a> (std::istream &is)</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Read object. <a href="#a2"></a><br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a3">printOn</a> (std::ostream &os) const </td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Write object. <a href="#a3"></a><br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a4" doxytag="eoParser::className"></a>
|
|
std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a4">className</a> (void) const </td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">className for readibility <br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5" doxytag="eoParser::userNeedsHelp"></a>
|
|
bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a5">userNeedsHelp</a> (void)</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">true if the user made an error or asked for help <br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a6" doxytag="eoParser::printHelp"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a6">printHelp</a> (std::ostream &os)</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Prints an automatic help in the specified output using the information provided by parameters. <br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a7" doxytag="eoParser::ProgramName"></a>
|
|
std::string </td><td class="memItemRight" valign="bottom"><b>ProgramName</b> ()</td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a8">isItThere</a> (<a class="el" href="classeo_param.html">eoParam</a> &_param) const </td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Has param been entered by user? <a href="#a8"></a><br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classeo_param.html">eoParam</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a9">getParamWithLongName</a> (const std::string &_name) const </td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">get a handle on a param from its longName <a href="#a9"></a><br></td></tr>
|
|
<tr><td class="memTemplParams" nowrap colspan="2">template<class ValueType> </td></tr>
|
|
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="classeo_value_param.html">eoValueParam</a>< ValueType > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a10">getORcreateParam</a> (ValueType _defaultValue, std::string _longName, std::string _description, char _shortHand=0, std::string _section="", bool _required=false)</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get or create parameter. <a href="#a10"></a><br></td></tr>
|
|
<tr><td class="memTemplParams" nowrap colspan="2">template<class ValueType> </td></tr>
|
|
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="classeo_value_param.html">eoValueParam</a>< ValueType > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a11">setORcreateParam</a> (ValueType _defaultValue, std::string _longName, std::string _description, char _shortHand=0, std::string _section="", bool _required=false)</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set parameter value or create parameter. <a href="#a11"></a><br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a12" doxytag="eoParser::setStopOnUnknownParam"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a12">setStopOnUnknownParam</a> (bool _b)</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">accessors to the stopOnUnknownParam value <br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a13" doxytag="eoParser::getStopOnUnknownParam"></a>
|
|
bool </td><td class="memItemRight" valign="bottom"><b>getStopOnUnknownParam</b> ()</td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a14" doxytag="eoParser::setPrefix"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_parser.html#a14">setPrefix</a> (const std::string &_prefix)</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Prefix handling. <br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a15" doxytag="eoParser::resetPrefix"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><b>resetPrefix</b> ()</td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a16" doxytag="eoParser::getPrefix"></a>
|
|
std::string </td><td class="memItemRight" valign="bottom"><b>getPrefix</b> ()</td></tr>
|
|
|
|
<tr><td colspan="2"><br><h2>Private Types</h2></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="y0" doxytag="eoParser::MultiMapType"></a>
|
|
typedef std::multimap< std::string,<br>
|
|
<a class="el" href="classeo_param.html">eoParam</a> * > </td><td class="memItemRight" valign="bottom"><b>MultiMapType</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="y1" doxytag="eoParser::ShortNameMapType"></a>
|
|
typedef std::map< char, std::string > </td><td class="memItemRight" valign="bottom"><b>ShortNameMapType</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="y2" doxytag="eoParser::LongNameMapType"></a>
|
|
typedef std::map< std::string,<br>
|
|
std::string > </td><td class="memItemRight" valign="bottom"><b>LongNameMapType</b></td></tr>
|
|
|
|
<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d0" doxytag="eoParser::doRegisterParam"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><b>doRegisterParam</b> (<a class="el" href="classeo_param.html">eoParam</a> &param) const </td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d1" doxytag="eoParser::getValue"></a>
|
|
std::pair< bool, std::string > </td><td class="memItemRight" valign="bottom"><b>getValue</b> (<a class="el" href="classeo_param.html">eoParam</a> &_param) const </td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d2" doxytag="eoParser::updateParameters"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><b>updateParameters</b> () const </td></tr>
|
|
|
|
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r0" doxytag="eoParser::params"></a>
|
|
MultiMapType </td><td class="memItemRight" valign="bottom"><b>params</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r1" doxytag="eoParser::programName"></a>
|
|
std::string </td><td class="memItemRight" valign="bottom"><b>programName</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r2" doxytag="eoParser::programDescription"></a>
|
|
std::string </td><td class="memItemRight" valign="bottom"><b>programDescription</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r3" doxytag="eoParser::shortNameMap"></a>
|
|
ShortNameMapType </td><td class="memItemRight" valign="bottom"><b>shortNameMap</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r4" doxytag="eoParser::longNameMap"></a>
|
|
LongNameMapType </td><td class="memItemRight" valign="bottom"><b>longNameMap</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r5" doxytag="eoParser::needHelp"></a>
|
|
<a class="el" href="classeo_value_param.html">eoValueParam</a>< bool > </td><td class="memItemRight" valign="bottom"><b>needHelp</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r6" doxytag="eoParser::stopOnUnknownParam"></a>
|
|
<a class="el" href="classeo_value_param.html">eoValueParam</a>< bool > </td><td class="memItemRight" valign="bottom"><b>stopOnUnknownParam</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r7" doxytag="eoParser::messages"></a>
|
|
std::vector< std::string > </td><td class="memItemRight" valign="bottom"><b>messages</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r8" doxytag="eoParser::prefix"></a>
|
|
std::string </td><td class="memItemRight" valign="bottom"><b>prefix</b></td></tr>
|
|
|
|
</table>
|
|
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
|
eoParser: command line parser and configuration file reader This class is persistent, so it can be stored and reloaded to restore parameter settings.
|
|
<p>
|
|
|
|
<p>
|
|
Definition at line <a class="el" href="eo_parser_8h-source.html#l00100">100</a> of file <a class="el" href="eo_parser_8h-source.html">eoParser.h</a>.<hr><h2>Constructor & Destructor Documentation</h2>
|
|
<a class="anchor" name="a0" doxytag="eoParser::eoParser"></a><p>
|
|
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
|
<tr>
|
|
<td class="mdRow">
|
|
<table cellpadding="0" cellspacing="0" border="0">
|
|
<tr>
|
|
<td class="md" nowrap valign="top">eoParser::eoParser </td>
|
|
<td class="md" valign="top">( </td>
|
|
<td class="md" nowrap valign="top">unsigned </td>
|
|
<td class="mdname" nowrap> <em>_argc</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>char ** </td>
|
|
<td class="mdname" nowrap> <em>_argv</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>std::string </td>
|
|
<td class="mdname" nowrap> <em>_programDescription</em> = <code>""</code>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>std::string </td>
|
|
<td class="mdname" nowrap> <em>_lFileParamName</em> = <code>"param-file"</code>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>char </td>
|
|
<td class="mdname" nowrap> <em>_shortHand</em> = <code>'p'</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md"></td>
|
|
<td class="md">) </td>
|
|
<td class="md" colspan="2"></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<table cellspacing="5" cellpadding="0" border="0">
|
|
<tr>
|
|
<td>
|
|
|
|
</td>
|
|
<td>
|
|
|
|
<p>
|
|
Constructor a complete constructor that reads the command line an optionally reads a configuration file.
|
|
<p>
|
|
myEo --param-file=param.rc will then load using the parameter file param.rc<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>_argc</em> </td><td>command line arguments count </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_argv</em> </td><td>command line parameters </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_programDescription</em> </td><td>Description of the work the program does </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_lFileParamName</em> </td><td>Name of the parameter specifying the configuration file (--param-file) </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_shortHand</em> </td><td>Single charachter shorthand for specifying the configuration file </td></tr>
|
|
</table>
|
|
</dl>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<hr><h2>Member Function Documentation</h2>
|
|
<a class="anchor" name="a2" doxytag="eoParser::readFrom"></a><p>
|
|
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
|
<tr>
|
|
<td class="mdRow">
|
|
<table cellpadding="0" cellspacing="0" border="0">
|
|
<tr>
|
|
<td class="md" nowrap valign="top">void eoParser::readFrom </td>
|
|
<td class="md" valign="top">( </td>
|
|
<td class="md" nowrap valign="top">std::istream & </td>
|
|
<td class="mdname1" valign="top" nowrap> <em>is</em> </td>
|
|
<td class="md" valign="top"> ) </td>
|
|
<td class="md" nowrap><code> [virtual]</code></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<table cellspacing="5" cellpadding="0" border="0">
|
|
<tr>
|
|
<td>
|
|
|
|
</td>
|
|
<td>
|
|
|
|
<p>
|
|
Read object.
|
|
<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>_is</em> </td><td>A std::istream. </td></tr>
|
|
</table>
|
|
</dl>
|
|
<dl compact><dt><b>Exceptions:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>runtime_std::exception</em> </td><td>If a valid object can't be read. </td></tr>
|
|
</table>
|
|
</dl>
|
|
|
|
<p>
|
|
Implements <a class="el" href="classeo_persistent.html#a1">eoPersistent</a>. </td>
|
|
</tr>
|
|
</table>
|
|
<a class="anchor" name="a3" doxytag="eoParser::printOn"></a><p>
|
|
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
|
<tr>
|
|
<td class="mdRow">
|
|
<table cellpadding="0" cellspacing="0" border="0">
|
|
<tr>
|
|
<td class="md" nowrap valign="top">void eoParser::printOn </td>
|
|
<td class="md" valign="top">( </td>
|
|
<td class="md" nowrap valign="top">std::ostream & </td>
|
|
<td class="mdname1" valign="top" nowrap> <em>os</em> </td>
|
|
<td class="md" valign="top"> ) </td>
|
|
<td class="md" nowrap> const<code> [virtual]</code></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<table cellspacing="5" cellpadding="0" border="0">
|
|
<tr>
|
|
<td>
|
|
|
|
</td>
|
|
<td>
|
|
|
|
<p>
|
|
Write object.
|
|
<p>
|
|
It's called printOn since it prints the object on a stream. <dl compact><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>_os</em> </td><td>A std::ostream. </td></tr>
|
|
</table>
|
|
</dl>
|
|
|
|
<p>
|
|
Implements <a class="el" href="classeo_printable.html#a1">eoPrintable</a>. </td>
|
|
</tr>
|
|
</table>
|
|
<a class="anchor" name="a8" doxytag="eoParser::isItThere"></a><p>
|
|
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
|
<tr>
|
|
<td class="mdRow">
|
|
<table cellpadding="0" cellspacing="0" border="0">
|
|
<tr>
|
|
<td class="md" nowrap valign="top">virtual bool eoParser::isItThere </td>
|
|
<td class="md" valign="top">( </td>
|
|
<td class="md" nowrap valign="top"><a class="el" href="classeo_param.html">eoParam</a> & </td>
|
|
<td class="mdname1" valign="top" nowrap> <em>_param</em> </td>
|
|
<td class="md" valign="top"> ) </td>
|
|
<td class="md" nowrap> const<code> [inline, virtual]</code></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<table cellspacing="5" cellpadding="0" border="0">
|
|
<tr>
|
|
<td>
|
|
|
|
</td>
|
|
<td>
|
|
|
|
<p>
|
|
Has param been entered by user?
|
|
<p>
|
|
Checks if _param has been actually entered by the user
|
|
<p>
|
|
Implements <a class="el" href="classeo_parameter_loader.html#a2">eoParameterLoader</a>.
|
|
<p>
|
|
Definition at line <a class="el" href="eo_parser_8h-source.html#l00148">148</a> of file <a class="el" href="eo_parser_8h-source.html">eoParser.h</a>.
|
|
<p>
|
|
Referenced by <a class="el" href="eo_parser_8h-source.html#l00211">setORcreateParam()</a>. </td>
|
|
</tr>
|
|
</table>
|
|
<a class="anchor" name="a9" doxytag="eoParser::getParamWithLongName"></a><p>
|
|
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
|
<tr>
|
|
<td class="mdRow">
|
|
<table cellpadding="0" cellspacing="0" border="0">
|
|
<tr>
|
|
<td class="md" nowrap valign="top"><a class="el" href="classeo_param.html">eoParam</a>* eoParser::getParamWithLongName </td>
|
|
<td class="md" valign="top">( </td>
|
|
<td class="md" nowrap valign="top">const std::string & </td>
|
|
<td class="mdname1" valign="top" nowrap> <em>_name</em> </td>
|
|
<td class="md" valign="top"> ) </td>
|
|
<td class="md" nowrap> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<table cellspacing="5" cellpadding="0" border="0">
|
|
<tr>
|
|
<td>
|
|
|
|
</td>
|
|
<td>
|
|
|
|
<p>
|
|
get a handle on a param from its longName
|
|
<p>
|
|
if not found, returns 0 (null pointer :-)<p>
|
|
Not very clean (requires hard-coding of the long name twice!) but very useful in many occasions...
|
|
<p>
|
|
Referenced by <a class="el" href="eo_parser_8h-source.html#l00173">getORcreateParam()</a>. </td>
|
|
</tr>
|
|
</table>
|
|
<a class="anchor" name="a10" doxytag="eoParser::getORcreateParam"></a><p>
|
|
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
|
<tr>
|
|
<td class="mdRow">
|
|
<table cellpadding="0" cellspacing="0" border="0">
|
|
<tr>
|
|
<td class="md" colspan="4">
|
|
template<class ValueType> </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap valign="top"><a class="el" href="classeo_value_param.html">eoValueParam</a><ValueType>& eoParser::getORcreateParam </td>
|
|
<td class="md" valign="top">( </td>
|
|
<td class="md" nowrap valign="top">ValueType </td>
|
|
<td class="mdname" nowrap> <em>_defaultValue</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>std::string </td>
|
|
<td class="mdname" nowrap> <em>_longName</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>std::string </td>
|
|
<td class="mdname" nowrap> <em>_description</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>char </td>
|
|
<td class="mdname" nowrap> <em>_shortHand</em> = <code>0</code>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>std::string </td>
|
|
<td class="mdname" nowrap> <em>_section</em> = <code>""</code>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>bool </td>
|
|
<td class="mdname" nowrap> <em>_required</em> = <code>false</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md"></td>
|
|
<td class="md">) </td>
|
|
<td class="md" colspan="2"><code> [inline]</code></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<table cellspacing="5" cellpadding="0" border="0">
|
|
<tr>
|
|
<td>
|
|
|
|
</td>
|
|
<td>
|
|
|
|
<p>
|
|
Get or create parameter.
|
|
<p>
|
|
It seems finally that the easiest use of the above method is through the following, whose interface is similar to that of the widely-used createParam.<p>
|
|
For some (probably very stupid) reason, I failed to put it in the .cpp. Any hint???
|
|
<p>
|
|
Definition at line <a class="el" href="eo_parser_8h-source.html#l00173">173</a> of file <a class="el" href="eo_parser_8h-source.html">eoParser.h</a>.
|
|
<p>
|
|
References <a class="el" href="eo_parser_8h-source.html#l00070">eoParameterLoader::createParam()</a>, and <a class="el" href="classeo_parser.html#a9">getParamWithLongName()</a>. </td>
|
|
</tr>
|
|
</table>
|
|
<a class="anchor" name="a11" doxytag="eoParser::setORcreateParam"></a><p>
|
|
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
|
<tr>
|
|
<td class="mdRow">
|
|
<table cellpadding="0" cellspacing="0" border="0">
|
|
<tr>
|
|
<td class="md" colspan="4">
|
|
template<class ValueType> </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap valign="top"><a class="el" href="classeo_value_param.html">eoValueParam</a><ValueType>& eoParser::setORcreateParam </td>
|
|
<td class="md" valign="top">( </td>
|
|
<td class="md" nowrap valign="top">ValueType </td>
|
|
<td class="mdname" nowrap> <em>_defaultValue</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>std::string </td>
|
|
<td class="mdname" nowrap> <em>_longName</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>std::string </td>
|
|
<td class="mdname" nowrap> <em>_description</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>char </td>
|
|
<td class="mdname" nowrap> <em>_shortHand</em> = <code>0</code>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>std::string </td>
|
|
<td class="mdname" nowrap> <em>_section</em> = <code>""</code>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>bool </td>
|
|
<td class="mdname" nowrap> <em>_required</em> = <code>false</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md"></td>
|
|
<td class="md">) </td>
|
|
<td class="md" colspan="2"><code> [inline]</code></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<table cellspacing="5" cellpadding="0" border="0">
|
|
<tr>
|
|
<td>
|
|
|
|
</td>
|
|
<td>
|
|
|
|
<p>
|
|
Set parameter value or create parameter.
|
|
<p>
|
|
This makes sure that the specified parameter has the given value. If the parameter does not exist yet, it is created.<p>
|
|
This requires that operator<< is defined for ValueType.<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>_defaultValue</em> </td><td>Default value. </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_longName</em> </td><td>Long name of the argument. </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_description</em> </td><td>Description of the parameter. </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_shortName</em> </td><td>Short name of the argument (Optional) </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_section</em> </td><td>Name of the section where the parameter belongs. </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_required</em> </td><td>Is the parameter mandatory? </td></tr>
|
|
</table>
|
|
</dl>
|
|
<dl compact><dt><b>Returns:</b></dt><dd>Corresponding parameter. </dd></dl>
|
|
|
|
<p>
|
|
Definition at line <a class="el" href="eo_parser_8h-source.html#l00211">211</a> of file <a class="el" href="eo_parser_8h-source.html">eoParser.h</a>.
|
|
<p>
|
|
References <a class="el" href="eo_parser_8h-source.html#l00070">eoParameterLoader::createParam()</a>, <a class="el" href="eo_parser_8h-source.html#l00148">isItThere()</a>, and <a class="el" href="eo_param_8h-source.html#l00187">eoValueParam< ValueType >::setValue()</a>. </td>
|
|
</tr>
|
|
</table>
|
|
<hr>The documentation for this class was generated from the following file:<ul>
|
|
<li><a class="el" href="eo_parser_8h-source.html">eoParser.h</a></ul>
|
|
<hr size="1"><address style="align: right;"><small>Generated on Thu Oct 19 05:06:52 2006 for EO by
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.3.9.1 </small></address>
|
|
</body>
|
|
</html>
|