Next: TPhTopoData - an introduction
Up: Using Phat 5.0
Previous: Basic Data Classes
  Contents
TPhTopology is a means to describe a detector configuration which
allows a virtual partition of a flat data array into segments that
correspond to various levels. The only constraint is that all of
the nodes at the "bottom" of the tree are at the same depth relative to
the root node.
The bottom nodes comprise one or more channels. The nodes above it
comprise all of the channels of the nodes beneath it.
The topology does not itself contain any data. Instead, it serves
as merely the directory which allows the user to get access to the
data by reference to a subcomponent, or even just simple access to
all of the channels.
The important objects here are:
- TPhTopology
The root topology is a topology. However, each node of the root
is itself a topology, as are all of its nodes, etc.
- TPhTopoIter
This is an iterator to a topology at a certain depth. If t is
a TPhTopology, then t->Begin(2) gives a TPhTopoIter at depth
2 (2 levels down from root, or 1 in the above diagram). The
iterator is able to skip over the structures defined above it.
Thus, one can iterate over all of the "1"'s without knowing the
structure of the "2"'s above them.
- TPhTopoPtr
This is a RefPtr (smart pointer) to a topology. This is used
to place the responsibility of whether a topology should be
deleted with the topology itself. Just think of this as a
TPhTopology* and everything should be fine!
Finally, keep in mind that you will not use TPhTopology directly. Rather,
the TPhTopoData objects will access its topology for you by forwarding
your requests to it. See the documentation in TPhTopoData.cxx for some
more explanation of this.
Subsections
Next: TPhTopoData - an introduction
Up: Using Phat 5.0
Previous: Basic Data Classes
  Contents
Gunther Roland
2000-05-05