Persistency Components in Gaudi

Download Report

Transcript Persistency Components in Gaudi

SEAL Project
Core Libraries and Services
5 December 2002
P. Mato / CERN
Shared Environment
for Applications at LHC
Team Presentation
Lassi Tuura (CMS)
 Massimo Marino (ATLAS)
 Stefan Roiser (LHCb)
 Lorenzo Moneta (IT/API)
 Jacek Generowicz (G4, IT/API)
 Pere Mato (LHCb)
 Other people ready to help when needed

21 July 2015
SEAL Project
P. Mato/CERN
2
Project Scope

Foundation Class Libraries
–
–
–
–

Basic types (STL, Boost, CLHEP, …)
Utility libraries
System libraries
Domain specific foundation libraries
Basic Framework Services
–
–
–
–
–
–
Component model
Reflection
Plugging management
Incident (Event) management
Distribution, Grid
Scripting
21 July 2015
SEAL Project
P. Mato/CERN
3
Domain Coverage
EvtGen
Algorithms
Engine
Event
Generation
Fitter
Detector
Simulation
Scripting
NTuple
Reconstruction
GUI
Analysis
Interactive
Services
Modeler
Geometry
Calibration
Event Model
FileCatalog
StoreMgr
Dictionary
Whiteboard
Persistency
Scheduler
PluginMgr
Core Services
Monitor
Grid
Services
Foundation and Utility Libraries
ROOT
21 July 2015
GEANT4
FLUKA
MySQL
SEAL Project
DataGrid
Python
Qt
P. Mato/CERN
...
4
Who the Users are?

Other LCG application area projects
– Persistency (POOL), Physics interfaces (PI), Math
Libraries, …

LHC Experiment Frameworks and Applications
– ATHENA (ATLAS), COBRA (CMS), GAUDI (LHCb)

Other HEP projects
– GEANT4 ?, …
21 July 2015
SEAL Project
P. Mato/CERN
5
Main Goals

Provide a coherent and as complete as possible set
of core classes and services in conformance with
overall architectural vision (Blueprint RTAG)
 Facilitate
the integration of LCG and non-LCG
software to build coherent applications
21 July 2015
SEAL Project
P. Mato/CERN
6
Work Packages

(preliminary ideas)
Foundation and Utility libraries
– Provide support for Boost, (Loki?)
– Participation to CLHEP project. Prepare proposal for its
evolution.
– Build SEAL utility and system library complementary to
Boost and STL from existing code in ClassLib, Gaudi, etc.
– Establish guidelines for selecting external libraries

Component Model and Plug-in Manager
– Define component and interface model
– Develop plug-in Manager
– Define “Object management protocol”. Object lifetime
strategy
21 July 2015
SEAL Project
P. Mato/CERN
7
Work Packages (2) (preliminary ideas)

LCG Object Dictionary
– Reflection packages (imported from POOL)
– Develop tools for filling dictionary from C++ header
files (initiated in POOL)
– Develop bindings to Python and ROOT

Basic Framework services
– Develop basic services for message reporting,
component configuration, “event” management, etc.
– Develop object whiteboard. Study interaction with
persistency, visualization and other services
21 July 2015
SEAL Project
P. Mato/CERN
8
Work Packages (3) (preliminary ideas)

Scripting
– Define guidelines for developing Python bindings.
Evaluate existing options.
– Enable scripting for application configuration

Grid services
– Provide common interface to various middleware
– Develop bindings to Python and ROOT

Education/Documentation
– Documentation, Tutorials, …
– Help incorporating SEAL components into experiment
frameworks
21 July 2015
SEAL Project
P. Mato/CERN
9
Current Activities

Concentration in Building 32
– Team members moved to B 32

Daily or almost daily meetings
– Organization, know each other, brainstorming, decisions,
task distribution, …

Initial activities
–
–
–
–
Review existing libraries and services
Establish initial plan
Agree on naming/coding/style conventions
Populate CVS repository with software from various
sources
21 July 2015
SEAL Project
P. Mato/CERN
10
Main Milestones




2002/10/30Establish core libraries and services (CLS) project
2002/11/30 Define the V1 CLS software
2002/12/1 Prototype object dictionary service
2003/1/15 Establish external software decision process
– Establish the process and policies by which decisions are made on what
external software is to be used by the LCG applications area.

2003/1/31 Complete the initial CLS workplan
– Complete the initial CLS workplan for submission to the SC2. Should cover
(at least) the content and implementation plan for CLS V1.

2003/3/31 CLS V1 essentials in alpha
– The most essential elements of the V1 CLS suite (as requested by projects
needing to use them) are available in alpha.

2003/5/31 Grid enabled services defined
– The CLS services which must be grid-enabled are defined and their
implementation prioritized.
21 July 2015
SEAL Project
P. Mato/CERN
11