ParseOpts documentation

Introduction

This is the documentation for the command line option parser of the Forkbeard project.

Author:
Pekka Saastamoinen, Steve Mertz
Date:
07.05.2007
Version:
5

Program Usage

See example below.

Changelog

   VERSION  DATE            AUTHOR                    DESCRIPTION
   5        07.05.2007      Pekka Saastamoinen        Documentation fixes, minor rearrangements
   4        23.4.2007       Pekka Saastamoinen        Bugfixes, free allocated memory, more documentation
   3        1.3.2007        Pekka Saastamoinen        Some small fixes, documentation completed
   2        28.02.2007      Pekka Saastamoinen        Nearly fully functional.
   1        21.02.2007      Pekka Saastamoinen,SM     Initial draft.
   

Notes

parseOpts() should only be called once per program execution.

Examples

 #include "parseOpts.h"
 // create a struct for holding options, see definition in parseOpts.h
 struct parseoptsOptionStruct myOpts;
 // init to all zeros
 memset(&myOpts,0,sizeof(struct parseoptsOptionStruct));
 // call parseOpts with parameters, returns options in parseoptsOptionStruct
 parseOpts(argc,argv,&myOpts, TOOL_SCANNER);
 ... Program code ...
 // free the memory parseOpts allocates when you don't need it
 freeOpts(&myOpts);
 return EXIT_SUCCESS;

License

Licensed under BSD license. See License.txt

Parts of parseOpts originally by Steve Mertz, original license below.

 * Parts copyright (c) 2001 to 2004 Steve Mertz <steve@dragon-ware.com>
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice, this
 * list of conditions and the following disclaimer.
 *
 * Redistributions in binary form must reproduce the above copyright notice,
 * this list of conditions and the following disclaimer in the documentation
 * and/or other materials provided with the distribution.
 *
 * Neither the name of Dragon Ware nor the names of its contributors may be
 * used to endorse or promote products derived from this software without
 * specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS
 * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 * 
footer
 SourceForge.net Logo