Source

mana-core-perfmonkernel / src / IPerfMonSvc.cxx

Full commit
///////////////////////// -*- C++ -*- /////////////////////////////
// IPerfMonSvc.cxx 
// Implementation file for class IPerfMonSvc
// Author: S.Binet<binet@cern.ch>
/////////////////////////////////////////////////////////////////// 

// Gaudi includes
#include "GaudiKernel/Bootstrap.h"
#include "GaudiKernel/ISvcLocator.h"

// PerfMonKernel includes
#include "PerfMonKernel/IPerfMonSvc.h"

/////////////////////////////////////////////////////////////////// 
// Public methods: 
/////////////////////////////////////////////////////////////////// 

// Constructors
////////////////

// Destructor
///////////////
IPerfMonSvc::~IPerfMonSvc()
{}

/////////////////////////////////////////////////////////////////// 
// Const methods: 
///////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////////// 
// Non-const methods: 
/////////////////////////////////////////////////////////////////// 

/////////////////////////////////////////////////////////////////// 
// Protected methods: 
/////////////////////////////////////////////////////////////////// 

/////////////////////////////////////////////////////////////////// 
// Const methods: 
///////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////////// 
// Non-const methods: 
/////////////////////////////////////////////////////////////////// 

/// helper method to retrieve the current performance monitoring service
IPerfMonSvc* IPerfMonSvc::instance()
{
  static IPerfMonSvc * svc = 0;
  if ( 0 == svc ) {
    ISvcLocator * svcLocator = Gaudi::svcLocator();
    if ( svcLocator ) {
      const bool createIf = true;
      svcLocator->service( "PerfMonSvc", svc, createIf ).ignore();
    }
  }
  
  return svc;
}