ranalyzer.h Source Code

Go to: Contents; Previous section; Beginning of section; Next file in section; Previous file in section.

Routines In This File (Alphabetical)

 Line Name
----- ----
  128 make_filename

BEGINNING OF FILE

     1: /****************************************************************************/
     2: /*									    */
     3: /*  FACILITY:	Routine Analyzer					    */
     4: /*									    */
     5: /*  MODULE:	Main Header						    */
     6: /*									    */
     7: /*  AUTHOR:	Steve Branam, Network Product Support Group, Digital	    */
     8: /*		Equipment Corporation, Littleton, MA, USA.		    */
     9: /*									    */
    10: /*  DESCRIPTION: This header file contains the general definitions and	    */
    11: /*  nested header includes used by Routine Analyzer modules.		    */
    12: /*									    */
    13: /*  REVISION HISTORY:							    */
    14: /*									    */
    15: /*  V1.0-00 27-JAN-1995 Steve Branam					    */
    16: /*									    */
    17: /*	Modified brief help string and version ident.			    */
    18: /*									    */
    19: /*  V0.1-00 24-AUG-1994 Steve Branam					    */
    20: /*									    */
    21: /*	Original version.						    */
    22: /*									    */
    23: /****************************************************************************/
    24: 
    25: #include "globdb.h"			    /* Global database class.	    */
    26: 
    27: /*									    */
    28: /* Miscellaneous constants.						    */
    29: /*									    */
    30: 
    31: #define PROGRAM_IDENT	    "Routine Analyzer V1.0-00"
    32: #define PROGRAM_COPYRIGHT   "Copyright (C) 1994 Digital Equipment Corporation"
    33: #define PROGRAM_AUTHOR      "Written by Steve Branam, Network Product Support Group,\nDigital Equipment Corporation, Littleton, MA, USA\n"
    34: #define PROGRAM_PARAMS	    "PARAMETERS: product_file [options]"
    35: #define PROGRAM_HELP	    "        OR: %chelp for full help\n"
    36: #define TAB_SIZE	    8		    /* Number of chars in TAB.	    */
    37: #define MAX_PRODUCT_NAME    64		    /* Max length of product name.  */
    38: #define MAX_ROUTINE_NAME    64		    /* Max length of routine name.  */
    39: 					    /* Max routine fullname.	    */
    40: #define MAX_ROUTINE_IDENT   MAX_FILE_NAME + MAX_ROUTINE_NAME + 3    
    41: #define MIN_TREE_SIZE	    5		    /* Minimum number of nodes to   */
    42: 					    /* generate separate call tree  */
    43: 					    /* for routine with callers.    */
    44: #define MAX_TREE_DEPTH	    20		    /* Max call tree depth.	    */
    45: #define DEF_MAX_CALLERS	    3		    /* Default value of max callers */
    46: 					    /* to allow subtree expansion.  */
    47: #define MIN_MAX_CALLERS	    1		    /* Min value of max callers.    */
    48: #define MAX_MAX_CALLERS	    10		    /* Max value of max callers.    */
    49: #define DEF_MAX_HTML_BYFILE 200		    /* Default value of max tree    */
    50: 					    /* entries for HTML output.	    */
    51: #define DEF_MAX_HTML_XREF   200		    /* Default value of max xref    */
    52: 					    /* entries for HTML output.	    */
    53: #define FILE_EXT_SEPARATOR  '.'		    /* File name/extension sep.	    */
    54: 
    55: /*									    */
    56: /* Report/listing format strings.					    */
    57: /*									    */
    58: 
    59: #define LIST_LINE_NUMBER    "%8d: "
    60: #define LIST_LINE_SPACER    "%8c  "
    61: 
    62: /*									    */
    63: /* Report/listing output file name suffixes, to be appended to the output   */
    64: /* file name prefix.							    */
    65: /*									    */
    66: 
    67: #define OUTFILE_SUFFIX_DEFLIST	    "defined"
    68: #define OUTFILE_SUFFIX_UNDEFLIST    "undefind"
    69: #define OUTFILE_SUFFIX_CALLS	    "calls"
    70: #define OUTFILE_SUFFIX_XREF	    "xref"
    71: #define OUTFILE_SUFFIX_MOREXREF     "xrf%05d"
    72: #define OUTFILE_SUFFIX_CALLTREES    "calltree"
    73: #define OUTFILE_SUFFIX_MORETREES    "cat%05d"
    74: #define OUTFILE_SUFFIX_BYFILE	    "byfile"
    75: #define OUTFILE_SUFFIX_MOREBYFILE   "byf%05d"
    76: #define OUTFILE_SUFFIX_FILES	    "files"
    77: #define OUTFILE_SUFFIX_SOURCE	    "src%05d"
    78: #define OUTFILE_SUFFIX_FIRSTSOURCE  "src00001"
    79: #define OUTFILE_SUFFIX_LIST	    "analysis"
    80: 
    81: /*									    */
    82: /* Report/listing output file extensions.				    */
    83: /*									    */
    84: 
    85: #define OUTFILE_EXT_LIST	    ".lis"
    86: #define OUTFILE_EXT_TEXT	    ".txt"
    87: #ifdef MSDOS 
    88: #define OUTFILE_EXT_SDML	    ".sdm"
    89: #else
    90: #define OUTFILE_EXT_SDML	    ".sdml"
    91: #endif
    92: #ifdef MSDOS 
    93: #define OUTFILE_EXT_HTML	    ".htm"
    94: #else
    95: #define OUTFILE_EXT_HTML	    ".html"
    96: #endif
    97: #define OUTFILE_EXT_RTF		    ".doc"
    98: #define OUTFILE_EXT_WINHELP	    ".hlp"
    99: #define OUTFILE_EXT_VMSHELP	    ".hlp"
   100: 
   101: /*									    */
   102: /* Report field sizes.							    */
   103: /*									    */
   104: 
   105: #define RPT_HTML_FILE_FIELD_LEN	    23
   106: #define RPT_HTML_ROUTINE_FIELD_LEN  23
   107: #define RPT_HTML_ROUTINE_WIDE_LEN   48
   108: #define RPT_HTML_ROUTINE_MEDIUM_LEN 40
   109: 
   110: /*									    */
   111: /* HTML section subtitles.						    */
   112: /*									    */
   113: 
   114: #define HTML_SECTION_FILES	"Source Files"
   115: #define HTML_SECTION_DEFINED	"Defined Routines Alphabetical"
   116: #define HTML_SECTION_UNDEFINED	"Undefined Routines Alphabetical"
   117: #define HTML_SECTION_CALLS	"Defined Routines Calls/Callers"
   118: #define HTML_SECTION_TREES	"Routine Call Trees (Selected Routines)"
   119: #define HTML_SECTION_XREF	"Caller Cross Reference"
   120: #define HTML_SECTION_BYFILE	"Defined Routines By File"
   121: #define HTML_SECTION_SOURCE	"Source Code"
   122: 
   123: 
   124: /*									    */
   125: /* General-purpose macros.						    */
   126: /*									    */
   127: 

ROUTINE make_filename. Go to: Next routine in file; Routines in this file.

   128: #define make_filename(pfx,fn,ext,buf) strcat(strcat(strcpy(buf, pfx), fn), ext)
END make_filename. Go to: Beginning of routine.


   129: 
   130: /*									    */
   131: /* Generic parser-related types.					    */
   132: /*									    */
   133: 
   134: typedef	enum {
   135:     PARSE_ERROR,
   136:     END_OF_SOURCE,
   137:     ROUTINE_DEF_BEGIN,
   138:     ROUTINE_DEF_END,
   139:     ROUTINE_REF
   140: } language_element;
   141: 
   142: typedef language_element (*PARSER)();
   143: 

END OF FILE TOTAL: 1 routines, 1 Avg Length

Go to: Contents; Previous section; Beginning of section; Next file in section; Previous file in section.