RichKernel Package

This packages contains common low-level classes, interfaces and enumerations used through out the RICH software.

Enumerations

The package provides the following enumerations :-

Common Tool Interfaces

The package also contains the interfaces for the common Rich Tools, the implementations for which can be found in the RichTools and RichMCTools packages. Any algorithm which requires the services of a given tool only need include the interface header file in their code and thus placing all interfaces in one place reduces compile time dependencies.

Utility Classes

This package also contains a selection of small utility classes which are available for use by the other RICH packages.

  • Rich1DTabFunc : A utility class which can be used to represent a function based on an interpolated set of data (x,y) points.

  • RichHypoData : A templated class providing a fast array-like random access to data for each mass hypothesis. In addition, the state of the data (whether it has been set or not) for each hypothesis is stored. This functionality forms the basis of the "calculation on demand" schema used in the reconstruction code.

  • RichTraceMode : A utility class used to configure the ray tracing options used by the Gaudi Tools deriving from the IRichRayTracing interface.

  • RichMap : A utility class providing a standard std::map like object. Provides a convenient single point of definition for optimisation studies.

  • RichHashMap : A utility class providing a templated HashMap for fast loop up table like access.

  • RichStatDivFunctor : Simple utility class to provide an easy way to produce a formated output division calculation, with the associated error.

  • RichPoissonEffFunctor : A utility class for poisson efficency and error calculations and easy formatted printout.

Algorithm and Tool Base Classes

For convenience common RICH algorithm and tool base classes are provided, and from which all current tools and algorithm in the RICH software derive. The use of common base classes allows additional RICH specific functionality to be easily added to all RICH software components and also provides a single point of definition of the underlying base class to be used.

Currently, the base classes are :-


ChrisRJones - 28 Jul 2005
Edit | Attach | Watch | Print version | History: r4 < r3 < r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r4 - 2005-07-29 - ChristopherRJones
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    LHCb All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback