Sophie

Sophie

distrib > Mandriva > 2010.1 > i586 > by-pkgid > ed376d6842ea322c25405e7c23b3bc12 > files > 101

libcommoncpp-devel-1.8.0-5.1mdv2010.1.i586.rpm

<!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>GNU CommonC++: ost::CommandOption Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.3 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</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><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespaceost.html">ost</a>::<a class="el" href="classost_1_1_command_option.html">CommandOption</a>
  </div>
</div>
<div class="contents">
<h1>ost::CommandOption Class Reference</h1><!-- doxytag: class="ost::CommandOption" -->
<p><a class="el" href="classost_1_1_command_option.html" title="CommandOption is the base class for all command line options.">CommandOption</a> is the base class for all command line options.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="cmdoptns_8h_source.html">cmdoptns.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for ost::CommandOption:</div>
<div class="dynsection">
 <div class="center">
  <img src="classost_1_1_command_option.png" usemap="#ost::CommandOption_map" alt=""/>
  <map id="ost::CommandOption_map" name="ost::CommandOption_map">
<area href="classost_1_1_command_option_no_arg.html" alt="ost::CommandOptionNoArg" shape="rect" coords="0,56,171,80"/>
<area href="classost_1_1_command_option_with_arg.html" alt="ost::CommandOptionWithArg" shape="rect" coords="181,56,352,80"/>
<area href="classost_1_1_command_option_arg.html" alt="ost::CommandOptionArg" shape="rect" coords="0,112,171,136"/>
<area href="classost_1_1_command_option_collect.html" alt="ost::CommandOptionCollect" shape="rect" coords="181,112,352,136"/>
<area href="classost_1_1_command_option_rest.html" alt="ost::CommandOptionRest" shape="rect" coords="362,112,533,136"/>
</map>
 </div>
</div>

