find_extract.pl File Reference
Generates a file with command definitions and doxygen comments, intended as input to Doxgyen without as much noise.
More...
Go to the source code of this file.
Defines
Functions
Detailed Description
Generates a file with command definitions and doxygen comments, intended as input to Doxgyen without as much noise.
xhelp_gen.pl input_scope_package root_path_to_files output_file
-
Parameters:
-
input_scope_package |
A file path and name to a perl package that has the 2-b-included and 2-b-excluded xhelp commands. |
root_path_to_files |
must be terminated with a forward (\/) slash. If output file does not have a forward slash (\/) -- an indication of a path --, then the <root path to files> is assumed. |
output_file |
name of the first output file. This plus another file with a leading underscore are generated. The file without the underscore is intended as the input to Doxygen. |
The input scope package is required to have:
- The xscope package definition.
- Routine:
- declare_variable.
- Routine: memory_clean_up.
- Array:
- x_names, which contains all prefixes that could be of interest.
- needed_in, which contains a list of xhelp commands that are absolutely needed-to-be-in.
- needed_out, which contains a list of commands that we don't want to expose at all if they happen to come through.
- include_f_type, which are file types that should be viewed.
The definitions of "clues" in the xscope file is the key to the success of this tool. It needs a hint on what to look for.
-
Note:
-
The when standards in Doxygen comments were followed.
The intent is that different projects can define their own files that have the xscope definitions of what to look for.
This program does divide and conquor.
- Using the prefix list, it greps through the code looking at the file types of interest.
- Using the command list, it greps through the code looking at the file types of interest.
- The temporary file with grep results is stripped of interesting entries.
- A file hash is created that is a hash of hashes.
$file_hash {$src_file} {$code_item} {r} {$return_type} = unimportant number
$file_hash {$src_file} {$code_item} {p} {$prototype} = doxygen
It contains:
- {$src_file} the source code files where items of interest were found.
- {$code_item} code items of interest, each associated with a source file.
- {r} {$return_type} a hash of return types for each code item; supports overloading.
- {p} {$prototype} a hash of code definitions for each code item; supports overloading. It contains to the doxygen comment block.
- The source files from the hash are opened and searched for their respective code item definitions.
- The source files are searched for comment blocks associated with the code item definitions.
- The file hash is fleshed out for the prototype definitions and their respective comment blocks.
- The file hash is stepped through and output to generated files. The generated files are intended for input to doxygen.
- _list_<name>.gen file is for accountability and lists all code items and whether or not they were accompanied by a doxygen template. This is sorted by source file name. Intended to communicate what is in and out.
- <name>.gen contains a fake function definition with the associated doxygen template. This list is sorted by code item. Intended for xhelp.
- class_<name>.gen file contains a fake class definition with the associated doxygen template. This list is sorted by class name. Intended for APIs implemented through classes (e.g., DSP drivers). Generated when $xscope::sapi==0.
- dox_template_<name> contains just the associated doxygen template. The list is sorted based on the @fn code item name. Intented for SAPI in conjunction with the vproto.gen that has the function prototypes. Generated when $xscope::sapi==1; this is set in the sapi.pm file.
-
Author:
-
Glenn C. Maxey
Definition in file find_extract.pl.
Define Documentation
#define dox_flag_b "\/\*\*"
|
|
#define dox_flag_e "\*\/"
|
|
#define in_file_list $_[0]
|
|
#define in_file_list $_[0]
|
|
#define in_file_list $_[0]
|
|
#define in_file_list $_[0]
|
|
#define piece_to_search $_[0]
|
|
Function Documentation
Open-Source tools compliments of Voyant Technologies, Inc. and Glenn C. Maxey.
01/13/2003
TP Tools v2-00-0a
# tpt-perl-hcr-02