bionic (3) __pmParseTime.3.gz

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).