Provided by: libpcp4-dev_7.0.2-1_amd64 bug

NAME

       QmcSource  - manages contexts created by all groups

C++ SYNOPSIS

       #include <QmcSource.h>

       c++ ... -lpcp_qmc -lpcp

DESCRIPTION

       The  QmcSource class maintains a unique list of all metric sources in use to minimize the creation of new
       contexts (see pmNewContext(3)) when the context could have been duplicated (see  pmDupContext(3)).   This
       also reduces the duplication of descriptions of each source.

       In  general,  QMC  users should only need to access QmcSource methods to obtain source descriptions for a
       QmcContext(3) object.  All context creation by the user should be handled through QmcGroup(3).

DESTRUCTOR

       ~QmcSource();
           Destructor.

CONSTRUCTORS

       static QmcSource* getSource(int type, const char* source,
           bool matchHosts)

           This method will return a QmcSource object that represents a context of type  to  source.   The  Qmc‐
           Source  object may be a new object if the source has not been previously requested. Memory management
           of the QmcSource objects is handled by QmcSource.  If all QmcContext(3)s to the QmcSource  have  been
           deleted, the QmcSource object will also be deleted.

           The matchHosts flag controls the algorithm that is used to match hosts to archives.  If matchHosts is
           equal  to  false  then  no attempt will be made by this method to match a host context to an existing
           source context. A QmcSource object will always be returned in this case, although the QmcSource::sta‐
           tus method may indicate that a context to source failed.

           If matchHosts is equal to true, host contexts will be matched to a predefined archive source collect‐
           ed from that source.  If no archive sources for the source have been  previous  specified,  getSource
           will return a NULL pointer.

DIAGNOSTICS

       Error  messages are generated using pmprintf(3) but are not flushed. It is the responsibility of the user
       to call pmflush(3) to output any messages.

       Additional diagnostics may be activated by adding the option pmc to the global  debugging  specification,
       as described in pmSetDebug(3).

SEE ALSO

       PMAPI(3),  QMC(3),  QmcContext(3),  QmcGroup(3),  pmDupContext(3),  pmflush(3),  pmNewContext(3)  and pm‐
       printf(3).

Performance Co-Pilot                                   SGI                                          QMCSOURCE(3)