NAME
vpGetTimer, vpClearTimer - interval timer facility
SYNOPSIS
#include <volpack.h>
vpResult
vpGetTimer(vpc, option, iptr)
vpContext *vpc;
int option;
int *iptr;;
vpResult
vpClearTimer(vpc, option)
vpContext *vpc;
int option;
ARGUMENTS
vpc VolPack context from vpCreateContext.
option Constant that specifies a particular timer.
iptr Location for storing the timer value.
DESCRIPTION
These functions are used for measuring the performance of the VolPack
library. To use them, the library must be compiled with a special
flag: either -DHAVE_LORES_TIMER (for machine that support the
gettimeofday C library call) or -DHAVE_HIRES_TIMER (for SGI machines
that support high-resolution memory-mapped I/O timers; on a Challenge
or ONYX, the -DHAVE_64BIT_TIMER must also be specified). If one of
these flags is specified at compile time then VolPack maintains a table
recording the accumulated time spent in various operations. Note that
some of the operations can only be timed with a high-resolution timer;
time values will not be recorded and will appear to be zero if a low
resolution timer is specified at compile time.
vpGetTimer retrieves the accumulated time for a particular operation.
The option argument specifies which operation:
VPTIMER_SHADE
Time the routine that computes the contents of the shading
lookup table.
VPTIMER_RENDER
Time the routine that renders a volume (includes
VPTIMER_CLSFY_OCTREE, VPTIMER_COMPOSITE, VPTIMER_DEPTHCUE, and
VPTIMER_WARP).
VPTIMER_COMPOSITE
Time the routine that computes the intermediate image from the
volume (includes VPTIMER_CLEAR, VPTIMER_TRAVERSE_OCTREE,
VPTIMER_ERT, VPTIMER_TRAVERSE_RUNS, and VPTIMER_PROCESS_VOXELS).
VPTIMER_DEPTHCUE
Time the routine that performs the depth cueing fixup on the
intermediate image.
VPTIMER_WARP
Time the routine that warps the intermediate image into the
final image.
VPTIMER_TRAVERSE_RUNS
Time the portion of the compositing routine devoted to
traversing the volume data structures.
VPTIMER_PROCESS_VOXELS
Time the portion of the compositing routine devoted to
compositing voxels into the intermediate image.
VPTIMER_ERT
Time the early-ray termination checks during compositing.
VPTIMER_CLSFY_OCTREE
Time the octree classification stage.
VPTIMER_TRAVERSE_OCTREE
Time the portion of the compositing routine devoted to
traversing the octree.
VPTIMER_CLEAR
Time the routine that clears the intermediate image at the
beginning of compositing.
The routine stores the accumulated time since the last call to
vpClearTimer (or since the beginning of the program) in the location
specified by iptr. The units of the value are microseconds.
vpClearTimer sets the specified timer value back to zero.
ERRORS
The normal return value is VP_OK. The following error return value is
possible:
VPERROR_BAD_OPTION
The option argument is invalid.
SEE ALSO
VolPack(3), vpCreateContext(3)