Gaudi Framework, version v22r2

Home   Generated: Tue May 10 2011
Public Types | Static Public Member Functions

GaudiPython::AlgDecorator Class Reference

#include <AlgDecorators.h>

List of all members.

Public Types

typedef std::vector< const
StatEntity * > 
Counters
 the actual type of vector of counters
typedef std::vector< IAlgTool * > Tools
typedef std::vector< IService * > Services

Static Public Member Functions

static IAlgTool * tool_ (const GaudiAlgorithm *alg, const std::string &type, const std::string &name, const IInterface *parent=0, const bool create=true)
 get the tool from GaudiAlgorithm
static IAlgTool * tool_ (const GaudiAlgorithm *alg, const std::string &typeAndName, const IInterface *parent=0, const bool create=true)
 get the tool from GaudiAlgorithm
static IInterface * svc_ (const GaudiAlgorithm *alg, const std::string &name, const bool create=false)
 get the service from GaudiAlgorithm
static size_t _counters_a_ (const GaudiAlgorithm *alg, std::vector< std::string > &names, Counters &out)
static size_t _counters_t_ (const GaudiTool *alg, std::vector< std::string > &names, Counters &out)
static size_t _counters_a_ (const IAlgorithm *alg, std::vector< std::string > &names, Counters &out)
static size_t _counters_t_ (const IAlgTool *alg, std::vector< std::string > &names, Counters &out)
static const StatEntity * _counter_a_ (const GaudiAlgorithm *alg, const std::string &name)
static const StatEntity * _counter_t_ (const GaudiTool *alg, const std::string &name)
static const StatEntity * _counter_a_ (const IAlgorithm *alg, const std::string &name)
static const StatEntity * _counter_t_ (const IAlgTool *alg, const std::string &name)
static size_t _tools_a_ (const GaudiAlgorithm *, Tools &tools)
static size_t _tools_t_ (const GaudiTool *, Tools &tools)
static size_t _tools_a_ (const IAlgorithm *, Tools &tools)
static size_t _tools_t_ (const IAlgTool *, Tools &tools)

Detailed Description

Definition at line 46 of file AlgDecorators.h.


Member Typedef Documentation

the actual type of vector of counters

Definition at line 51 of file AlgDecorators.h.

Definition at line 53 of file AlgDecorators.h.

Definition at line 52 of file AlgDecorators.h.


Member Function Documentation

const StatEntity * GaudiPython::AlgDecorator::_counter_a_ ( const GaudiAlgorithm *  alg,
const std::string &  name 
) [static]

Definition at line 157 of file AlgDecorators.cpp.

{
  if ( 0 == cmp ) { return 0 ; }                                      // RETURN 
  return &( cmp -> counter ( name ) ) ;                               // RETURN 
}
const StatEntity * GaudiPython::AlgDecorator::_counter_a_ ( const IAlgorithm *  alg,
const std::string &  name 
) [static]

Definition at line 175 of file AlgDecorators.cpp.

{
  if ( 0 == cmp ) { return 0 ; }                                      // RETURN 
  return _counter_a_ ( dynamic_cast<const GaudiAlgorithm*>( cmp ) , name ) ;
}
const StatEntity * GaudiPython::AlgDecorator::_counter_t_ ( const GaudiTool *  alg,
const std::string &  name 
) [static]

Definition at line 166 of file AlgDecorators.cpp.

{
  if ( 0 == cmp ) { return 0 ; }                                      // RETURN 
  return &( cmp -> counter ( name ) ) ;                               // RETURN 
}
const StatEntity * GaudiPython::AlgDecorator::_counter_t_ ( const IAlgTool *  alg,
const std::string &  name 
) [static]

Definition at line 184 of file AlgDecorators.cpp.

{
  if ( 0 == cmp ) { return 0 ; }                                      // RETURN 
  return _counter_t_ ( dynamic_cast<const GaudiTool*>( cmp ) , name ) ;
}
size_t GaudiPython::AlgDecorator::_counters_a_ ( const GaudiAlgorithm *  alg,
std::vector< std::string > &  names,
Counters &  out 
) [static]

Definition at line 85 of file AlgDecorators.cpp.

{
  typedef std::map<std::string,StatEntity> Stats ;
  names.clear () ;
  out.clear   () ;
  if ( 0 == alg ) { return 0 ; }                                      // RETURN 
  //
  const Stats& counters = alg->counters() ; 
  for ( Stats::const_iterator icnt = counters.begin() ; 
        counters.end() != icnt ; ++icnt ) 
  {
    names.push_back (   icnt->first )   ;
    out  .push_back ( &(icnt->second) ) ;
  }
  return out.size() ;
}
size_t GaudiPython::AlgDecorator::_counters_a_ ( const IAlgorithm *  alg,
std::vector< std::string > &  names,
Counters &  out 
) [static]

Definition at line 129 of file AlgDecorators.cpp.

