Minutes of the off-line meeting,

1st September 1998

Present: P.Binko, T.O'Reilly,    M.Cattaneo, J.Saborido, A.Tsaregorodtsev,  T.Cass, F.Ranjard, G.Gracia

Minutes: A.Tsaregorodtsev


Agenda:

  1. News

  2. A quick UML introduction (T.O'Reilly)

  3. First ideas on OO Track finding and fit  (G.Gracia)

  4. AOB


1. News

  • There will be a SW meeting on Wednesday, 2 September, to discuss class design in the Track domain. More people are invited for the discussion  (Pere, others).

  • Iain will make a status report on SICB C++ classes on the next meeting.

  • Rational Rose student license is available on NT for eveluation. It has a limit of no more than 30 classes per project.

  • Glossary: Marco distributed a list of terms for top level data structure elements to be considered and fixed after a discussion in the group.

  • Pavel will report on the next meeting on refinement of the OO event data model following discussions after his first presentation.


2. A quick UML introduction (T.O'Reilly)

Thomas showed basic elements of the UML notation used to draw class diagrams in Rational Rose and other CASE tools (see slides, ppt). This is a notation which we have adopted for OO design purposes. The tutorial material will be available  on the WWW as a permanent page.  


3. First ideas on OO Track finding and fit  (G.Gracia)

Gonzalo presented requirements for the data necessary to perform the track finding and fit (see slides, ppt). He identified among clients of the tracking software subdetectors, analysis, event display, trigger, etc. In a first attempt to define possible track related classes and their relations he identified a basic Track class with MCTrack and FittedTrack derived from that as subclasses. FittedTrack contains ErrorMatrix object in addition to a basic Track. It also contains a list of Nodes at which the track parameters are evaluated during the fitting procedure. A separate TrackManager class is suggested to contain steering of the track finding/fitting procedure (like getting seeds for track finding, invoking fitting algorithm, etc). TrackManager object uses a TrackFitter object which encapsulates the track fitting algorithm.

  In a discussion that followed Pavel stressed three points that should be kept in mind while designing a class diagrams:

  • Life time of participating objects should be taken into account. Mix with care objects with event scope and run scope;

  • Object relations should be constructed with due account to  a sequence of objects ctreating (who creates what);

  • Objects likely to be stored persistently should be identified and shoudl not depend on purely transient objects.

4. A.O.B.

Pavel raised the question of which top level event structure is more appropriate: One which contains DataType (like MC, Raw, Reconstruction) level under the Event box or a Subdetector second level. It was a general feeling that the first one is more acceptable. This is also a choice in BaBar, CMS and some other experiments. The decision was taken to proceed with the first model. Pavel will present more elaborated version of it on the next meeting.

The next meeting will be on 8th September at 10:30 in 32-SC-22 as usual, with the following agenda

  LHCb Home | Computing Home | Search