Main Page Namespace List Class Hierarchy Compound List File List Namespace Members Compound Members File Members Related Pages

# cgicc::Cgicc Class Reference

The main class of the GNU cgicc library. More...

`#include <cgicc/Cgicc.h>`

List of all members.

## Public Methods
Constructor and Destructor
| Cgicc (CgiInput *input=0)
| Constructor. More...
| ~Cgicc ()
| Destructor. More...
Library Information
Information on this installation of cgicc
const char * | getCompileDate () const
| Get the date on which this library was compiled. More...
const char * | getCompileTime () const
| Get the time at which this library was compiled. More...
const char * | getVersion () const
| Get the version number of cgicc. More...
const char * | getHost () const
| Get the platform for which Cgicc was configured. More...
Form Element Access
Information on submitted form elements
bool | queryCheckbox (const std::string &elementName) const
| Query whether a checkbox is checked. More...
form_iterator | operator[] (const std::string &name)
| Find a radio button in a radio group, or a selected list item. More...
const_form_iterator | operator[] (const std::string &name) const
| Find a radio button in a radio group, or a selected list item. More...
form_iterator | getElement (const std::string &name)
| Find a radio button in a radio group, or a selected list item. More...
const_form_iterator | getElement (const std::string &name) const
| Find a radio button in a radio group, or a selected list item. More...
bool | getElement (const std::string &name, std::vector< FormEntry > &result) const
| Find multiple checkboxes in a group or selected items in a list. More...
form_iterator | getElementByValue (const std::string &value)
| Find a radio button in a radio group, or a selected list item. More...
const_form_iterator | getElementByValue (const std::string &value) const
| Find a radio button in a radio group, or a selected list item. More...
bool | getElementByValue (const std::string &value, std::vector< FormEntry > &result) const
| Find multiple checkboxes in a group or selected items in a list. More...
const std::vector< FormEntry > & | operator * () const
| Get all the submitted form entries, excluding files. More...
const std::vector< FormEntry > & | getElements () const
| Get all the submitted form elements, excluding files. More...
Uploaded File Access
file_iterator | getFile (const std::string &name)
| Find an uploaded file. More...
const_file_iterator | getFile (const std::string &name) const
| Find an uploaded file. More...
const std::vector< FormFile > & | getFiles () const
Environment Access
const CgiEnvironment & | getEnvironment () const
Save and Restore
void | save (const std::string &filename) const
| Save the current CGI environment to a file. More...
void | restore (const std::string &filename)
| Restore from a previously-saved CGI environment. More...

## Detailed Description

The main class of the GNU cgicc library.

Cgicc is used to retrieve information on specific HTML form elements (such as checkboxes, radio buttons, and text fields), on uploaded files, and to save, restore, and retrieve information on the CGI environment.

Normally, you will instantiate an object of this type in `main()`:

     int
     main(int argc, char **argv) {
       try {
         cgicc::Cgicc cgi;
         // do something with cgi
       }

       catch(const exception& e) {
        //handle the error
       }
     }

Definition at line 101 of file Cgicc.h.

## Constructor & Destructor Documentation

cgicc::Cgicc::Cgicc | ( | CgiInput * | input = 0 | ) |

  | Constructor. If you are using cgicc with FastCGI, you will need to pass a `CgiInput` subclass that cgicc will use to read input. If `input` is omitted, standard input and environment variables will be used. Parameters:
  input | A CgiInput object to use for reading input

cgicc::Cgicc::~Cgicc | ( |  | ) |

| Destructor. Delete this Cgicc object

## Member Function Documentation

const char* cgicc::Cgicc::getCompileDate | ( |  | ) | const

| Get the date on which this library was compiled. This is a string of the form `mmm dd yyyy`. Returns: The compile date

const char* cgicc::Cgicc::getCompileTime | ( |  | ) | const

| Get the time at which this library was compiled. This is a string of the form `hh:mm:ss` in 24-hour time. Returns: The compile time

bool cgicc::Cgicc::getElement | ( | const std::string & | name,
|  | std::vector< FormEntry > & | result
| ) | const

  | Find multiple checkboxes in a group or selected items in a list. Parameters:
  name | The name of the checkboxes or list to find.
  result | A vector to hold the result.
Returns: `true` if any elements were found, `false` if not.

const_form_iterator cgicc::Cgicc::getElement | ( | const std::string & | name | ) | const

  | Find a radio button in a radio group, or a selected list item. Parameters:
  name | The name of the radio button or list item to find.