{
  names.clear () ;
  out.clear   () ;
  if ( 0 == alg ) { return 0 ; }                                      // RETURN 
  //
  return _counters_a_ ( dynamic_cast<const GaudiAlgorithm*>( alg ) , names , out ) ;
}
size_t GaudiPython::AlgDecorator::_counters_t_ ( const GaudiTool *  alg,
std::vector< std::string > &  names,
Counters &  out 
) [static]

Definition at line 107 of file AlgDecorators.cpp.

{
  typedef std::map<std::string,StatEntity> Stats ;
  names.clear () ;
  out.clear   () ;
  if ( 0 == alg ) { return 0 ; }                                      // RETURN 
  //
  const Stats& counters = alg->counters() ; 
  for ( Stats::const_iterator icnt = counters.begin() ; 
        counters.end() != icnt ; ++icnt ) 
  {
    names.push_back (   icnt->first )   ;
    out  .push_back ( &(icnt->second) ) ;
  }
  return out.size() ;
}
size_t GaudiPython::AlgDecorator::_counters_t_ ( const IAlgTool *  alg,
std::vector< std::string > &  names,
Counters &  out 
) [static]

Definition at line 143 of file AlgDecorators.cpp.

{
  names.clear () ;
  out.clear   () ;
  if ( 0 == alg ) { return 0 ; }                                      // RETURN 
  //
  return _counters_t_ ( dynamic_cast<const GaudiTool*>( alg ) , names , out ) ;
}
size_t GaudiPython::AlgDecorator::_tools_a_ ( const IAlgorithm *  cmp,
Tools &  tools 
) [static]

Definition at line 215 of file AlgDecorators.cpp.

{
  tools.clear() ;
  if ( 0 == cmp ) { return 0 ; }                                      // RETURN 
  return _tools_a_ ( dynamic_cast<const GaudiAlgorithm*> ( cmp ) , tools ) ;  
}
size_t GaudiPython::AlgDecorator::_tools_a_ ( const GaudiAlgorithm *  cmp,
Tools &  tools 
) [static]

Definition at line 193 of file AlgDecorators.cpp.

{
  tools.clear() ;
  if ( 0 == cmp ) { return 0 ; }                                      // REUTRN 
  tools = cmp->tools() ;
  return tools.size() ;                                               // RETURN 
}
size_t GaudiPython::AlgDecorator::_tools_t_ ( const GaudiTool *  cmp,
Tools &  tools 
) [static]

Definition at line 204 of file AlgDecorators.cpp.

{
  tools.clear() ;
  if ( 0 == cmp ) { return 0 ; }                                      // REUTRN 
  tools = cmp->tools() ;
  return tools.size() ;                                               // RETURN 
}
size_t GaudiPython::AlgDecorator::_tools_t_ ( const IAlgTool *  cmp,
Tools &  tools 
) [static]

Definition at line 225 of file AlgDecorators.cpp.

{
  tools.clear() ;
  if ( 0 == cmp ) { return 0 ; }                                      // RETURN 
  return _tools_t_ ( dynamic_cast<const GaudiTool*> ( cmp ) , tools ) ;  
}
IInterface * GaudiPython::AlgDecorator::svc_ ( const GaudiAlgorithm *  alg,
const std::string &  name,
const bool  create = false 
) [static]

get the service from GaudiAlgorithm

Parameters:
algGaudiAlgorithm
nameservice name
createflag to create
Returns:
the tool

Definition at line 74 of file AlgDecorators.cpp.

{
  if ( 0 == alg ) { return 0 ; }
  return alg -> svc<IInterface> ( name , create ) ;
}
IAlgTool * GaudiPython::AlgDecorator::tool_ ( const GaudiAlgorithm *  alg,
const std::string &  type,
const std::string &  name,
const IInterface *  parent = 0,
const bool  create = true 
) [static]

get the tool from GaudiAlgorithm

Parameters:
algGaudiAlgorithm
typetool type
nametool name
parenttool parent
createflag to create
Returns:
the tool

Definition at line 38 of file AlgDecorators.cpp.

{
  if ( 0 == alg ) { return 0 ; }
  return alg -> tool<IAlgTool> ( type , name , parent , create ) ;
}
IAlgTool * GaudiPython::AlgDecorator::tool_ ( const GaudiAlgorithm *  alg,
const std::string &  typeAndName,
const IInterface *  parent = 0,
const bool  create = true 
) [static]

get the tool from GaudiAlgorithm

Parameters:
algGaudiAlgorithm
typeAndNametool type/name
parenttool parent
createflag to create
Returns:
the tool

Definition at line 57 of file AlgDecorators.cpp.

{
  if ( 0 == alg ) { return 0 ; }
  return alg->tool<IAlgTool>( typeAndName , parent , create ) ;
}

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Tue May 10 2011 18:55:35 for Gaudi Framework, version v22r2 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004