Man Linux: Main Page and Category List

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)