Sophie

Sophie

distrib > * > 2010.0 > * > by-pkgid > 82bf76c75b44c3e54c5dc9d8c4b11ab5 > files > 118

cgicc-3.2.8-1mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
   "http://www.w3.org/TR/REC-html40/loose.dtd">

<html lang="en" dir="LTR">

<head>
  <!-- $Id: header.html,v 1.5 2004/06/12 01:58:25 sbooth Exp $ -->
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  <title>cgicc: cgicc::CgiInput Class Reference</title>
  <link rev="made" href="mailto:bug-cgicc@gnu.org" />
  <link href="doxygen.css" rel="stylesheet" type="text/css" />
  <link href="cgicc-doc.css" rel="stylesheet" type="text/css" />
</head>

<body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</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>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</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="namespacecgicc.html">cgicc</a>::<a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a>
  </div>
</div>
<div class="contents">
<h1>cgicc::CgiInput Class Reference</h1><!-- doxytag: class="cgicc::CgiInput" -->Class that abstracts a data source.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="CgiInput_8h_source.html">cgicc/CgiInput.h</a>&gt;</code>
<p>

<p>
<a href="classcgicc_1_1CgiInput-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 colspan="2"><div class="groupHeader">Constructor and Destructor</div></td></tr>
<tr><td colspan="2"><div class="groupText"><br><br></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcgicc_1_1CgiInput.html#b3c515607b48c47ba608dce6cbc49c0a">CgiInput</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#b3c515607b48c47ba608dce6cbc49c0a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcgicc_1_1CgiInput.html#09afa1274f182b4c98de940c26ec69cd">CgiInput</a> (const <a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a> &amp;input)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor.  <a href="#09afa1274f182b4c98de940c26ec69cd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcgicc_1_1CgiInput.html#a925f0e1fcbcf086b1fbc5257c539839">~CgiInput</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor.  <a href="#a925f0e1fcbcf086b1fbc5257c539839"></a><br></td></tr>
<tr><td colspan="2"><div class="groupHeader">Overloaded Operators</div></td></tr>
<tr><td colspan="2"><div class="groupText"><br><br></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcgicc_1_1CgiInput.html#77ddcbceaf7afdce90c97df412144e7f">operator==</a> (const <a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a> &amp;) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> objects for equality.  <a href="#77ddcbceaf7afdce90c97df412144e7f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcgicc_1_1CgiInput.html#0b185e9a94f5b80cf5af452ba62a189c">operator!=</a> (const <a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a> &amp;input) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> objects for inequality.  <a href="#0b185e9a94f5b80cf5af452ba62a189c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcgicc_1_1CgiInput.html#0edbfc7b99ee1f3b7e3b9db9b2815b2e">operator=</a> (const <a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a> &amp;)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assign one <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> to another.  <a href="#0edbfc7b99ee1f3b7e3b9db9b2815b2e"></a><br></td></tr>
<tr><td colspan="2"><div class="groupHeader">Data Sources</div></td></tr>
<tr><td colspan="2"><div class="groupText"><br><br></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcgicc_1_1CgiInput.html#4972374395b5ee7db60f7eca3bd1b607">read</a> (char *data, size_t length)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read data from a data source.  <a href="#4972374395b5ee7db60f7eca3bd1b607"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcgicc_1_1CgiInput.html#af8195624f14198d0c275d37e287e0fb">getenv</a> (const char *varName)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Query the value of an environment variable.  <a href="#af8195624f14198d0c275d37e287e0fb"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Class that abstracts a data source. 
<p>
The <code><a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a></code> class is an abstraction for all input data to the CGI application. This allows input data to come from something other than standard input (cin). This is useful, in fact necessary, when using cgicc with FastCgi. Library users wishing to exploit this functionality should create a subclass and override the <code>read</code> and <code>getenv</code> methods. 
<p>Definition at line <a class="el" href="CgiInput_8h_source.html#l00058">58</a> of file <a class="el" href="CgiInput_8h_source.html">CgiInput.h</a>.</p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="b3c515607b48c47ba608dce6cbc49c0a"></a><!-- doxytag: member="cgicc::CgiInput::CgiInput" ref="b3c515607b48c47ba608dce6cbc49c0a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cgicc::CgiInput::CgiInput           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Constructor. 
<p>
Create a new <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> object 
<p>Definition at line <a class="el" href="CgiInput_8h_source.html#l00073">73</a> of file <a class="el" href="CgiInput_8h_source.html">CgiInput.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="09afa1274f182b4c98de940c26ec69cd"></a><!-- doxytag: member="cgicc::CgiInput::CgiInput" ref="09afa1274f182b4c98de940c26ec69cd" args="(const CgiInput &amp;input)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">cgicc::CgiInput::CgiInput           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>input</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Copy constructor. 
<p>
If you subclass <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a>, you <b>must</b> overload operator= <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>input</em>&nbsp;</td><td>The <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> object to copy </td></tr>
  </table>
