source: trunk/documents/UserDoc/UsersGuides/ForToolkitDeveloper/latex/OOAnalysisDesign/UserInterface/userInterface.tex @ 1208

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

CVS update

File size: 1.8 KB
Line 
1\chapter{Intercoms}
2
3\section{Design Philosophy}
4
5The intercoms category implements an expandable command interpreter which
6is the key mechanism in {\sc Geant4} for realizing customizable and
7state-dependent user interactions with all categories without being
8perturbed by the dependencies among classes.  The capturing of commands is
9handled by a C++ abstract class {\it G4UIsession}.  Various concrete
10implementations of the command capturer are contained in the [user]
11interfaces category.  Taking into account the rapid evolution of graphical
12user interface (GUI) technology and consequent dependence on external
13facilities, plural and extensible GUIs are offered.
14
15Programmers need only know how to register the commands and parameters
16appropriate to their problem domain;  no knowledge of GUI programming is
17required to allow an application to use them through one of the available
18GUIs.
19
20The intercoms category also provides the virtual base classes
21\begin{itemize}
22\item G4VVisManager,
23\item G4VGraphicsScene, and
24\item G4VGlobalFastSimulationManager.
25\end{itemize}
26
27\section{Class Design}
28
29\begin{itemize}
30\item {\bf G4UISession} -
31\item {\bf G4UIBatch} -
32\item {\bf G4UICommand} -
33\item {\bf G4UIparameter} -
34\item {\bf G4UImessenger} -
35\end{itemize}
36
37The object-oriented design of the 'user interface' related classes
38is shown in the class diagram Fig. \ref{figure:userInt-1}.
39The diagram is described in the Booch notation.
40\newline
41
42
43\begin{figure}[h!]
44\includegraphics[angle=0,scale=0.55]{OOAnalysisDesign/UserInterface/classDgmUserInterface.eps}
45\vspace{10pt}
46\caption{Overview of intercom classes}
47\label{figure:userInt-1}
48\end{figure}
49
50
51\section{Status of this section}
52
5327.06.05 design philosophy (from Geant4 general paper) and class design
54         sections added by D.H. Wright \\
55
Note: See TracBrowser for help on using the repository browser.