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

ACE_Get_Opt Class Reference

Iterator for parsing command-line arguments. More...

#include <Get_Opt.h>

List of all members.

Public Methods

 ACE_Get_Opt (int argc, ACE_TCHAR **argv, const ACE_TCHAR *optstring, int skip_argv0 = 1, int report_errors = 0)
 ~ACE_Get_Opt (void)
 Default dtor.

int operator() (void)
void dump (void) const
 Dump the state of an object.


Public Attributes

ACE_TCHARoptarg
int optind
int opterr
 Callers store zero here to inhibit the error message for unrecognized options.

int argc_
 Holds the count.

ACE_TCHAR** argv_
 Holds the pointer.

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.


Private Methods

 ACE_Get_Opt (const ACE_Get_Opt &)
ACE_Get_Opt& operator= (const ACE_Get_Opt &)

Private Attributes

ACE_TCHARnextchar_
const ACE_TCHARoptstring_
 Holds the option string.


Detailed Description

Iterator for parsing command-line arguments.

This is a C++ wrapper for getopt(3c).


Constructor & Destructor Documentation

ACE_Get_Opt::ACE_Get_Opt ( int argc,
ACE_TCHAR ** argv,
const ACE_TCHAR * optstring,
int skip_argv0 = 1,
int report_errors = 0 )
 

Initialize the internal data when the first call is made. Start processing options with -element 0 + <skip_argv0>; the sequence of previously skipped non-option -elements is empty.

<optstring> is a string containing the legitimate option characters. A colon in <optstring> means that the previous character is an option that wants an argument. The argument is taken from the rest of the current -element, or from the following -element, and returned in <optarg>.

If an option character is seen that is not listed in <optstring>, return '?' after printing an error message. If you set <report_errors> to zero, the error message is suppressed but we still return '?'.

If a char in <optstring> is followed by a colon, that means it wants an arg, so the following text in the same -element, or the text of the following -element, is returned in <optarg>.

ACE_INLINE ACE_Get_Opt::~ACE_Get_Opt ( void )
 

Default dtor.

ACE_Get_Opt::ACE_Get_Opt ( const ACE_Get_Opt & ) [private]
 


Member Function Documentation

void ACE_Get_Opt::dump ( void ) const
 

Dump the state of an object.

int ACE_Get_Opt::operator() ( void )
 

Scan elements of (whose length is ) for option characters given in <optstring>.

If an element of starts with '-', and is not exactly "-" or "--", then it is an option element. The characters of this element (aside from the initial '-') are option characters. If <operator()> is called repeatedly, it returns successively each of the option characters from each of the option elements.

If <operator()> finds another option character, it returns that character, updating <optind> and <nextchar> so that the next call to <operator()> can resume the scan with the following option character or -element.

If there are no more option characters, <operator()> returns <EOF>. Then <optind> is the index in of the first -element that is not an option. (The -elements have been permuted so that those that are not options now come last.)

ACE_Get_Opt& ACE_Get_Opt::operator= ( const ACE_Get_Opt & ) [private]
 


Member Data Documentation

ACE_Get_Opt::ACE_ALLOC_HOOK_DECLARE
 

Declare the dynamic allocation hooks.

int ACE_Get_Opt::argc_
 

Holds the count.

ACE_TCHAR ** ACE_Get_Opt::argv_
 

Holds the pointer.

ACE_TCHAR * ACE_Get_Opt::nextchar_ [private]
 

The next char to be scanned in the option-element in which the last option character we returned was found. This allows us to pick up the scan where we left off.

If this is zero, or a null string, it means resume the scan by advancing to the next -element.

ACE_TCHAR * ACE_Get_Opt::optarg
 

For communication from <operator()> to the caller. When <operator()> finds an option that takes an argument, the argument value is returned here.

int ACE_Get_Opt::opterr
 

Callers store zero here to inhibit the error message for unrecognized options.

int ACE_Get_Opt::optind
 

Index in of the next element to be scanned. This is used for communication to and from the caller and for communication between successive calls to <operator()>. On entry to <operator()>, zero means this is the first call; initialize.

When <get_opt> returns <EOF>, this is the index of the first of the non-option elements that the caller should itself scan.

Otherwise, <optind> communicates from one call to the next how much of has been scanned so far.

const ACE_TCHAR * ACE_Get_Opt::optstring_ [private]
 

Holds the option string.


The documentation for this class was generated from the following files:
Generated at Fri Oct 5 07:02:10 2001 for ACE by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000