TkrRecon Code Review II, Part 1
September 4, 2002

Presenters:  Johann Cohen-Tanugi, Leon Rochester, Tracy Usher
Reviewers: Xin Chen, Norm Graf, Heather Kelly, Hiro Tajima, Karl Young.

Introduction/Overview

The overview was split into 4 parts. Tracy described the overall architecture of TkrRecon, Leon spoke about clustering, and Johann described vertexing.  Bill Atwood was going to speak about track finding and fitting but unfortunately was unable to attend; we will attempt to reschedule this part of the review, during Core Week (Sept. 9 -13) if possible. Tracy and Leon spoke on slides 1-9 and 10-14, respectively, of a single presentation (available in Powerpoint or PDF format). Johann had a separate web page. [Thank you, presenters, for providing such complete written presentations that there is no need for me to transcribe the oral version here.  ed.]

Johann's page also pointed to a more technical document making use of LaTeX. He raised the question (and provided 3 possible answers) of where such documents ought to be kept.

Tracy noted that TkrRecon TDS classes need to be reviewed.  Some useful quantities which should be stored there are not; conversely, some items now in the TDS are obsolete and should be removed.

Doxygen Documentation and Code Review

mainpage.h

(Heather) Missing description of  job options parameters (prescribed by Doc TF standards). 

(Richard) Should include some description of the TkrRecon test program and what it is meant to test.

(Leon) The test program uses a pre-existing data set of muons also used by Cal, so that simulation and digitization don't have to be part of the test program. We ought to have a common place to keep such files.

Toby wonders about the purpose of the last line in the requirements file:

  make_fragment library_no_share 

Leon could use some enlightenment also; the line is there because it's been there.

(various) use statements include no versioning information at all. Typically at least major version should be specified. Recently Traudl made a proposal  of how we can handle versioning and related matters better; we hope to settle on a scheme during Core Week or soon thereafter.

Code

We did a top-down walk-through of much of the code, starting with the driver Gaudi algorithm TkrReconAlg. [Note the generation of Doxygen documentation didn't work perfectly. In order to get to some source code files it may be necessary to bring up the file list.] The subalgorithms (also declared as Gaudi algorithms, one per processing stage) tend to be structured in a similar fashion, getting job options parameters in their initialize() method, getting input from the TDS and in turn creating new objects as output and registering them in the TDS. The actual algorithmic work is typically done one more level down (by classes declared to be Gaudi tools), allowing the choice of  implementation to be deferred until run-time.

Comments specific to a particular class or file:

Several other comments, while made in the context of a particular class or file, may be relevant to the package as a whole:


Action items for TkrRecon group


Action items for Documentation Task Force


Back to TkrRecon Review II

J. Bogart  Last Modified:  2004-08-04 15:41:00 -0700