79 long increment( std::string_view
object ) {
return ++
get(
object ); }
81 long decrement( std::string_view
object ) {
return --
get(
object ); }
83 long counts( std::string_view
object ) {
return get(
object ); }
89 for (
const auto& entry :
m_map ) {
91 std::cout <<
"GaudiTool WARNING " <<
m_message <<
"'" << entry.first <<
"' Counts = " << entry.second
115 static Counter s_InstanceCounter(
" Create/Destroy (mis)balance " );
122 static Counter s_FinalizeCounter(
" Initialize/Finalize (mis)balance " );
149 , m_local(
type() +
"/" +
name() ) {
151 GaudiToolLocal::s_InstanceCounter.increment(
m_local );
166 GaudiToolLocal::s_FinalizeCounter.increment(
m_local );
178 if ( msgLevel(
MSG::DEBUG ) ) debug() <<
" ==> Finalize the base class GaudiTool " <<
endmsg;
191 GaudiToolLocal::s_FinalizeCounter.decrement(
m_local );
202 bool ownedByToolSvc =
false;
203 unsigned int sanityCheck( 0 );
204 while (
tool && ++sanityCheck < 99999 ) {
205 ownedByToolSvc = (
nullptr != dynamic_cast<const IToolSvc*>(
tool->parent() ) );
206 if ( ownedByToolSvc ) {
break; }
208 tool = dynamic_cast<const IAlgTool*>(
tool->parent() );
210 return ownedByToolSvc;
Header file for class GaudiAlgorithm.
Data provider interface definition.
The IChronoStatSvc is the interface implemented by the ChronoStatService.
This class is used for returning status codes from appropriate routines.
Definition of the basic interface.
Definition of the IHistogramSvc interface class.
const Gaudi::Algorithm & parent
Implements the common functionality between GaudiTools and GaudiAlgorithms.
An abstract interface for Algorithm Context Service.
TOOL * tool(std::string_view type, std::string_view name, const IInterface *parent=0, bool create=true) const
Useful method for the easy location of tools.
void reset(TYPE *ptr=nullptr)
Set the internal pointer to the passed one disposing of the old one.
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
The interface implemented by the IncidentSvc service.