| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

ConcreteTool Class Reference

#include <ConcreteTool.h>

Inheritance diagram for ConcreteTool:

[legend]
Collaboration diagram for ConcreteTool:
[legend]
List of all members.

Public Types

 SUCCESS
 NO_INTERFACE
 VERSMISMATCH
 LAST_ERROR
enum  Status
 SUCCESS
 NO_INTERFACE
 VERSMISMATCH
 LAST_ERROR
enum  Status

Public Member Functions

 ConcreteTool (const std::string &, const std::string &, const IInterface *)
virtual ~ConcreteTool ()
StatusCode queryInterface (const InterfaceID &riid, void **ppvIf)
StatusCode initialize ()
StatusCode finalize ()
StatusCode doSomething (double &result)
StatusCode setProperty (const Property &p)
virtual const std::string & type () const =0
virtual const IInterfaceparent () const =0
virtual StatusCode configure ()=0
virtual StatusCode start ()=0
virtual StatusCode stop ()=0
virtual StatusCode terminate ()=0
virtual StatusCode reinitialize ()=0
virtual StatusCode restart ()=0
virtual Gaudi::StateMachine::State FSMState () const =0
virtual StatusCode sysInitialize ()=0
virtual StatusCode sysStart ()=0
virtual StatusCode sysStop ()=0
virtual StatusCode sysFinalize ()=0
virtual StatusCode sysReinitialize ()=0
virtual StatusCode sysRestart ()=0
virtual unsigned long refCount () const =0
virtual const std::string & name () const =0
virtual unsigned long addRef ()=0
virtual unsigned long release ()=0
virtual unsigned long addRef ()
virtual unsigned long release ()
virtual const std::string & name () const
virtual const std::string & type () const
virtual const IInterfaceparent () const
virtual StatusCode configure ()
virtual StatusCode start ()
virtual StatusCode stop ()
virtual StatusCode terminate ()
virtual StatusCode reinitialize ()
virtual StatusCode restart ()
virtual Gaudi::StateMachine::State FSMState () const
virtual Gaudi::StateMachine::State targetFSMState () const
virtual StatusCode sysInitialize ()
virtual StatusCode sysStart ()
virtual StatusCode sysStop ()
virtual StatusCode sysFinalize ()
virtual StatusCode sysReinitialize ()
virtual StatusCode sysRestart ()
virtual StatusCode setProperty (const std::string &s)
virtual StatusCode setProperty (const std::string &n, const std::string &v)
StatusCode setProperty (const std::string &name, const TYPE &value)
virtual StatusCode getProperty (Property *p) const
virtual const PropertygetProperty (const std::string &name) const
virtual StatusCode getProperty (const std::string &n, std::string &v) const
virtual const std::vector<
Property * > & 
getProperties () const
PropertyMgrgetPropertyMgr ()
ISvcLocatorserviceLocator () const
ISvcLocatorsvcLoc () const
IMessageSvcmsgSvc () const
IToolSvctoolSvc () const
StatusCode setProperties ()
StatusCode service (const std::string &name, T *&svc, bool createIf=true) const
StatusCode service (const std::string &type, const std::string &name, T *&svc) const
void declInterface (const InterfaceID &, void *)
PropertydeclareProperty (const std::string &name, T &property, const std::string &doc="none") const
PropertydeclareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") const
IAuditorSvcauditorSvc () const
IMonitorSvcmonitorSvc () const
void declareInfo (const std::string &name, const T &var, const std::string &desc) const
void declareInfo (const std::string &name, const std::string &format, const void *var, int size, const std::string &desc) const

Public Attributes

 SUCCESS
 NO_INTERFACE
 VERSMISMATCH
 LAST_ERROR

Protected Member Functions

int outputLevel () const
virtual unsigned long refCount () const
IntegerPropertyoutputLevelProperty ()
void initOutputLevel (Property &prop)

Static Private Member Functions

static const InterfaceIDinterfaceID ()

Private Attributes

MsgStream m_log
double m_cut

Detailed Description

Definition at line 8 of file ConcreteTool.h.


Constructor & Destructor Documentation

ConcreteTool::ConcreteTool ( const std::string &  ,
const std::string &  ,
const IInterface  
)

ConcreteTool::~ConcreteTool (  )  [virtual]

Definition at line 11 of file ConcreteTool.cc.

00012 {
00013 }


Member Function Documentation

StatusCode ConcreteTool::queryInterface ( const InterfaceID riid,
void **  ppvIf 
) [virtual]

Reimplemented from AlgTool.

Definition at line 21 of file ConcreteTool.cc.

00022 {
00023     if ( riid == IVirtualTool::interfaceID() )  {
00024         *ppvIf = (IVirtualTool*)this;
00025         addRef();
00026         return StatusCode::SUCCESS;
00027     }
00028     return AlgTool::queryInterface( riid, ppvIf );
00029 }

StatusCode ConcreteTool::initialize (  )  [virtual]

Reimplemented from AlgTool.

Definition at line 14 of file ConcreteTool.cc.

00015 {
00016     m_log.setLevel( outputLevel() );
00017     m_log << MSG::INFO << "initialized with cut = " << m_cut << endreq;
00018     return StatusCode::SUCCESS;
00019 }

StatusCode ConcreteTool::finalize (  )  [virtual]

Reimplemented from AlgTool.

Definition at line 31 of file ConcreteTool.cc.

00032 {
00033     m_log << MSG::INFO << "finalized" << endreq;
00034     return StatusCode::SUCCESS;
00035 }

StatusCode ConcreteTool::doSomething ( double &  result  )  [virtual]

Implements IVirtualTool.

Definition at line 37 of file ConcreteTool.cc.

00038 {
00039     m_log << MSG::INFO << "doSomething(" << result << ") cut=" << m_cut << endreq;
00040     if (result < m_cut) {
00041         result = m_cut;
00042     }
00043     return StatusCode::SUCCESS;
00044 }

StatusCode ConcreteTool::setProperty ( const Property p  )  [virtual]

Reimplemented from AlgTool.

Definition at line 46 of file ConcreteTool.cc.

00047 {
00048     string name = p.name();
00049 
00050     m_log << MSG::INFO << "ConcreteTool::setProperty("<<name<<") = " 
00051           << "Property::toString(): " << p.toString() << endreq;
00052 
00053     return AlgTool::setProperty(p);
00054 }

static const InterfaceID& ConcreteTool::interfaceID (  )  [inline, static, private]

Reimplemented from AlgTool.

Definition at line 22 of file ConcreteTool.h.

00022 { return IVirtualTool::interfaceID(); }


Member Data Documentation

MsgStream ConcreteTool::m_log [private]

Definition at line 24 of file ConcreteTool.h.

double ConcreteTool::m_cut [private]

Definition at line 25 of file ConcreteTool.h.


The documentation for this class was generated from the following files:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:09:36 2011 for ConfigurableExample by doxygen 1.4.7