| # Gaudi Framework, version v21r7p1 |

Home |  | Generated: 15 Feb 2010

# IAlgTool Class Reference

The interface implemented by the AlgTool base class. More...

`#include <GaudiKernel/IAlgTool.h>`

Inheritance diagram for IAlgTool:

[legend]
Collaboration diagram for IAlgTool:

[legend]

List of all members.

## Public Member Functions
| DeclareInterfaceID (IAlgTool, 3, 0)
| InterfaceID.
virtual | ~IAlgTool ()
| Virtual destructor.
virtual const std::string & | type () const =0
| The type of an AlgTool, meaning the concrete AlgTool class.
virtual const IInterface * | parent () const =0
| The parent of the concrete AlgTool.
virtual StatusCode | configure ()=0
| Configuration (from OFFLINE to CONFIGURED).
virtual StatusCode | initialize ()=0
| Initialization (from CONFIGURED to INITIALIZED).
virtual StatusCode | start ()=0
| Start (from INITIALIZED to RUNNING).
virtual StatusCode | stop ()=0
| Stop (from RUNNING to INITIALIZED).
virtual StatusCode | finalize ()=0
| Finalize (from INITIALIZED to CONFIGURED).
virtual StatusCode | terminate ()=0
| Initialization (from CONFIGURED to OFFLINE).
virtual StatusCode | reinitialize ()=0
| Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED).
virtual StatusCode | restart ()=0
| Initialization (from RUNNING to RUNNING, via INITIALIZED).
virtual Gaudi::StateMachine::State | FSMState () const =0
| Get the current state.
virtual StatusCode | sysInitialize ()=0
| Initialization of the Tool.
virtual StatusCode | sysStart ()=0
| Initialization of the Tool.
virtual StatusCode | sysStop ()=0
| Initialization of the Tool.
virtual StatusCode | sysFinalize ()=0
| Finalization of the Tool.
virtual StatusCode | sysReinitialize ()=0
| Initialization of the Tool.
virtual StatusCode | sysRestart ()=0
| Initialization of the Tool.
virtual unsigned long | refCount () const =0
| Current number of reference counts.

## Detailed Description

The interface implemented by the AlgTool base class.

Concrete tools, derived from the AlgTool based class are controlled via this interface.

Author:
  Gloria Corti

  Pere Mato

Date:
  15/11/01 version 2 introduced

Definition at line 23 of file IAlgTool.h.

## Constructor & Destructor Documentation

virtual IAlgTool::~IAlgTool | ( |  | ) | `[inline, virtual]`

Virtual destructor.

Definition at line 29 of file IAlgTool.h.

    00029 { }

## Member Function Documentation

IAlgTool::DeclareInterfaceID | ( | IAlgTool | ,
|  | 3 | ,
|  | 0 |  |
| ) |  |  |

InterfaceID.

virtual const std::string& IAlgTool::type | ( |  | ) | const`[pure virtual]`

The type of an AlgTool, meaning the concrete AlgTool class.

virtual const IInterface* IAlgTool::parent | ( |  | ) | const`[pure virtual]`

The parent of the concrete AlgTool.

It can be an Algorithm or a Service. A common AlgTool has the ToolSvc as parent.

virtual StatusCode IAlgTool::configure | ( |  | ) | `[pure virtual]`

Configuration (from OFFLINE to CONFIGURED).

virtual StatusCode IAlgTool::initialize | ( |  | ) | `[pure virtual]`

Initialization (from CONFIGURED to INITIALIZED).

Implemented in SequencerTimerTool, EqSolver, FuncMinimum, and DataStreamTool.

virtual StatusCode IAlgTool::start | ( |  | ) | `[pure virtual]`

Start (from INITIALIZED to RUNNING).

virtual StatusCode IAlgTool::stop | ( |  | ) | `[pure virtual]`

Stop (from RUNNING to INITIALIZED).

virtual StatusCode IAlgTool::finalize | ( |  | ) | `[pure virtual]`

Finalize (from INITIALIZED to CONFIGURED).

Implemented in SequencerTimerTool, EqSolver, FuncMinimum, GslErrorCount, and DataStreamTool.

virtual StatusCode IAlgTool::terminate | ( |  | ) | `[pure virtual]`

Initialization (from CONFIGURED to OFFLINE).

virtual StatusCode IAlgTool::reinitialize | ( |  | ) | `[pure virtual]`

Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED).

virtual StatusCode IAlgTool::restart | ( |  | ) | `[pure virtual]`

Initialization (from RUNNING to RUNNING, via INITIALIZED).

virtual Gaudi::StateMachine::State IAlgTool::FSMState | ( |  | ) | const`[pure virtual]`

Get the current state.

virtual StatusCode IAlgTool::sysInitialize | ( |  | ) | `[pure virtual]`

Initialization of the Tool.

This method is called typically by the ToolSvc. It allows to complete the initialization that could not be done with a simply a constructor.

virtual StatusCode IAlgTool::sysStart | ( |  | ) | `[pure virtual]`

Initialization of the Tool.

This method is called typically by the ToolSvc. It allows to complete the initialization that could not be done with a simply a constructor.

virtual StatusCode IAlgTool::sysStop | ( |  | ) | `[pure virtual]`

Initialization of the Tool.

This method is called typically by the ToolSvc. It allows to complete the initialization that could not be done with a simply a constructor.

virtual StatusCode IAlgTool::sysFinalize | ( |  | ) | `[pure virtual]`

Finalization of the Tool.

This method is called typically by the ToolSvc. For completeless this method is called before the tool is destructed.

virtual StatusCode IAlgTool::sysReinitialize | ( |  | ) | `[pure virtual]`

Initialization of the Tool.

This method is called typically by the ToolSvc. It allows to complete the initialization that could not be done with a simply a constructor.

virtual StatusCode IAlgTool::sysRestart | ( |  | ) | `[pure virtual]`

Initialization of the Tool.

This method is called typically by the ToolSvc. It allows to complete the initialization that could not be done with a simply a constructor.

virtual unsigned long IAlgTool::refCount | ( |  | ) | const`[pure virtual]`

Current number of reference counts.

Avoids having to call addRef() + release() to get current refCount.

Implements IInterface.

The documentation for this class was generated from the following file:

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v21r7p1/GaudiKernel/GaudiKernel/IAlgTool.h