<p><a href="classost_1_1_command_option-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493">OptionType</a> { <a class="el" href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493a51afdccef3c1eefa378b4ea79872fb9f">hasArg</a>, 
<a class="el" href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493a206297cbdc29de03edfa0e24d589b227">noArg</a>, 
<a class="el" href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493a4fbaf902c23f48a6d217585297f3afb5">trailing</a>, 
<a class="el" href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493a9ebaee9fbe6ef1338347908f6e410095">collect</a>
 }</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>OptionType is for denoting what type of option this is, with an arg, without an arg or the trailing args. </p>
 <a href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493">More...</a><br/></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#a7e42ca61d049698df46daae73bb205bb">~CommandOption</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A virtual destructor just in case.  <a href="#a7e42ca61d049698df46daae73bb205bb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#a989bf900aed6323812ae6922edcdc4af">CommandOption</a> (const char *inOptionName, const char *inOptionLetter, const char *inDescription, <a class="el" href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493">OptionType</a> inOptionType, bool inRequired=false, <a class="el" href="classost_1_1_command_option.html">CommandOption</a> **ppNext=&amp;<a class="el" href="namespaceost.html#a3b701311bbf7cf16f954820e316f5766">defaultCommandOptionList</a>)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classost_1_1_command_option.html" title="CommandOption is the base class for all command line options.">CommandOption</a> contructor.  <a href="#a989bf900aed6323812ae6922edcdc4af"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#a70394fb2a025443e6890e0e076a94477">foundOption</a> (<a class="el" href="classost_1_1_command_option_parse.html">CommandOptionParse</a> *cop, const char *value=0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">foundOption is called by the <a class="el" href="classost_1_1_command_option_parse.html" title="This is the CommandOptionParse interface class.">CommandOptionParse</a> object during the parsing of the command line options.  <a href="#a70394fb2a025443e6890e0e076a94477"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#ac6597549063ded15f8d50d72e8cd9bf6">foundOption</a> (<a class="el" href="classost_1_1_command_option_parse.html">CommandOptionParse</a> *cop, const char **value, int num)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">foundOption is called by the <a class="el" href="classost_1_1_command_option_parse.html" title="This is the CommandOptionParse interface class.">CommandOptionParse</a> object during the parsing of the command line options.  <a href="#ac6597549063ded15f8d50d72e8cd9bf6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#a1cc99afcc775ca21d16c38a0661839a2">parseDone</a> (<a class="el" href="classost_1_1_command_option_parse.html">CommandOptionParse</a> *cop)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Once parsing of command line options is complete, this method is called.  <a href="#a1cc99afcc775ca21d16c38a0661839a2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#af52fe62b7a0d3c40b726fa2447cb3b78">performTask</a> (<a class="el" href="classost_1_1_command_option_parse.html">CommandOptionParse</a> *cop)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Once <a class="el" href="classost_1_1_command_option.html" title="CommandOption is the base class for all command line options.">CommandOption</a> objects have completed parsing and there are no errors they may have some specific tasks to perform.  <a href="#af52fe62b7a0d3c40b726fa2447cb3b78"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#acf1272321b17a2cbe953ce23ffa6a5e8">hasValue</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">For fields with the required flag set, this method is used to determine if the Option has satisfied it's required status.  <a href="#acf1272321b17a2cbe953ce23ffa6a5e8"></a><br/></td></tr>
<tr><td colspan="2"><h2>Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#a3cf7d6f9d1943e981d29c38e2e188231">optionName</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Long option name, these will be preceded with "--" on the command line.  <a href="#a3cf7d6f9d1943e981d29c38e2e188231"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#ac894a27c5aeeb70ff07387bb721bd7c6">optionLetter</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">option letter, these will be preceded with "-" on the command line.  <a href="#ac894a27c5aeeb70ff07387bb721bd7c6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#ae7c1ad2ef21198b1bef933847ff5d197">description</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A short description of the option for Usage messages.  <a href="#ae7c1ad2ef21198b1bef933847ff5d197"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493">OptionType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#a2e5f9f895bda7cf7dbe48e0106866368">optionType</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This command option's OptionType.  <a href="#a2e5f9f895bda7cf7dbe48e0106866368"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#a05f8b1439cbf0cf33f47707a33baad57">required</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">True if this parameter is required.  <a href="#a05f8b1439cbf0cf33f47707a33baad57"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classost_1_1_command_option.html">CommandOption</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classost_1_1_command_option.html#a0dd94d805913bf11cd188de53baaf27c">next</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This next <a class="el" href="classost_1_1_command_option.html" title="CommandOption is the base class for all command line options.">CommandOption</a> in this list of options or nil if no more options exist.  <a href="#a0dd94d805913bf11cd188de53baaf27c"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p><a class="el" href="classost_1_1_command_option.html" title="CommandOption is the base class for all command line options.">CommandOption</a> is the base class for all command line options. </p>
<p>Command line options can be defined statically and used when constructing a command line parser onject using makeCommandOptionParse. This serves only as a base class to <a class="el" href="classost_1_1_command_option_with_arg.html" title="Derived class of CommandOption for options that have a value associated with them...">CommandOptionWithArg</a>, <a class="el" href="classost_1_1_command_option_rest.html" title="It only makes sense to have a single one of these set and it is exclusive with CommandOptionCollect...">CommandOptionRest</a> or <a class="el" href="classost_1_1_command_option_no_arg.html" title="CommandOption type for flags.">CommandOptionNoArg</a> which can also be used to derive more complex classes or even entire applications.</p>
<dl class="author"><dt><b>Author:</b></dt><dd>Gianni Mariani &lt;<a href="mailto:gianni@mariani.ws">gianni@mariani.ws</a>&gt; </dd></dl>
<dl><dt><b>Examples: </b></dt><dd>
<p><a class="el" href="cmdlineopt_8cpp-example.html#_a9">cmdlineopt.cpp</a>.</p>
</dd>
</dl><hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="ab56f222627bb3843d2b055d42ceaa493"></a><!-- doxytag: member="ost::CommandOption::OptionType" ref="ab56f222627bb3843d2b055d42ceaa493" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493">ost::CommandOption::OptionType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>OptionType is for denoting what type of option this is, with an arg, without an arg or the trailing args. </p>
<p>Option type </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="ab56f222627bb3843d2b055d42ceaa493a51afdccef3c1eefa378b4ea79872fb9f"></a><!-- doxytag: member="hasArg" ref="ab56f222627bb3843d2b055d42ceaa493a51afdccef3c1eefa378b4ea79872fb9f" args="" -->hasArg</em>&nbsp;</td><td>
<p>This option is associated with a value. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="ab56f222627bb3843d2b055d42ceaa493a206297cbdc29de03edfa0e24d589b227"></a><!-- doxytag: member="noArg" ref="ab56f222627bb3843d2b055d42ceaa493a206297cbdc29de03edfa0e24d589b227" args="" -->noArg</em>&nbsp;</td><td>
<p>This option is a flag only. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="ab56f222627bb3843d2b055d42ceaa493a4fbaf902c23f48a6d217585297f3afb5"></a><!-- doxytag: member="trailing" ref="ab56f222627bb3843d2b055d42ceaa493a4fbaf902c23f48a6d217585297f3afb5" args="" -->trailing</em>&nbsp;</td><td>
<p>Remaining of the command line arguments. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="ab56f222627bb3843d2b055d42ceaa493a9ebaee9fbe6ef1338347908f6e410095"></a><!-- doxytag: member="collect" ref="ab56f222627bb3843d2b055d42ceaa493a9ebaee9fbe6ef1338347908f6e410095" args="" -->collect</em>&nbsp;</td><td>
<p>Collect values that are not a value to an option. </p>
</td></tr>
</table>
</dd>
</dl>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a7e42ca61d049698df46daae73bb205bb"></a><!-- doxytag: member="ost::CommandOption::~CommandOption" ref="a7e42ca61d049698df46daae73bb205bb" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual ost::CommandOption::~CommandOption </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>A virtual destructor just in case. </p>

</div>
</div>
<a class="anchor" id="a989bf900aed6323812ae6922edcdc4af"></a><!-- doxytag: member="ost::CommandOption::CommandOption" ref="a989bf900aed6323812ae6922edcdc4af" args="(const char *inOptionName, const char *inOptionLetter, const char *inDescription, OptionType inOptionType, bool inRequired=false, CommandOption **ppNext=&amp;defaultCommandOptionList)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ost::CommandOption::CommandOption </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>inOptionName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>inOptionLetter</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>inDescription</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493">OptionType</a>&nbsp;</td>
          <td class="paramname"> <em>inOptionType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>inRequired</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classost_1_1_command_option.html">CommandOption</a> **&nbsp;</td>
          <td class="paramname"> <em>ppNext</em> = <code>&amp;<a class="el" href="namespaceost.html#a3b701311bbf7cf16f954820e316f5766">defaultCommandOptionList</a></code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p><a class="el" href="classost_1_1_command_option.html" title="CommandOption is the base class for all command line options.">CommandOption</a> contructor. </p>
<p>Note the default values for required and ppNext.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>inOptionName</em>&nbsp;</td><td>long option name </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>inOptionLetter</em>&nbsp;</td><td>short letter name </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>inDescription</em>&nbsp;</td><td>short description of the option </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>inOptionType</em>&nbsp;</td><td>the type of this option </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>inRequired</em>&nbsp;</td><td>true if option is required </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ppNext</em>&nbsp;</td><td>the linked list header </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ac6597549063ded15f8d50d72e8cd9bf6"></a><!-- doxytag: member="ost::CommandOption::foundOption" ref="ac6597549063ded15f8d50d72e8cd9bf6" args="(CommandOptionParse *cop, const char **value, int num)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void ost::CommandOption::foundOption </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classost_1_1_command_option_parse.html">CommandOptionParse</a> *&nbsp;</td>
          <td class="paramname"> <em>cop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char **&nbsp;</td>
          <td class="paramname"> <em>value</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>num</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>foundOption is called by the <a class="el" href="classost_1_1_command_option_parse.html" title="This is the CommandOptionParse interface class.">CommandOptionParse</a> object during the parsing of the command line options. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cop</em>&nbsp;</td><td>pointer to the command option parser </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>an array of values of this option </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>num</em>&nbsp;</td><td>number of values in the array </td></tr>
  </table>
  </dd>
</dl>

<p>Reimplemented in <a class="el" href="classost_1_1_command_option_with_arg.html#a7e012538193acafda06b609dc1dee369">ost::CommandOptionWithArg</a>.</p>

</div>
</div>
<a class="anchor" id="a70394fb2a025443e6890e0e076a94477"></a><!-- doxytag: member="ost::CommandOption::foundOption" ref="a70394fb2a025443e6890e0e076a94477" args="(CommandOptionParse *cop, const char *value=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void ost::CommandOption::foundOption </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classost_1_1_command_option_parse.html">CommandOptionParse</a> *&nbsp;</td>
          <td class="paramname"> <em>cop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>value</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>foundOption is called by the <a class="el" href="classost_1_1_command_option_parse.html" title="This is the CommandOptionParse interface class.">CommandOptionParse</a> object during the parsing of the command line options. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cop</em>&nbsp;</td><td>pointer to the command option parser </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>the value of this option </td></tr>
  </table>
  </dd>
</dl>

<p>Reimplemented in <a class="el" href="classost_1_1_command_option_with_arg.html#aa7a9e87b68ef493f84688355062fc9a8">ost::CommandOptionWithArg</a>, and <a class="el" href="classost_1_1_command_option_no_arg.html#a5762755aabab3298e9e9d2fe45f4de61">ost::CommandOptionNoArg</a>.</p>

</div>
</div>
<a class="anchor" id="acf1272321b17a2cbe953ce23ffa6a5e8"></a><!-- doxytag: member="ost::CommandOption::hasValue" ref="acf1272321b17a2cbe953ce23ffa6a5e8" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool ost::CommandOption::hasValue </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>For fields with the required flag set, this method is used to determine if the Option has satisfied it's required status. </p>
<p>The default methods simply returns true if any values have been found. This could be specialized to return true based on some other criteria. </p>

<p>Reimplemented in <a class="el" href="classost_1_1_command_option_with_arg.html#acf0c03d84b032dab059ae219922dadde">ost::CommandOptionWithArg</a>.</p>

</div>
</div>
<a class="anchor" id="a1cc99afcc775ca21d16c38a0661839a2"></a><!-- doxytag: member="ost::CommandOption::parseDone" ref="a1cc99afcc775ca21d16c38a0661839a2" args="(CommandOptionParse *cop)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void ost::CommandOption::parseDone </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classost_1_1_command_option_parse.html">CommandOptionParse</a> *&nbsp;</td>
          <td class="paramname"> <em>cop</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Once parsing of command line options is complete, this method is called. </p>
<p>This can be used to perform last minute checks on the options collected.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cop</em>&nbsp;</td><td>pointer to the command option parser </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="cmdlineopt_8cpp-example.html#a12">cmdlineopt.cpp</a>.</dd>
</dl>
</div>
</div>
<a class="anchor" id="af52fe62b7a0d3c40b726fa2447cb3b78"></a><!-- doxytag: member="ost::CommandOption::performTask" ref="af52fe62b7a0d3c40b726fa2447cb3b78" args="(CommandOptionParse *cop)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void ost::CommandOption::performTask </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classost_1_1_command_option_parse.html">CommandOptionParse</a> *&nbsp;</td>
          <td class="paramname"> <em>cop</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Once <a class="el" href="classost_1_1_command_option.html" title="CommandOption is the base class for all command line options.">CommandOption</a> objects have completed parsing and there are no errors they may have some specific tasks to perform. </p>
<p>PerformTask must return.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cop</em>&nbsp;</td><td>pointer to the command option parser </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="cmdlineopt_8cpp-example.html#a14">cmdlineopt.cpp</a>.</dd>
</dl>
</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="ae7c1ad2ef21198b1bef933847ff5d197"></a><!-- doxytag: member="ost::CommandOption::description" ref="ae7c1ad2ef21198b1bef933847ff5d197" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="classost_1_1_command_option.html#ae7c1ad2ef21198b1bef933847ff5d197">ost::CommandOption::description</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>A short description of the option for Usage messages. </p>
<p>e.g. Usage: mycommand : blah -f, --file &lt;DESCRIPTION here&gt; </p>

</div>
</div>
<a class="anchor" id="a0dd94d805913bf11cd188de53baaf27c"></a><!-- doxytag: member="ost::CommandOption::next" ref="a0dd94d805913bf11cd188de53baaf27c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classost_1_1_command_option.html">CommandOption</a>* <a class="el" href="classost_1_1_command_option.html#a0dd94d805913bf11cd188de53baaf27c">ost::CommandOption::next</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This next <a class="el" href="classost_1_1_command_option.html" title="CommandOption is the base class for all command line options.">CommandOption</a> in this list of options or nil if no more options exist. </p>

</div>
</div>
<a class="anchor" id="ac894a27c5aeeb70ff07387bb721bd7c6"></a><!-- doxytag: member="ost::CommandOption::optionLetter" ref="ac894a27c5aeeb70ff07387bb721bd7c6" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="classost_1_1_command_option.html#ac894a27c5aeeb70ff07387bb721bd7c6">ost::CommandOption::optionLetter</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>option letter, these will be preceded with "-" on the command line. </p>
<p>e.g. -f foo.x </p>

</div>
</div>
<a class="anchor" id="a3cf7d6f9d1943e981d29c38e2e188231"></a><!-- doxytag: member="ost::CommandOption::optionName" ref="a3cf7d6f9d1943e981d29c38e2e188231" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="classost_1_1_command_option.html#a3cf7d6f9d1943e981d29c38e2e188231">ost::CommandOption::optionName</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Long option name, these will be preceded with "--" on the command line. </p>
<p>e.g. --file foo.x </p>

</div>
</div>
<a class="anchor" id="a2e5f9f895bda7cf7dbe48e0106866368"></a><!-- doxytag: member="ost::CommandOption::optionType" ref="a2e5f9f895bda7cf7dbe48e0106866368" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classost_1_1_command_option.html#ab56f222627bb3843d2b055d42ceaa493">OptionType</a> <a class="el" href="classost_1_1_command_option.html#a2e5f9f895bda7cf7dbe48e0106866368">ost::CommandOption::optionType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This command option's OptionType. </p>

</div>
</div>
<a class="anchor" id="a05f8b1439cbf0cf33f47707a33baad57"></a><!-- doxytag: member="ost::CommandOption::required" ref="a05f8b1439cbf0cf33f47707a33baad57" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classost_1_1_command_option.html#a05f8b1439cbf0cf33f47707a33baad57">ost::CommandOption::required</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>True if this parameter is required. </p>
<p>If the parameter is not supplied and required is true, an error will be flagged in the option processor. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="cmdoptns_8h_source.html">cmdoptns.h</a></li>
</ul>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated on Fri Nov 12 09:55:46 2010 for GNU CommonC++ by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>