PMCONVERTTIME(3)

NAME
__pmConvertTime, __pmConvertHighResTime - convert tm structure into seconds

C SYNOPSIS
#include "pmapi.h"
#include "libpcp.h"

int __pmConvertTime(struct tm *tmin, struct timeval *origin, struct timeval *rslt);
int __pmConvertHighResTime(struct tm *tmin, struct timespec *origin, struct timespec *rslt);

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
__pmConvertTime and __pmConvertHighResTime accept a tm structure that has been filled in by __pmParseCtime(3) and a reference time point origin, and fills in the given rslt structure with the time the user meant when specifying a partial ctime or positive or negative time interval.

Typically, the argument origin is the start time for a set of PCP archives, unless the user specified a negative interval offset, in which case it is the end time of the archive.

__pmConvertTime and __pmConvertHighResTime return 0 if successful. They return -1 and write an error message to stderr, if an error is detected.

Use pmNewZone(3), pmNewContextZone(3) or pmUseZone(3) to establish a new current timezone that will effect __pmConvertTime.

SEE ALSO
PMAPI(3), pmNewContextZone(3), pmNewZone(3), pmParseInterval(3), pmParseTimeWindow(3), pmUseZone(3), __pmParseCtime(3) and __pmParseTime(3).