source: trunk/documents/UserDoc/UsersGuides/ForToolkitDeveloper/latex/OOAnalysisDesign/Hit/hit.tex @ 1211

Last change on this file since 1211 was 1208, checked in by garnier, 15 years ago

CVS update

File size: 3.2 KB
Line 
1\chapter{Hits and Digitization}
2
3\section{Design Philosophy}
4In {\sc Geant4} a {\it hit} is a snapshot of a physical interaction or an
5accumulation of interactions of a track or tracks in a ``sensitive'' detector
6component.  A digitization, or {\it digit}, represents a detector output, such
7as an ADC/TDC count or a trigger signal.  A {\it digit} is created from one or
8more hits and/or other {\it digits}.  Given the wide variety of {\sc Geant4} 
9applications, ways of describing detector sensitivity and the quantities to
10be stored in the {\it hits} and {\it digits} vary greatly.  This category
11therefore provides only abstract classes for both detector sensitivity and
12{\it hits}/{\it digits}.  It also provides tools for organizing the
13{\it hits}/{\it digits} into collections.
14
15\section{Class Design}
16
17\begin{itemize}
18
19\item {\bf G4SensitiveDetectorManager} -
20   a list of G4SensitiveDetectors.
21 
22\item {\bf G4HitsStructure} -
23   a tree-like structure of G4Hit collections. Each branch represents the
24   hits in given sub-detector.  For example, the first level of branches
25   may consist of a tracker, ECAL, and HCAL, while the second level, in HCAL,
26   consists of the barrel and endcaps. Finally the barrel may have phi-slices,
27   Z-slices, etc.
28 
29\item {\bf G4VSensitiveDetector} -
30   an abstract class of all of sensitive volumes.
31 
32\item {\bf G4HitsCollection} -
33   a collection of hits. Instantiates an RWCollection class.
34 
35\item {\bf G4VHit} -
36   this class has all the information about a particular hit caused by a
37   single step.
38 
39\item {\bf G4VDigitizer} -
40   the class of objects which transform the hits deposited by particles into
41   digitizations.
42 
43\item {\bf G4DigitizerManager} -
44   the (single) object dispatching common messages to individual digitizers.
45 
46\item {\bf G4VDigi} -
47   an abstract (base) class for all G4 digitizations.  This could be data as
48   simple as a singe byte, or as complex as an Ntuple.
49 
50\item {\bf G4DigiStructure} -
51   digitizations are organized as a structure, which could be anything
52   between a single value and an Ntuple.
53
54\end{itemize} 
55
56
57The object-oriented design of the 'hit' related classes is shown in the
58following class diagrams. The diagrams are described in the Booch notation. 
59Fig. \ref{figure:hit-1} shows the general management of hit classes.
60Fig. \ref{figure:hit-2} shows the OO design of user-related hit classes.
61Fig. \ref{figure:hit-3} shows the OO design of the readout geometry.
62
63\begin{figure}
64\begin{center}
65\includegraphics[angle=0,scale=0.55]{OOAnalysisDesign/Hit/classDgmHitMain.eps}
66\vspace{10pt}
67\caption{Overview of hit classes management}
68\label{figure:hit-1}
69\end{center}
70\end{figure}
71
72\begin{figure}
73\begin{center}
74\includegraphics[angle=0,scale=0.5]{OOAnalysisDesign/Hit/classDgmHitUser.eps}
75\vspace{10pt}
76\caption{User hit classes}
77\label{figure:hit-2}
78\end{center}
79\end{figure}
80
81\begin{figure}
82\begin{center}
83\includegraphics[angle=0,scale=0.6]{OOAnalysisDesign/Hit/classDgmReadoutGeom.eps}
84\vspace{10pt}
85\caption{Readout geometry}
86\label{figure:hit-3}
87\end{center}
88\end{figure}
89
90\section{Status of this chapter}
91
9227.06.05 section on design philosophy added (from Geant4 general paper) by
93         D.H. Wright \\
Note: See TracBrowser for help on using the repository browser.