Muon digit container: User interface

D. Adams
11oct01 1250


Our goal is to design a container for digits. Here we discuss the public interface of that container.

Options

The elements of the container can be chosen to provide direct access to digits. Alternatively, the container can provide access to subcontainers which in turn provide access to the digits or to subcontainers of finer granularity.

Possible levels of granularity for the subcontainers include layers, multilayers, modules (chambers), projective towers, radial layers, readout drivers (ROD's), readout crates (ROC's) and technology.

There are also two modes of access: keyed and iterative. In the former the container returns the digit or subcontainer of digits associated with a specified identifier. In the latter, the container returns an iterator which can be used to traverse all elements.

Choices

We define a three-level structure. First of all there is a separate digit container for each technology, e.g. MDT. Each of these containers provides access to module (chamber) containers which provide access to individual digits. The module access is keyed: a user gives a module identifier to the technology container and gets back a module container. The digit access is then iterative: a user can iterate over all the digits in a module.

The above interface is chosen because it most closely matches the expected usage (our first two use cases).

Other interfaces such as iterative access over all modules or digits in a technology can be added later if desired. For now we limit ourselves to the above minimal interface to keep the containers simple.


dladams@bnl.gov