Provided by: libpcp3-dev_4.0.1-1_amd64 bug

NAME

       __pmParseTime - parse time point specification

C SYNOPSIS

       #include "pmapi.h"
       #include "libpcp.h"

       int __pmParseTime(const char *string, struct timeval *logStart, struct timeval *logEnd,
               struct timeval *rslt, char **errMsg);

       cc ... -lpcp

CAVEAT

       This documentation is intended for internal Performance Co-Pilot (PCP) developer use.

       These interfaces are not part of the PCP APIs that are guaranteed to remain  fixed  across
       releases,  and  they may not work, or may provide different semantics at some point in the
       future.

DESCRIPTION

       __pmParseTime is designed to encapsulate the interpretation of a time point  specification
       in command line switches for use by the PCP client tools.

       This  function  expects  to be called with the time point specification as string.  If the
       tool is running against PCP archive(s), you also need to supply  the  start  time  of  the
       first  (only)  archive as logStart, and the end of the last (only) archive as logEnd.  See
       pmGetArchiveLabel(3) and pmGetArchiveEnd(3) for how to obtain values for these parameters.
       If  the  tool  is  running against a live feed of performance data, logStart should be the
       current time (but could be aligned on the next second for example),  while  logEnd  should
       have its tv_sec component set to INT_MAX.

       The rslt structure must be allocated before calling __pmParseTime.

       You  also  need to set the current PCP reporting time zone to correctly reflect the -z and
       -Z command line parameters before calling __pmParseTime.  See pmUseZone(3) and friends for
       information on how this is done.

       If  the conversion is successful, __pmParseTime returns 0, and fills in rslt with the time
       value defined by the input parameters.  If the argument strings could not  be  parsed,  it
       returns -1 and a dynamically allocated error message string in errMsg.  Be sure to free(3)
       this error message string.

SEE ALSO

       PMAPI(3),  pmGetArchiveEnd(3),  pmGetArchiveLabel(3),  pmNewContextZone(3),  pmNewZone(3),
       pmParseInterval(3),    pmParseTimeWindow(3),    pmUseZone(3),    __pmConvertTime(3)    and
       __pmParseCtime(3).