23.05.2014 Views

Athena Developer Guide

Athena Developer Guide

Athena Developer Guide

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Athena</strong><br />

Chapter 13 Framework services Version/Issue: 2.0.0<br />

Chapter 13<br />

Framework services<br />

13.1 Overview<br />

Services are generally sizeable components that are setup and initialized once at the beginning of the<br />

job by the framework and used by many algorithms as often as they are needed. It is not desirable in<br />

general to require more than one instance of each service. Services cannot have a “state” because there<br />

are many potential users of them so it would not be possible to guarantee that the state is preserved in<br />

between calls.<br />

In this chapter we describe how services are created and accessed, and then give an overview of the<br />

various services, other than the data access services, which are available for use within the <strong>Athena</strong><br />

framework. The Job Options service, the Message service, the Particle Properties service, the Chrono<br />

& Stat service, the Auditor service, the Random Numbers service and the Incident service are available<br />

in this release. The Tools service is described in Chapter 14.<br />

We also describe how to implement new services for use within the <strong>Athena</strong> environment. We look at<br />

how to code a service, what facilities the Service base class provides and how a service is managed<br />

by the application manager.<br />

13.2 Requesting and accessing services<br />

The Application manager creates a certain number of services by default. These are the default data<br />

access services (EventDataSvc, DetectorDataSvc, HistogramDataSvc,<br />

NTupleSvc), the default data persistency services (EventPersistencySvc,<br />

DetectorPersistencySvc, HistogramPersistencySvc) and the framework services<br />

described in this chapter and in Chapter 14 (JobOptionsSvc, MessageSvc,<br />

page 95

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!