## Coverage profiler

Version | 1.30.0000
Author | Martina Jindrová , E-mail: jindra@egservis.cz
Language localisation:
English version | Milan Pavlík, E-mail: pavlik@pce.cz
Slovak version | Jan Korecko, E-mail: korecko.jan@coopexsoft.sk Jan Brndiar, E-mail: brndiar@s-h.sk

#### What good is it...

Coverage profiler (CVP) is special programming utility for Microsoft Visual Foxpro, designed and intended for processing "log file", created by the command SET COVERAGE TO ..., and consecutive displaying source code. This process allows to see source code of compiled APP a EXE application only when the source code was attached (linked with application). If not, then created log file do not contains important information about content and number of source code rows. The source code files must be presented somewhere on disc, to CVP can be able to use it.
Source code can be displayed:

by the source type

- VCX library
- forms
- procedure files
- stored procedures in DBC container

by the code processing

A process result can be stored to file with CVP extension. This file can be opened and browsed later.

#### What it work ...

CVP generate 4 working files and 5 temporary files.

Working files
Log table | Abbreviated version of log file, where texts was replaced by ID, referenced to consequent tables.
Source type table | List of libraries, forms, procedure files and DBC containers.
Object table | List of all passed procedures and methods in applicaton running code.
Source code table | Source codes of all passed procedures and methods in applicaton running code.
Temporary files
Source tree table | Source tree view for display source code structure branching.
Source process table | Source tree view for display real program processing.
Source code history table | List of processed methods and procedures source code by the global and concrete history.

Working and temporary files are stored to disc (according the setting) in process of "storing to CVP file". When the temporary files aren't stored, they will be generated with opening of CVP file, and continually filled by data according you browsing the tree.

1 | Log file reading and processing
If the log file size is under 2MB, program create cursor through a command APPEND FROM .... In other case the log file will be opened using lowlevel functions and program processed it directly. With processing is generated table contens for "Log table", "Source type table" and "Object table".
2 | Object table repairing"
Method names (object path) will be repaired, especially for class methods ...
3 | Processing "Source code table"
In processing "Source code table" are continually processed all conjuncting objects from "Object table". All object source code will be stored to "Source code table".
4 | Displaying source code on page "Sources"
There are dynamically detected how many times a method/procedures were called. If the method/procedure were called more than once, the choice "Global view" will be added to the combobox. Spinner "Process" determine explicit of process type. If you choose "Called from..." and "Process", an aproxiate source code will be authomatically generated and displayed.
5 | Displaying source code on page "Process hierarchy"
After clicking on branch of tree will be generated and displayed source code for an aproxiate process.

#### Using components

BIX Archiver 1.00 Beta 4
Autor: | Igor Pavlov
E-mail: | igorp@geocities.com
WWW: | http://compress.da.ru, http://compression.hypermart.net
FTP: | ftp://ftp.elf.stuba.sk/pub/pc/pack/bix*.zip
BZIP2 Archiver
Autor: | Julian Seward
E-mail: | jseward@acm.org
WWW: | http://sources.redhat.com/bzip2/index.html
ZLib Archiver
Autor: | Jean-Loup Gailly and Mark Adler
E-mail: | zlib@gzip.org
WWW: | http://www.ctan.org/tex-archive/tools/zip/info-zip/zlib/, http://www.info-zip.org/pub/infozip/zlib/, http://www.winimage.com/zLibDll/