</dl>

<p>Definition at line <a class="el" href="CgiInput_8h_source.html#l00084">84</a> of file <a class="el" href="CgiInput_8h_source.html">CgiInput.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="a925f0e1fcbcf086b1fbc5257c539839"></a><!-- doxytag: member="cgicc::CgiInput::~CgiInput" ref="a925f0e1fcbcf086b1fbc5257c539839" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual cgicc::CgiInput::~CgiInput           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destructor. 
<p>
Delete this <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> object 
</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="af8195624f14198d0c275d37e287e0fb"></a><!-- doxytag: member="cgicc::CgiInput::getenv" ref="af8195624f14198d0c275d37e287e0fb" args="(const char *varName)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual std::string cgicc::CgiInput::getenv           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>varName</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Query the value of an environment variable. 
<p>
In the default implementation, this is a wrapper for std::getenv() <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>varName</em>&nbsp;</td><td>The name of an environment variable </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The value of the requested environment variable, or an empty string if not found. </dd></dl>

</div>
</div><p>
<a class="anchor" name="0b185e9a94f5b80cf5af452ba62a189c"></a><!-- doxytag: member="cgicc::CgiInput::operator!=" ref="0b185e9a94f5b80cf5af452ba62a189c" args="(const CgiInput &amp;input) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool cgicc::CgiInput::operator!=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>input</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Compare two <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> objects for inequality. 
<p>
In the default implementation all <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> objects are equal <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>input</em>&nbsp;</td><td>The <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> object to compare to this one </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>false</code> </dd></dl>

<p>Definition at line <a class="el" href="CgiInput_8h_source.html#l00120">120</a> of file <a class="el" href="CgiInput_8h_source.html">CgiInput.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="0edbfc7b99ee1f3b7e3b9db9b2815b2e"></a><!-- doxytag: member="cgicc::CgiInput::operator=" ref="0edbfc7b99ee1f3b7e3b9db9b2815b2e" args="(const CgiInput &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a>&amp; cgicc::CgiInput::operator=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Assign one <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> to another. 
<p>
Does nothing in the default implementation <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>input</em>&nbsp;</td><td>The <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> object to copy </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A reference to this. </dd></dl>

<p>Definition at line <a class="el" href="CgiInput_8h_source.html#l00131">131</a> of file <a class="el" href="CgiInput_8h_source.html">CgiInput.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="77ddcbceaf7afdce90c97df412144e7f"></a><!-- doxytag: member="cgicc::CgiInput::operator==" ref="77ddcbceaf7afdce90c97df412144e7f" args="(const CgiInput &amp;) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool cgicc::CgiInput::operator==           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcgicc_1_1CgiInput.html">CgiInput</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Compare two <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> objects for equality. 
<p>
In the default implementation all <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> objects are equal <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>input</em>&nbsp;</td><td>The <a class="el" href="classcgicc_1_1CgiInput.html" title="Class that abstracts a data source.">CgiInput</a> object to compare to this one </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>true</code> </dd></dl>

<p>Definition at line <a class="el" href="CgiInput_8h_source.html#l00109">109</a> of file <a class="el" href="CgiInput_8h_source.html">CgiInput.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="4972374395b5ee7db60f7eca3bd1b607"></a><!-- doxytag: member="cgicc::CgiInput::read" ref="4972374395b5ee7db60f7eca3bd1b607" args="(char *data, size_t length)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t cgicc::CgiInput::read           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>length</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>
Read data from a data source. 
<p>
In the default implementation, this is a wrapper for <code>cin.read()</code> <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>The target buffer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>The number of characters to read </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The number of characters read </dd></dl>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="CgiInput_8h_source.html">CgiInput.h</a></ul>
</div>
<!-- $Id: footer.html,v 1.7 2004/06/12 01:58:25 sbooth Exp $ -->

<hr>

<address><small>
<a href="http://www.cgicc.org">GNU cgicc</a> - A C++ class library for
writing CGI applications<br />
Copyright &copy; 1996 - 2004 
<a href="mailto:sboothATgnuDOTorg">Stephen F. Booth</a><br />
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with no Front Cover Texts, and with no Back-Cover
Texts.<br />
Documentation generated Tue Jun 9 15:03:49 2009 for cgicc by
<a HREF="http://www.doxygen.org/index.html">doxygen</a> 1.5.9
</small></address>

</body>

</html>