Returns: A const_iterator referring to the desired element, if found.

form_iterator cgicc::Cgicc::getElement | ( | const std::string & | name | ) |

  | Find a radio button in a radio group, or a selected list item. Parameters:
  name | The name of the radio button or list item to find.
Returns: An iterator referring to the desired element, if found.

bool cgicc::Cgicc::getElementByValue | ( | const std::string & | value,
|  | std::vector< FormEntry > & | result
| ) | const

  | Find multiple checkboxes in a group or selected items in a list. Parameters:
  value | The value of the checkboxes or list to find.
  result | A vector to hold the result.
Returns: true if any elements were found, false if not.

const_form_iterator cgicc::Cgicc::getElementByValue | ( | const std::string & | value | ) | const

  | Find a radio button in a radio group, or a selected list item. Parameters:
  value | The value of the radio button or list item to find.
Returns: A const_iterator referring to the desired element, if found.

form_iterator cgicc::Cgicc::getElementByValue | ( | const std::string & | value | ) |

  | Find a radio button in a radio group, or a selected list item. Parameters:
  value | The value of the radio button or list item to find.
Returns: An iterator referring to the desired element, if found.

const std:: vector<FormEntry>& cgicc::Cgicc::getElements | ( |  | ) | const`[inline]`

| Get all the submitted form elements, excluding files. Returns: A vector containing all the submitted elements. Definition at line 281 of file Cgicc.h. References cgicc::const_file_iterator, and cgicc::file_iterator.

const CgiEnvironment& cgicc::Cgicc::getEnvironment | ( |  | ) | const`[inline]`

| Get the current runtime environment. Returns: The current CGI environment. Definition at line 327 of file Cgicc.h.

const_file_iterator cgicc::Cgicc::getFile | ( | const std::string & | name | ) | const

  | Find an uploaded file. Parameters:
  name | The name of the file.
Returns: An iterator referring to the desired file, if found.

file_iterator cgicc::Cgicc::getFile | ( | const std::string & | name | ) |

  | Find an uploaded file. Parameters:
  name | The name of the file.
Returns: An iterator referring to the desired file, if found.

const std:: vector<FormFile>& cgicc::Cgicc::getFiles | ( |  | ) | const`[inline]`

| Get all uploaded files. Returns: A vector containing all the uploaded files. Definition at line 313 of file Cgicc.h.

const char* cgicc::Cgicc::getHost | ( |  | ) | const

| Get the platform for which Cgicc was configured. The host is a string of the form `processor-manufacturer-os` return The host triplet.

const char* cgicc::Cgicc::getVersion | ( |  | ) | const

| Get the version number of cgicc. The version number is a string of the form `#.#`. Returns: The version number

const std:: vector<FormEntry>& cgicc::Cgicc::operator * | ( |  | ) | const`[inline]`

| Get all the submitted form entries, excluding files. Returns: A vector containing all the submitted elements. Definition at line 272 of file Cgicc.h.

const_form_iterator cgicc::Cgicc::operator[] | ( | const std::string & | name | ) | const`[inline]`

  | Find a radio button in a radio group, or a selected list item. Parameters:
  name | The name of the radio button or list item to find.
Returns: An iterator referring to the desired element, if found. Definition at line 205 of file Cgicc.h. References cgicc::const_form_iterator, and cgicc::form_iterator.

form_iterator cgicc::Cgicc::operator[] | ( | const std::string & | name | ) | `[inline]`

  | Find a radio button in a radio group, or a selected list item. Parameters:
  name | The name of the radio button or list item to find.
Returns: An iterator referring to the desired element, if found. Definition at line 195 of file Cgicc.h. References cgicc::const_form_iterator.

bool cgicc::Cgicc::queryCheckbox | ( | const std::string & | elementName | ) | const

  | Query whether a checkbox is checked. Parameters:
  elementName | The name of the element to query
Returns: `true` if the desired checkbox was checked, `false` if not

void cgicc::Cgicc::restore | ( | const std::string & | filename | ) |

  | Restore from a previously-saved CGI environment. This is useful for debugging CGI applications. Parameters:
  filename | The name of the file from which to restore.

void cgicc::Cgicc::save | ( | const std::string & | filename | ) | const

  | Save the current CGI environment to a file. This is useful for debugging CGI applications. Parameters:
  filename | The name of the file to which to save.

The documentation for this class was generated from the following file:

- Cgicc.h